@charset "UTF-8";
/*minimum_slider*/

/* =================================================
	=version 3.3=
	=Index=
	Default settings
		color
		Reset
		Element
		Hyper text
		Headline
	Layout
	Header
	Topic path (pankuzu)
	Main
	Side menu (Plugin)
	Multilingual
	Footer
================================================= */

/* =================================================
	color 変数 色の調整をまとめて行うことができます
================================================= */
:root {
	/*==== 文字色 ====*/
	/* 本文用 通常文章の文字色として使用 */
    --color-main: #282828;
    /* primary タイトルや目立たせたい文字に使用*/
    --color-primary: #222222;
    /* secondary 注意書きや控えめに魅せたい文字に使用*/
    --color-secondary: #999999;
    /* 薄い文字色 リンク色や目立たせたい文字に使用*/
    --color-link: #8a8a8a;
    /* 矢印などアイコンに使用*/
    --color-icon: #c2b6b6;
	/* 料金に使用*/
    --color-price: #222222;
	/* 白抜き用・白い文字色*/
    --color-white: #ffffff;
    /* セール・SOLD OUT価格の文字色 */
　--color-sale: #000;
    /* エラー用文字色 */
    --color-error: #dc4242;
    /* ※印や、注釈等の文字色*/
    --color-point: #dc6464;
    /* disabledの時の文字色*/
    --color-disabled: #888888;

	/*==== 背景色 ====*/
	/* ページ全体の背景色 */
	--bg-area-main: #ffffff;
	/* パーツごとの背景色 */
	--bg-area-content: #ffffff;
    /* contentsの背景色 */
    --bg-area-primary:#f7f7f7;
    /* sub薄い背景色 */
    --bg-light: #f1f1f1;
	/* sub暗めの背景色景色 */
    --bg-dark: #878282;
	/* 売り切れ商品の背景色景色 */
    --bg-soldout: #333333;
    /*SALE・会員限定用背景色 */
    --bg-notice: #FFECEC;
    /* エラー用枠線色 */
    --bg-attention: #ffe5e5;
    /* 商品詳細画像の選択されていない商品にかかる色 */
    --bg-item_gallery: #e6e6e6;
	/*白指定背景*/
	--bg-white: #ffffff;
    /* disabledの配色 */
    --bg-disabled: #d3d1d1;

	/*==== アイコン・ボタンの色 ====*/
    /*btn_main サイトで一番目立たせたいボタンの色 */
    --btn-main-color: #000;
    --btn-main-bg: #dddddd;

    /* primary サイトで一般的なボタンの色 */
    --btn-primary-color: var(--btn-main-bg);
    --btn-primary-bg: var(--btn-main-color);
    --btn-primary-border: var(--btn-main-bg);

    /* secondary サイトで二番目に目立たせたいボタンの色 */
    --btn-secondary-color: var(--color-main);
    --btn-secondary-bg: #ffffff;
    --btn-secondary-border: var(--form-border-dark);

    /* secondary サイトで二番目に目立たせたいボタンの色 */
    --btn-tertiary-border: var(--border-light);

    /* select */
    --select-color:var(--color-main);
    --select-bg: #ffffff;
    --select-border:var(--form-border-dark);

    /*textarea,inputの配色*/
	--form-color: var(--color-main);
    --form-bg: var(--bg-area-primary);
    /* textarea,inputの配色＿はっきりした枠線 */
    --form-border-dark: var(--border-gray-dark);
    /* textarea,inputの配色＿うっすらとした枠線 */
	--form-border-light: #d9d9d9;

    /*drawerドロワーメニュー*/
    --drawer-color:var(--color-main);
    --drawer-bg: #ffffff;
    --drawer-overlay-bg: rgba(61,61,61,0.401);

	/*==== box-shadow ====*/
	/*areaボックスシャドウ*/
	--boxshadow-area: 0px 0px 10px 2px rgba(135,130,130,0.11);
	/*sub-area-ボックスシャドウ*/
	--boxshadow-subarea: 0px 0px 4px 2px rgba(212,204,204,0.12);
	/*main-btn ボックスシャドウ*/
	--boxshadow-btn-main: 0px 0px 13px -5px rgba(85,85,85,0.63);
	/*itemcard-ボックスシャドウ*/
	--boxshadow-item-card: 0px 0px 13px -5px rgba(148,148,148,0.63);

	/*==== 枠線 ====*/
	/* エラー用枠線色 */
    --border-error: #dc6464;
	/*main背景色と連動する枠線*/
	--border-main:var(--bg-area-main);
	/*プライマー背景色と連動する枠線*/
	--border-primary:var(--bg-area-primary);
    /*白枠線*/
    --border-white: #ffffff;
    /* 柔らかく薄い枠線色 */
    --border-soft: #f7f7f7;
	/* 薄いグレーの枠線色 */
    --border-light: #d9d9d9;
    /* 大きなエリアを囲う薄いグレーの枠線色 */
    --border-area: #d9d9d9;
	/* 濃いグレーの枠線色 */
    --border-gray-dark: #878282;

    /* カート内ステップバーの薄い部分の配色 */
    --cart-check-off: var(--border-light);
    /* カート内ステップバーのチェックマークの色 */
    --cartCheck-mark: var(--btn-main-color);
    /* アイコンの配色 */
    --icon-primary: var(--color-primary);

}

/* =================================================
	Reset
================================================= */
html,
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
blockquote,
th,
td,
p {
    margin: 0;
    padding: 0;
}

a {
    text-decoration: none;
    /*\*/
    overflow: hidden;
    /* for Fx */
    /**/
}

img,
a img {
    border: none;
}

ul,
ol,
li,
dl,
dt,
dd {
    list-style: none;
}

table {
    border: 0;
}

th,
td {
    padding: 0;
}

th {
    font-weight: normal;
}

input,
select,
textarea {
    padding: 8px;
    height: 40px;
    box-sizing: border-box;
    border: 1px solid var(--form-border-dark);
    border-radius: 0;
}

fieldset {
    border: none;
}

/* =================================================
	Element
================================================= */
/* 全体のfont-sizeが10pxになるように計算して設定 */
html {
    font-size: 62.5%;
}

/*1.4remが14pxと同等*/
body {
    font-size: 1.4rem;
    font-family: 'Lato',
        "Helvetica Neue",
        Arial,
        "Hiragino Kaku Gothic ProN",
        "Hiragino Sans",
        Meiryo,
        sans-serif;
    -webkit-text-size-adjust: 100%;
    overflow-wrap: anywhere;
    color: var(--color-main);
    background-color: var(--bg-area-main);
}

select,
textarea,
input[type="submit"] {
    -webkit-appearance: none;
    appearance: none;
}

/* =================================================
	Hyper text
================================================= */
a:link,
a:visited {
	color: var(--color-main);
    text-decoration: none;
}
/*hover時の設定*/
a:hover {
    opacity: 0.85;
    transition: 0.2s;
}

.hover-opacity:hover {
    /*inputのボタンなど*/
    opacity: 0.85;
    transition: 0.2s;
}

.hover-input:hover {
    transition: 0.2s;
}

/* カーソルポインターを出したいところ */
select[name="order_su"],
.drawermenu-btn,
.search-sp,
.login_form_btn input,
.inquiry_btn input,
.registerbutton input,
.info_content input[name="SubmitEdit"],
.info_content input[name="Cancel"],
input[type="submit"],
input.btn_submit_quantity {
    cursor: pointer;
}

/* ← 枠線はセレクト専用に分離 */
select[name="order_su"] {
    border: 1px solid #ccc !important; /* 常時枠線 */
    border-radius: 4px;
    background-color: #fff;
}



/* =================================================
	Headline
================================================= */
/*font-size一覧
	3.2rem=32px
	2.4rem=24px
	1.8rem=18px
	1.6rem=16px
	1.4rem=14px
	1.3rem=13px
*/

h1 {
    font-size: 3.2rem;
}

h2 {
    font-size: 2.4rem;
    font-weight: bold;
    color: var(--color-primary);
    margin: 0 0 40px;
}

/* 太文字 */
h3 {
    padding: 0 32px 0 0;
    margin: 0 0 40px;
    font-size: 2.4rem;
    font-weight: bold;
    display: inline-block;
    color: var(--color-primary);
    position: relative;
}

h3:after {
    position: absolute;
    content: "";
    bottom: -5px;
    left: 0px;
    width: 25px;
    height: 1px;
    background: var(--color-primary);
}

h4 {
    font-size: 1.8rem;
    color: var(--color-primary);
}

h5 {
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--color-primary);
}

h6 {
    font-size: 1.3rem;
    font-weight: normal;
}

h1 a {
    font-weight: bold;
    color: var(--color-primary);
    overflow-wrap: anywhere;
}

input,
textarea {
    font-size: 1.6rem;
}

input[type="submit"] {
    font-weight: bold;
    font-size: 1.4rem;
    border-radius: 25px;
    height: 52px;
}

select {
    width: 300px;
    background-image :url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNSIgaGVpZ2h0PSI4LjU3NiIgdmlld0JveD0iMCAwIDE1IDguNTc2Ij4NCiAgPHBhdGggaWQ9Ikljb25faW9uaWMtaW9zLWFycm93LWRvd24iIGRhdGEtbmFtZT0iSWNvbiBpb25pYy1pb3MtYXJyb3ctZG93biIgZD0iTTEzLjY5LDE3LjIzOGw1LjY3Mi01LjY3NmExLjA2NywxLjA2NywwLDAsMSwxLjUxNCwwLDEuMDgxLDEuMDgxLDAsMCwxLDAsMS41MThMMTQuNDUsMTkuNTExYTEuMDcsMS4wNywwLDAsMS0xLjQ3OC4wMzFMNi41LDEzLjA4NGExLjA3MiwxLjA3MiwwLDAsMSwxLjUxNC0xLjUxOFoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC02LjE4OCAtMTEuMjQ2KSIgZmlsbD0iIzg3ODI4MiIvPg0KPC9zdmc+DQo=);
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 10px 10px;
    background-color: var(--select-bg);
    color: var(--select-color);
    font-size: 1.6rem;
    position: relative;
}

/*要素の下に余白を付けるスタイル*/
.common_margin_bottom_16 {
    margin-bottom: 16px
}

.common_margin_bottom_32 {
    margin: 16px 0 32px;
}

.common_margin_bottom_40 {
    margin-bottom: 40px
}

.common_margin_bottom_48 {
    margin-bottom: 48px
}

.common_margin_bottom_56 {
    margin-bottom: 56px
}

.common_margin_bottom_80 {
    margin-bottom: 80px
}

/*ボタンや注釈など*/
.point_red {
    color: var(--color-point);
}

.btn_main {
    border: 1px solid #ccc;
    border-radius: 25px;
    font-weight: 300;
    font-size: 1.4rem;
    color: var(--btn-main-color);
    background-color: var(--btn-main-bg);
    box-shadow: var(--boxshadow-btn-main);
}

.btn_main_wrap_lg {
    max-width: 550px;
    font-size: 1.4rem;
}

.btn_main_lg {
    width: 100%;
    display: block;
    background: var(--btn-main-bg);
    border: 1px solid #ccc;
    color: var(--btn-main-color);
    font-weight: normal;
    font-size: 1.4rem;
    border-radius: 25px;
}

.btn_modify {
    width: 100%;
    height: 40px;
    background: none;
    border: 1px solid #ccc;
    color: var(--color-main) !important;
    box-sizing: border-box;
    font-weight: normal;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid transparent;
}

.btn_previous,
.btn_border {
    width: 100%;
    font-size: 1.4rem;
    font-weight: initial;
    text-align: center;
    background: none;
	color: var(--btn-primary-color);
    background-color:var(--btn-primary-bg);
    border: 2px solid var(--btn-primary-border);
    border-radius: 25px;
    box-sizing: border-box;
}

.btn_border {
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
	color: var(--btn-primary-color);
    background-color: var(--btn-primary-bg);
}

.btn_previous:hover,
.btn_border:hover {
    opacity: 0.85;
}

.btn_border a{
	color: var(--btn-primary-color);
}

a.btn_border:link,
a.btn_border:visited,
a.btn_previous:link,
a.btn_previous:visited{
	color: var(--btn-main-bg);
}

.goto_cart .goto_cart_back a:visited {
    color: var(--btn-main-bg);
}
.btn_setting {
    width: 64px;
    height: 40px;
    font-size: 1.4rem;
    border: 1px solid #ccc;
    border-radius: 3px;
    color: var(--color-white);
    background: var(--btn-color-setting);
}

.system_message {
    color: var(--color-point);
    background: var(--bg-notice);
    padding: 10px;
    line-height: 2;
    display: block;
}

b.system_message {
    text-decoration: none !important;
}

.errormessage {
    padding: 24px;
    box-sizing: border-box;
    border: 1px solid var(--border-error);
    color: var(--color-error);
	background: var(--bg-area-main);
    margin: 0 0 24px;
    font-weight: bold;
    display: block;
}

.errormessage:empty {
    display: none;
}

.common_textLine_2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.common_message {
    padding: 24px 16px;
    background: var(--bg-light);
    box-sizing: border-box;
}

.common_message:empty {
    display: none;
}

.icon_image {
    margin: 40px auto 40px;
    height: 80px;
    width: 80px;
}

.icon_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.icon_check{
	position: relative;
    height: 80px;
    margin: 0 0 24px;
}
.icon_check:before{
	content: '';
    display: block;
    position: absolute;
	top: 35%;
    left: 46%;
    width: 30px;
    height: 16px;
    border-radius: 1px;
    border-left: 5px solid var(--icon-primary);
    border-bottom: 5px solid var(--icon-primary);
    transform: rotate(-45deg);
}
/*画面サイズに併せた領域のスタイル*/
.common_area-550 {
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
}

.area_border {
    padding: 40px;
    border: 1px solid var(--border-area);
    border-radius: 10px;
    box-shadow:var(--boxshadow-area);
    box-sizing: border-box;
    background: var(--bg-area-content);
}

.area_border_xs {
    margin: 0 auto;
    padding: 24px;
    border: 1px solid var(--border-area);
    border-radius: 10px;
    box-shadow: var(--boxshadow-area);
    background-color: var(--bg-area-content);
}

.area_border_sm {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px;
    border: 1px solid var(--border-area);
    border-radius: 10px;
    box-shadow: var(--boxshadow-area);
    background-color: var(--bg-area-content);
}

.itemlist_page {
    max-width: 900px;
    margin: 0 auto 80px;
}

/*フォーム内の統一スタイル*/
.form_title {
    margin: 0 0 4px;
}

.form_input {
    width: 100%;
}

.form_input input:disabled,
.form_input select:disabled,
.form_input textarea:disabled {
    background: var(--bg-disabled);
    opacity: 1;
    color: var(--color-disabled);
}

input[type="radio"]:disabled:after {
    position: absolute;
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #cc0000;
}

@media screen and (max-width: 960px) {

    /*画面サイズ960px以下*/
	.regi_header.errormessage{
		background-color: var(--bg-area-main);
	}

    .header_main .side_navi {
        text-align: left;
    }

    .itemlist_page {
        width: auto;
        padding: 0 16px;
    }

    h1 a{
        display: inline;
    }

    h2 {
        margin: 0 0 24px;
    }

    h2.contents_title {
        text-align: left;
    }

    h3{
        padding: 0 0 0 8px;
        margin: 0 0 24px;
    }

    h3:after{
        left: 8px;
    }

    .common_width_550 {
        max-width: 550px;
        margin: 0 auto;
    }

    .area_border,
    .area_border_sm,
    .area_border_xs {
        padding: 40px;
        border: none;
        border-radius: 0;
        box-shadow: none;
    }
}

@media screen and (max-width:580px) {
    .area_border,
    .area_border_sm,
    .area_border_xs {
        border-radius: 0;
        padding: 40px 16px;
    }
	.sub_contents {
		padding: 0 0 56px;
	}
    .sub_contents_wrap {
        padding: 0 0 24px;
    }
    .sub_contents_wrap_bottom {
        padding: 40px 16px;
    }
}


/* =================================================
	pager
================================================= */
.pagerbox {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 0 24px;
}

.pagerbox_pager {
    margin: 0 0 16px;
    display: flex;
    justify-content: center;
}

.pagerbox_pager li {
    margin: 0 8px;
}

.pager_number {
    display: flex;
}

.pager_number a {
    border-radius: 50%;
	margin: 0 8px 0;
    color: var(--color-link);
    background: var(--btn-secondary-bg);
    border: 1px solid var(--btn-secondary-border);
}

.pager_number span,
.pager_number a {
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}

.pager_back:empty,
.pager_next:empty {
    display: none;
}

.pager_back a,
.pager_next a {
    width: 64px;
	height: 40px;
    border-radius: 25px;
    border: none;
    color: var(--btn-main-color);
    background: var(--btn-main-bg);
    display: flex;
    justify-content: center;
    align-items: center;
}

.pager_total {
    font-size: 1.2rem;
    color: var(--color-secondary);
}

/* =================================================
	トップページスライドショー
================================================= */
.sliderArea {
    background: #fff;
    overflow: hidden;
}
.sliderWide {
    max-width: 100%;
    margin: 0 auto;
    padding: 30px 0;
}
.sliderWide .slick-arrow {
    opacity: 0;
    transition-duration: 0.3s;
}
.sliderWide:hover .slick-arrow {
    opacity: 1;
}
.slider {
    max-width: 900px;
    max-height: 450px;
    margin: 0 auto;
    padding: 0;
}
.slider .slick-list {
    overflow: visible;
    max-width: 900px;
    max-height: 450px;
}
.slider .slick-track {}
.slider .slick-slide {
    padding: 0 10px;
    opacity: .5;
    transition-duration: 0.3s;
}
.slider .slick-slide.slick-current {
    opacity: 1;
}
.slider .slick-slide a {
    display: block;
    max-width: 900px;
    max-height: 450px;
    height: 100vh;
}
.slider .slick-slide a:hover {
    display: block;
    opacity: .7;
    transition:0.7;
}
.slider img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}
.slick-prev,
.slick-next {
    z-index: 1;
}
.slick-dots {
bottom: -33px;
}

@media screen and (max-width:580px){
    .slider .slick-slide a{
        max-height: 250px;
    }
    .sliderWide{
        padding: 0;
    }
}
/* =================================================
	Layout
================================================= */
#wrap {
    width: 100%;
    background: var(--bg-area-main);
}

.header {
    margin: 0 auto;
}

.header_top {
    margin: 0 auto;
    padding: 24px;
    display: flex;
    justify-content: space-between;
    position: relative;
}

/* ハンバーガーメニュー親（アイコンのみ上げる） */
.header_main .drawermenu-btn,
.header_subpage .drawermenu-btn {
    position: absolute;
    width: 50px;
    height: 22px;
    left: 60px;
}

/* サブページのみアイコンを上に移動 */
.header_subpage .drawermenu-btn {
    top: 10px;  /* アイコンだけ上に */
}

/* MENU文字の調整（アイコンの動きに影響されないように個別に調整） */
.menu-label {
    position: relative;
    left: -8px;    /* 左へ少しずらす */
    top: 20px;     /* 下方向にずらす */
    white-space: nowrap; /* 1行表示 */
}


.header_main .drawermenu-btn span,
.header_main .drawermenu-btn span:before,
.header_main .drawermenu-btn span:after,
.header_subpage .drawermenu-btn span:before,
.header_subpage .drawermenu-btn span:after,
.header_subpage .drawermenu-btn span{
	position: absolute;
	height: 2px;/*線の太さ*/
	width: 30px;
	border-radius: 3px;
	background: var(--border-gray-dark);/*線の太さ*/
	display: block;
	content: '';
	cursor: pointer;
}
.header_main .drawermenu-btn span:before,
.header_subpage .drawermenu-btn span:before {
	bottom: -10px;
}
.header_main .drawermenu-btn span:after,
.header_subpage .drawermenu-btn span:after {
	bottom: -21px;
}

.header_subpage_wrap {
    max-width: 900px;
    margin: 0 auto;
    padding: 24px;
    display: flex;
    justify-content: space-between;
    position: relative;
}

.header_subpage {
    padding: 0;
    border-bottom: 1px solid var(--border-light);
}

.header_subpage .sidemenu {
    display: none;
}
.header_main .sidemenu-sp,
.header_subpage .sidemenu-sp {
    position: fixed;
    z-index: 2000;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100%;
    overflow: auto;
    background:var(--drawer-overlay-bg);
}

.sidemenu_search{
	text-align: right;
}
.header_subpage h1 {
    margin: 0 auto 0 0;
}
.header_mentenance {
    min-height: 40px;
    display: flex;
    justify-content: center;
    border-bottom: 1px solid var(--border-light);
    padding: 20px 0;
}
.header_mentenance h1 {
    max-width: 900px;
}

.is-open {
    display: none;
}

#mainImage {
    /*TOPページでストア名の後ろに背景画像を使用した場合の設定*/
    width: 100%;
    height: 60vh;
    margin: 0 0 32px;
}

#mainImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#main {
    margin: 0 auto;
    box-sizing: border-box;
    background: var(--bg-area-main);
}

.list_wrap {
    display: flex;
}

.list_title {
    color: var(--color-main);
    font-weight: bold;
    font-size: 1.4rem;
    margin: 0 0 4px 0;
}

.list_content {
    width: 75%;
    color: var(--color-main);
}

.sidemenu-sp {
    display: none;
}


/*said nav*/
.is-open {
    display: block;
}

.drawer-nav-body {
    position: fixed;
    top: 0;
    left: 0;
    padding: 40px 15px 160px;
    color: var(--drawer-color);
    background: var(--drawer-bg);
    width: 85%;
    max-width: 350px;
    height: 100%;
    overflow: scroll;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    z-index: 100;
	text-align: left;
}

.drawer-nav-body .search form input {
    border-radius: 0 3px 3px 0;
    box-sizing: border-box;
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.sidemenu-sp .login_box ul li input {
    width: 100%;
}

.drawer-nav-body .search form .submit {
    box-sizing: border-box;
    width: 40px;
    height: 40px;
    background-color: var(--btn-main-bg);
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 20px;
    border-radius: 0px 3px 3px 0;
    border: 1px solid #ccc;
    cursor: pointer;
    position: absolute;
    right: 0px;
}
.search_box_word {
    position: relative;
}

.drawer-nav-body .search_box_category {
    margin: 8px 0 0;
    display: flex;
    align-items: center;
}

.drawer-nav-body .search_box_category input[type="checkbox"] {
    width: 32px;
    height: 32px;
    margin: 0 8px 0 0;
    border: 1px solid var(--form-border-dark);
    border-radius: 3px;
}

#main_nav {
    display: none;
}

.toppage_contents{
	padding: 40px 0 0 ;
}
.toppage_contents,
.sub_contents {
    background-color: var(--bg-area-primary);
}

.sub_contents {
    padding: 0;
}

.sub_contents:nth-child(2) {
    padding: 0 0 40px;
}

.toppage_contents_wrap {
    background-color: var(--bg-area-primary);
    padding: 0 16px 40px;
    max-width: 900px;
    margin: 0 auto;
}

.sub_contents_wrap {
    padding: 0 0 40px;
}

.sub_contents_itemdetail,
.sub_contents_wrap {
    margin: 0 auto;
    max-width: 900px;
}

.sub_contents_itemdetail {
    padding: 40px 16px;
    box-sizing: border-box;
}

.sub_contents_wrap_bottom {
    padding: 0 0 40px;
}

.login_error_message {
    display: none;
}

.user_page {
    margin: 0 0 80px;
}

#footer {
    width: 100%;
    padding: 0 32px;
    box-sizing: border-box;
}

.footerWrap {
    max-width: 1176px;
    margin: 0 auto 80px;
    padding: 80px 0 0;
    display: flex;
    justify-content: space-between;
}
.footerWrap div:last-child {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
}

.footerWrap_title {
    max-width: 50%;
}
.footerWrap_title h1 {
    font-weight: normal;
}
.footerWrap_title h1 a{
	color: var(--color-primary);
}
.footerWrap .footerWrap_link {
    text-align: end;
	max-width: calc(50% - 6px);
}

.footerWrap_linkList {
    display: flex;
	flex-wrap: wrap;
    justify-content: flex-end;
    margin: 0 0 24px;
}

.footerWrap_linkList_contents {
    margin: 0 0 40px 40px;
}

.footer_copy {
    font-size: 1.2rem;
    color: var(--color-secondary);
}

@media screen and (max-width: 960px) {

    /*画面サイズ960px以下*/
    #main {
        padding: 0;
    }

    #mainImage {
        width: 100%;
        height: 40vh;
    }

    .user_cntent img {
        width: 100%;
    }

    .list_wrap {
        flex-wrap: wrap;
    }

    .list_title {
        width: 100%;
        margin: 0 0 10px;
    }

    .list_content {
        width: 100%;
    }
	/* drawermenu-btn の絶対位置を強制解除し、Flexboxの流れに戻す */
　　.header_main .drawermenu-btn,
　　.header_subpage .drawermenu-btn {
 　   position: static !important; /* 絶対位置を無効化 */
   　 top: auto !important;
    　left: auto !important;
　}
    /*said nav*/
    .is-open {
        display: block;
    }

    .drawer-nav-body {
        position: fixed;
        top: 0;
        left: 0;
        padding: 40px 15px 80px;
        background: var(--border-white);
        width: 85%;
        max-width: 320px;
        height: 100%;
        overflow: scroll;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
		z-index: 100;
    }

    .drawer-nav-body ul h3 {
        margin: 0 0 16px;
    }

    .search_box_word {
        position: relative;
    }

    .drawer-nav-body .search form input {
        border-radius: 0;
        box-sizing: border-box;
        padding: 8px;
        height: 40px;
        width: 100%;
        border: 1px solid var(--form-border-light);
        background-color: var(--form-bg);
    }

    .sidemenu-sp .login_box ul li input {
        width: 100%;
    }

    .drawer-nav-body .search_box_category {
        margin: 8px 0 0;
        display: flex;
        align-items: center;
    }

    .drawer-nav-body .search_box_category input[type="checkbox"] {
        width: 32px;
        height: 32px;
        margin: 0 8px 0 0;
        border: 1px solid var(--form-border-dark);
        border-radius: 3px;
    }

    .sub_contents {
        padding: 0 0 56px;
    }

    .sub_contents_wrap {
        width: 100%;
        box-sizing: border-box;
    }

    .sub_contents_wrap_bottom {
        padding: 40px 0;
    }

    .sub_contents_wrap .category_tabs {
        display: flex;
        flex-wrap: wrap;
    }

    #footer {
        padding: 0 24px;
    }

    .footerWrap {
        flex-wrap: wrap;
        flex-direction: column;
        padding: 24px 0;
    }
	.footerWrap div:last-child{
		display: block;
		max-width: initial;
	}
	.footerWrap_title {
		max-width: initial;
	}
	.footerWrap h1 {
        margin: 0 0 16px;
	}
	.header_mentenance h1,
    .footerWrap h1 {
        padding: 0;
        width: auto;
        display: inline-block;
        font-size: 1.6rem;
        font-weight: bold;
		color: var(--color-primary);
    }
	.footerWrap h1 {
		margin: 0 0 16px;
	}
    .footerWrap_link {
        margin: 0;
    }

    .footerWrap_linkList {
        display: flex;
        flex-wrap: wrap;
        margin: 0 0 24px;
    }

    .footerWrap_linkList_contents {
        width: 100%;
        text-align: left;
        display: flex;
        align-items: center;
        height: 52px;
        margin: 0;
    }

    .footer_copy {
        text-align: center;
    }
}

/* =================================================
	maintenance メンテナンス時の表示
================================================= */
.maintenance {
    max-width: 900px;
    margin: 80px auto;
    height: 50vh;
}

.maintenance_wrap_body {
    color: var(--color-error);
    border: 1px solid var(--color-error);
    padding: 40px 20px;
}

.maintenance_wrap_body_usermessage:empty {
    display: none;
}

@media screen and (max-width: 960px) {

    /*画面サイズ960px以下*/
    .maintenance {
        padding: 0 24px;
        margin: 80px auto 180px;
        height: 10vh;
    }

    .maintenance_wrap_body {
        border: 1px solid var(--border-error);
        padding: 24px;
        color: var(--color-error);
    }
}

@media screen and (max-width: 580px) {}

/* =================================================
	header
================================================= */
/*メインビジュアルなしでストア名前が中心*/

.header_main {
	width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--border-light);
    box-sizing: border-box;
    position: relative;
    padding: 12px 0;
}

.header_btn {
    position: absolute;
    display: flex;
    right: 0;
    top: 0;
}

.header h1 {
    font-weight: normal;
    margin: 0 auto;
	color: var(--color-primary);
}

.header_main h1 {
    width: calc(100% - 330px);
    text-align: center;
	font-size: 4rem;
}

.header_subpage h1 {
    max-width: calc(100% - 300px);
}

.header_subpage h1 a {
    height: initial;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    line-height: 1.1;
}
.header_wrap {
    position: relative;
}

.header h1 img {
    /*ショップ名が画像だった場合*/
    height: 52px;
}

.header_subpage_wrap .cartcheck {
    top: 24px;
    right: 24px;
}

.cartcheck {
    border-radius: 3px;
    position: static !important;
    top: 50px;
    right: 60px;
    width: 40px;
    height: 40px;
}
.cartcheck a {
    height: 40px;
    box-sizing: border-box;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 2px;
}

@media screen and (max-width: 960px) {
    /*画面横幅960px 以下 タブレットサイズ*/

    .header_main .sidemenu {
        display: none;
    }
    .header_main .sidemenu-sp {
        position: fixed;
        z-index: 100;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100%;
        overflow: auto;
        background: rgba(0, 0, 0, 0.2588235294);
        z-index: 99;
    }
    .header h1 img {
        /*ショップ名が画像だった場合*/
        height: 24px;
    }
    /*画面サイズ960px以下*/
    .header_btn {
        display: flex;
        height: 40px;
        width: 40px;
        position: absolute;
        top: 27%;
        right: 16px;
    }
    .header_btn .serach_btn{
        display: none;
    }
    .header_main {
        margin: 0 0 32px;
    }
    .globalMenu.active {
        display: none;
    }
    .header_main,
    .header_subpage_wrap {
        min-height: 80px;
        height: auto;
        padding: 0;
    }

    .header_main h1,
    .header_subpage_wrap h1 {
        width: 100%;
		max-width: inherit;
        font-size: 1.8rem;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .header_main h1,
    .header_subpage_wrap h1 a {
        max-width: calc(100% - 140px);
        height: initial;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        overflow: hidden;
        line-height: 1.1;
        overflow-wrap: anywhere;
        font-weight: bold;
        padding: 0;
        text-align: center;
    }

    h1 a{
        display: inline;
    }

    .header_main .cartcheck,
    .header_subpage_wrap .cartcheck {
        position: initial;
    }

    .header_subpage_menu {
        display: none;
    }

    .header_wrap {
        display: flex;
        justify-content: flex-end;
        min-width: auto;
    }
}

/* =================================================
	side_navi TOP/Subpage共通
================================================= */
@media screen and (max-width:960px) {
    .header_btn .serach_btn {
        display: none;
    }

    .cart_btn {
		position: static !important;
		top: 5;
		left: 0px;
		width: 40px;
		height: 40px;
    }
	span.icon_cart{
		top: 5px;
        left: 0;
	}
}

/* =================================================
	side_navi
================================================= */
/*PC表示*/
.side_navi h3 {
    color:var(--drawer-color);
    font-size: 1.8rem;
    margin: 0px 0 8px 0;
}

.side_navi h3:after {
    background: none;
}

.side_navi .login_on_list {
    width: 100%;
}

.side_navi .login_form input.btn_main {
    background-color: var(--btn-main-bg);
    color:var(--btn-main-color);
}

/*login signup ログイン・新規登録*/
.login_form input {
    width: 100%;
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.login_form_btn input {
    height: 52px;
    color: var(--btn-main-color);
    background: var(--btn-main-bg);
    border: none;
    border-radius: 25px;
    font-weight: bold;
    font-size: 1.4rem;
}

.login_form li {
    margin: 0 0 12px;
}

.login_message {
    margin: 0 0 16px;
}

.login_message span {
    font-weight: bold;
}

.side_navi .login_on_list_userinfo {
    width: 100%;
}

.side_navi .login_on_point {
    background-color: var(--bg-area-primary);
    margin: 0 0 24px 0;
}

.login_on_point span {
    font-weight: bold;
    font-size: 1.8rem;
}

.sidemenu_signup {
    width: 100%;
}

.sidemenu_signup a {
    width: 100%;
    height: 52px;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    color: var(--btn-primary-color);
    background-color: var(--btn-primary-bg);
    border: 2px solid var(--btn-primary-border);
    font-weight: bold;
}

.pw_reisue {
    margin: 16px 0 24px;
}

.pw_reisue a {
    color: var(--color-link);
    border-bottom: 1px solid transparent;
}

/*ログイン済*/
.login_on h3 {
    margin: 0 0 16px;
}

.login_on_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.login_on span {
    font-weight: bold;
}

.login_on_message {
    margin: 0 0 8px;
}

.userName {
    margin: 0 0 8px;
    font-weight: bold;
    color: var(--color-primary);
}

.userPoint {
    padding: 20px;
    background-color: var(--bg-area-primary);
}

.userPoint span {
    font-size: 3.2rem;
    margin: 0 8px;
}

.login_on_list_userinfo {
    width: 48%;
}

.login_on_list {
    width: 48%;
}

.login_on_point {
    padding: 26px;
    background-color: var(--bg-area-content);
    box-sizing: border-box;
}

.login_on_list_item {
    display: flex;
    border-bottom: 1px solid transparent;
    width: 100%;
    justify-content: center;
}

.login_on_list_item a,
.login_on form input {
    width: 100%;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 18px;
    border-radius: 25px;
    box-sizing: border-box;
    font-weight: bold;
	color: var(--btn-primary-color);
	border: 2px solid var(--btn-primary-border);
    background-color: var(--btn-primary-bg);
}

.login_on form {
    width: 100%;
    height: 40px;
}

@media screen and (max-width:740px) {
    .login_on_wrap {
        flex-direction: column;
    }

    .login_on_list_userinfo {
        width: 100%;
        margin: 0 0 24px;
    }

    .login_on_list {
        max-width: 550px;
        width: 100%;
    }

    .login_on_list_item a,
    .login_on form input {
        height: 52px;
    }
	.login_on_point{
		padding: 8px;
	}
}

/*calendar カレンダー*/
.calender_wrap {
    min-width: 284px;
    margin: 0px 24px 16px 0;
}

.calender_wrap:nth-child(3n) {
    margin: 0 0 16px;
}

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

.calender_title {
    font-weight: bold;
    margin: 0px 0 4px;
}

.calender_contents table {
    width: 100%;
}

.calendar_footer {
    margin: 8px 0 16px;
    width: 100%;
}

.plg_calendar th,
.plg_calendar td {
    padding: 0;
    text-align: center;
    font-size: 11px;
    padding: 8px 0;
    border-radius: 2px;
}

.other_month {
    opacity: 0.4;
}

@media screen and (max-width:960px) {
    .calender_main {
        justify-content: space-between;
    }

    .calender_wrap {
        min-width: calc(50% - 24px);
        margin: 0px 24px 16px 0;
    }

    .calender_wrap:nth-child(2n) {
        margin: 0 0 16px;
    }

    .calender_wrap:nth-child(3n) {
        margin: initial;
    }
}

@media screen and (max-width:740px) {
    .calender_wrap {
        min-width: calc(50% - 8px);
        margin: 0px 8px 16px 0;
    }

    .calender_wrap:nth-child(2n) {
        margin: 0 0 16px 0;
    }
}

/*Category カテゴリ*/
.toppage_contents .category_tabs {
	width: 100%;
    display: flex;
	flex-wrap: wrap;
	gap: 16px;
}
.toppage_contents .category_tabs .category_tabsWrap{
	width: auto;
}
.toppage_contents a.category_main {
	height: 20px;
    padding: 8px 16px;
    color: var(--btn-secondary-color);
    background: var(--btn-secondary-bg);
    border: 1px solid var(--btn-secondary-border);
    border-radius: 25px;
	flex: 1 1 auto;
    display: flex;
    justify-content: center;
	align-items: center;
}

.side_navi .category_tabs a {
    width: fit-content;
    display: flex;
    padding-bottom: 16px;
    align-items: center;
    border-bottom: 1px solid transparent;
    box-sizing: border-box;
}

.side_navi a.category_main {
    background: var(--bg-light);
    width: 100%;
    padding: 9px;
    margin: 0px 0 2px 0;
    position: relative;
}

.side_navi a.category_main:before {
    position: absolute;
    content: "";
    width: 16px;
    display: inline-block;
    width: 5px;
    height: 5px;
    border-top: 1px solid var(--border-gray-dark);
    border-right: 1px solid var(--border-gray-dark);
    transform: rotate(45deg);
    right: 16px;
}

.side_navi a.category_sub {
    width: 100%;
    padding: 9px;
    margin: 0 0 0 8px;
    position: relative;
}

.side_navi a.category_sub:before {
    position: absolute;
    content: "";
    width: 16px;
    display: inline-block;
    width: 5px;
    height: 5px;
    border-top: 1px solid var(--border-gray-dark);
    border-right: 1px solid var(--border-gray-dark);
    transform: rotate(45deg);
    right: 24px;
}


/*menu メニュー*/
.sidemenu_menu li {
    width: fit-content;
    border-bottom: 1px solid transparent;
}

.sidemenu_menu li a {
    color: var(--drawer-color);
    width: fit-content;
    padding: 15px 0;
    display: flex;
    align-items: center;
}

/*inquiry お問い合わせ*/
.sidemenu_inquiry {
    width: 100%;
}

.sidemenu_inquiry a {
    width: 100%;
    height: 52px;
    display: flex;
    align-items: center;
    color: var(--btn-main-color);
    justify-content: center;
}

@media screen and (max-width:960px) {
    .pw_reisue {
        margin: 24px 0 40px 0;
    }

    .pw_reisue a {
        color: var(--color-link);
        font-size: 1.4rem;
        width: 100%;
        display: block;
        border-bottom: 1px solid transparent;
    }

    .login_on_list_item,
    .sidemenu_menu li,
    .sidemenu_menu li a {
        width: 100%;
    }

    .login_on_list_item a,
    .login_on form input {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
}


/* =================================================
	topic_path パン屑リスト
================================================= */
#topic_path {
    background-color: var(--bg-area-primary);
}

#topic_path ul {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    align-items: center;
	padding: 16px 0;
    flex-wrap: wrap;
}

#topic_path ul li {
    display: inline;
    line-height: 2;
}

#topic_path ul li span {
    margin: 0 10px 0 0;
}

#topic_path ul li a {
    margin: 0 10px 0 0;
}

@media screen and (max-width:960px) {
    #topic_path ul {
		padding: 8px 12px;
    }
}

/* =================================================
	comment_header comment_footer
================================================= */
.comment_header {
    max-width: 900px;
    margin: auto;
    padding: 0 16px;
	margin: 24px auto 0;
    font-size: 1.4rem;
}

.comment_footer {
    margin: 0 0 32px;
    font-size: 1.4rem;
}

.comment_header:empty,
.comment_footer:empty {
    display: none;
}


/* =================================================
	shopinfo_page お知らせページ
================================================= */

.shopinfo_page_wrap:first-child {
    margin: 0 0 32px;
}

.shopinfo_page_wrap {
    background: var(--bg-area-content);
    margin: 0 0 32px 0;
    padding: 0 0 24px;
    border-bottom: 1px solid var(--form-border-light);
    display: flex;
    flex-wrap: wrap;
}

.shopinfo_page_wrap:last-child {
    border-bottom: none;
    margin: 0;
}

.shopinfo_page_date {
    width: 15%;
    margin: 0px 0px 0 0;
    font-weight: bold;
    color: var(--color-primary);
}

.shopinfo_page_wrap h5 {
    width: 85%;
    margin: 0 0 8px;
}

.shopinfo_page h3 {
    margin: 0 0 40px;
}

.news_comment {
    width: 85%;
    margin: 0 0 0 auto;
}

.news_comment span {
    font-size: 1.4rem !important;
    line-height: 1.8;
}

.news_comment a {
    text-decoration: underline;
}

@media screen and (max-width:740px) {
    .shopinfo_page_list a {
        display: block;
    }

    .shopinfo_page_date {
        width: 100%;
        margin: 0 0 8px 0;
    }

    .news_comment {
        width: 100%;
        margin: 0;
    }
}

/* =================================================
	itemlist_page 商品一覧ページ
================================================= */
.itemlist_header {
    margin: 0 0 16px;
    color: var(--color-main);
}

.itemlist_headerWrap {
    display: flex;
    align-items: center;
    margin: 40px 0 24px;
}

.itemlist_headerWrap h3 {
    margin: 0;
}

.itemlist_header_sortbox_list {
    display: flex;
}

.itemlist_header_sortbox_listItem {
    margin: 0 0 0 32px;
	border-radius: 25px;
	background: var(--bg-area-content);
}

.itemlist_header_sortbox_listItem a {
    color: var(--btn-tertiary-color);
    background: var(--btn-tertiary-bg);
    border: 1px solid var(--btn-tertiary-border);
    display: flex;
    padding: 8px;
    width: 80px;
    border-radius: 25px;
    align-items: center;
    justify-content: center;
}

.itemlist_header_sortbox_listItem span {
    color: var(--color-icon);
    font-size: 1.1rem;
    margin: 0 0 0 4px;
}
.itemlist_headerWrap h3 {
    margin: 0 auto;                     /* 上下余白はそのまま中央寄せ */
    font-size: 4rem;                    
    font-family: 'New York', serif;     /* フォントを New York に変更 */
    font-weight: bold;                   /* 太字 */
    text-align: center;                  /* テキスト中央揃え */
    display: table;                      /* 幅は文字サイズに合わせる */
    color: var(--color-main);            /* 色は元のまま */

 /* 追加部分 */
.itemlist_headerWrap h3 {
    position: relative;  /* 相対位置で微調整 */
    top: -50px;           /* 上に50pxずらす（必要に応じ調整） */
}

}


/*商品一覧*/
.itemlist_notItem {
    padding: 40px 24px;
    background: var(--bg-light);
}

.itemlist_main_card {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.itemlist_main_card:after {
    content: "";
    display: block;
    width: calc((100% - 60px)/3);
    height: 0;
}

.itemlist_main_card_item {
    width: calc((100% - 80px)/3);
    margin: 0 40px 40px 0;
    box-sizing: border-box;
    position: relative;
}

.itemlist_main_card_itemWrap {
    padding: 8px;
    min-height: 360px;
    background: var(--bg-area-content);
    box-shadow: var(--boxshadow-item-card);
}

.itemlist_main_card_item:nth-child(3n) {
    margin: 0;
}

/*商品画像*/
.itemlist_main_cardItem_image {
    position: relative;
    width: 100%;
    margin: 0 0 8px;
}

.itemlist_main_cardItem_image::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.itemlist_main_cardItem_image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

/*itemのaccentマーク*/
.itemlist_main_card_item .item_icon {
    position: absolute;
    top: 0;
}


/*商品情報*/

.itemlist_main_cardItem_detail {
    min-height: 120px;
}

.itemlist_main_cardItem_detail_label {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.itemlist_main_cardItem_detail_name {
        min-height: 42px;
    margin: 0 0 4px 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
	color: var(--color-main);
}

.itemlist_main_cardItem_detail_price {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
	margin: 0 0 4px 0;
    min-height: 44px;
}

.itemlist_main_cardItem_detail_price_member_price {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.itemlist_main_cardItem_detail_member_price,
.itemlist_main_cardItem_detail_sale_price,
.itemlist_main_cardItem_detail_price .price {
    font-weight: bold;
    font-size: 1.6rem;
    margin: 0 8px 0 0;
	color: var(--color-price);
}

.itemlist_main_cardItem_detail_price .sale_icon {
    font-size: 1.2rem;
}

/*会員価格・SALE時の価格*/
.itemlist_main_cardItem_detail_member_price,
.itemlist_main_cardItem_detail_sale_price {
    color: var(--color-sale);
    margin: 0 8px 0 0;
    display: flex;
}

.sale_discount_mode_percent,
.sale_discount_mode_amount,
.itemlist_main_cardItem_detail_price_membe_text {
    font-size: 1.3rem;
    background: var(--bg-notice);
    color: var(--color-sale);
    display: inline-flex;
    align-items: center;
    width: auto;
    height: 20px;
    padding: 0 5px;
}

.sale_discount_mode {
    margin: 0 4px 0 0;
}

.item_soldout_label_text,
.item_price_member_text {
    font-size: 1.3rem;
	color: var(--color-white);
    background: var(--bg-soldout);
    padding: 0 5px;
    margin: 0 8px 4px 0;
    border: 1px solid #ccc;
    height: 20px;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
}

.sale_text {
    display: inline-block;
    background: var(--color-sale);
    padding: 2px 4px;
    color: var(--color-white);
}

.limited_icon {
    /*会員限定商品*/
    color: var(--color-white);
    background: var(--color-primary);
    border: none;
    height: 20px;
    padding: 0 5px;
    margin: 0 8px 4px 0;
    font-size: 1.3rem;
    display: inline-flex;
    border-radius: 0;
	align-items: center;
}

.sale_discount_mode_amount:empty {
    border: none;
    display: none;
}

.sale_discount_mode_percent:empty {
    border: none;
    display: none;
}

.itemlist_main_cardItem_detail_select{
    margin: 8px 0 0;
}

.itemlist_main_cardItem_detail_select .select_type,
.itemlist_main_cardItem_detail_select .count,
.itemlist_main_cardItem_detail_select .stock {
    height: 32px;
    margin: 0 0 16px;
    display: flex;
    align-items: center;
}

.itemlist_main_cardItem_detail_select .select_type span,
.itemlist_main_cardItem_detail_select .count span{
    font-size: 1.2rem;
    min-width: 50px;
}

.itemlist_main_cardItem_detail_select .stock {
    margin: 0 0 8px;
    font-size: 1.2rem;
    color: var(--color-secondary);
}
.itemlist_main_cardItem_detail_select select {
    width: 100%;
    height: 32px;
    padding: 4px 32px 4px 4px;
    box-sizing: border-box;
    border-radius: 2px;
    border: 1px solid var(--form-border-light);
    font-size: 1.4rem;
}
.itemlist_main_card_itemWrap_select input.btn_submit_cart {
    height: 32px;
    font-size: 1.2rem;
    color: #fff !important;      /* ← 文字を白に */
    font-weight: normal;
    background: #000 !important; /* ← 背景を黒に */
}

.itemlist_main_card_itemWrap_select .submit {
    position: absolute;
    bottom: 0;
    width: calc(100% - 16px);
    margin: 0 0 16px;
}

/*sortとページャー*/
.pagelink {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 40px;
}

.pagelink span {
    margin: 0 16px 0 0;
    font-weight: bold;
}

.pagelink select {
    width: 80px;
    height: 40px;
    margin: 0 8px 0 0;
    font-size: 1.4rem;
    color: var(--btn-secondary-color);
    background-color: var(--btn-secondary-bg);
    border: 1px solid var(--btn-secondary-border);
    border-radius: 3px;
}

.pagelink input[type="submit"] {
    width: 64px;
    height: 40px;
    font-size: 1.4rem;
    color: var(--btn-tertiary-color);
    background: var(--btn-tertiary-bg);
    border: 1px solid var(--btn-tertiary-border);
    border-radius: 25px;
}

.itemlist_footer .pagerbox {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 0 24px;
}

@media screen and (max-width:960px) {
    /*画面サイズ960px以下*/
    .pagelink select {
        height: 40px;
    }

    .itemlist_main_card_item {
        width: calc((100% - 60px)/3);
        margin: 0px 30px 30px 0;
    }

    .itemlist_main_card_item:nth-child(3n) {
        margin: 0px 0 30px 0;
    }

    .itemlist_main_card_itemWrap {
        margin: 0;
        min-height: 242px;
    }
}

@media screen and (max-width:580px) {

    /*画面サイズ580px以下*/
    .itemlist_headerWrap {
        flex-wrap: wrap;
        justify-content: start;
    }

    .itemlist_headerWrap h3 {
        margin: 0 0 40px;
    }

    .itemlist_header_sort {
        width: 100%;
    }

    .itemlist_header_sortbox_list {
        display: flex;
        justify-content: space-around;
        width: 100%;
    }

    .itemlist_header_sortbox_listItem {
        margin: 0;
    }

    .itemlist_header_sortbox_listItem>a {
        margin: 0;
        background-position: right 0px center;
        background-repeat: no-repeat;
        background-size: 10px 10px;
    }

    .itemlist_main_card {
        justify-content: space-between;
    }

    .itemlist_main_card_item {
        width: calc((100% - 16px)/2);
        margin: 0 0 24px 0;
    }

    .itemlist_main_card_item:nth-child(2n) {
        margin: 0 0 24px 0;
    }

    .itemlist_main_card_itemWrap {
        border: none;
        box-shadow: none;
        padding: 0;
    }
    .itemlist_main_cardItem_detail{
        padding: 0 8px 4px;
    }
    .itemlist_main_cardItem_detail_name{
        box-sizing: border-box;
    }
    .itemlist_main_cardItem_detail_price_member_price{
        flex-direction: column;
        justify-content: right;
        display: list-item;
    }
}

/* =================================================
	shopinfo_page_top お知らせ＿TOP
================================================= */
.shopinfo_page_top {
    margin: 0 0 80px;
}

.shopinfo_page_top h3 {
    margin: 0 0 40px;
}

.shopinfo_page_top .shopinfo_page_wrap {
    display: flex;
    flex-direction: column;
    padding: 40px;
}

.shopinfo_page_top .shopinfo_page_listItem {
    margin: 0 0 16px;
}

.shopinfo_page_top .shopinfo_page_listItem a {
    width: auto;
    display: inline-block;
}

.shopinfo_page_top .shopinfo_page_listItem_wrap {
    display: flex;
	color: var(--color-main);
}

.shopinfo_date {
    min-width: 80px;
    display: inline-flex;
    margin: 0 16px 4px 0;
    color: var(--color-primary);
    font-weight: bold;
}

.infoall {
    width: 350px;
    text-align: left !important;
    font-size: 1.2rem;
    margin: 24px auto 0;
}

.infoall a {
    width: 100%;
    height: 52px;
    font-size: 1.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 25px;
    color: var(--btn-main-color);
    background-color: var(--btn-main-bg);
}

@media screen and (max-width:580px) {
    .shopinfo_page_top .shopinfo_page_wrap {
        padding: 24px 16px 0;
    }

    .shopinfo_page_top .shopinfo_page_listItem_wrap {
        flex-wrap: wrap;
        flex-direction: column;
    }

    .infoall {
        width: 100%;
        margin: 24px auto 24px;
    }
}

/* =================================================
	user_page カスタムページ
================================================= */
.user_page h3 {
    margin: 0 0 40px;
}

.user_page a {
    text-decoration: underline;
}

.user_cntent {
    line-height: 1.8;
}

/* =================================================
	newitem_page 新着商品
================================================= */
.newitem_page {
    margin: 0 0 40px;
    padding: 40px 0 0;
    border-top: 1px solid var(--border-light);
}

.newitem_page h3 {
    margin: 0 0 40px;
}

@media screen and (max-width:960px) {
    .newitem_page {
        margin: 0 0 40px;
        padding: 40px 0 0;
    }
}

/* =================================================
	recommend_page" おすすめ商品
================================================= */
.recommend_page {
    margin: 0 0 40px;
}

.recommend_page h3 {
    margin: 0 0 40px;
}

@media screen and (max-width:960px) {
    .recommend_page {
        margin: 0 0 40px;
        padding: 40px 0 0;
    }
}

/* =================================================
	hotitem_page売れ筋商品
================================================= */
.hotitem_page {
    padding: 40px 0 0;
}

.hotitem_page h3 {
    margin: 0 0 40px;
}

/*新着商品・おすすめ・売れ筋共通 */
.newitem_list_card,
.recommenditem_list_card,
.hotitem_list_card {
    display: flex;
    margin: 0 0 24px;
    overflow: hidden;
    height: auto;
}

.newitem_list_cardItem,
.recommenditem_list_cardItem,
.hotitem_list_cardItem {
    min-width: calc((100% - 80px)/6);
    width: calc((100% - 80px)/6);
    box-sizing: border-box;
    margin: 0px 16px 0 0;
    padding: 4px;
    background: var(--bg-area-content);
}

.newitem_list_cardItem:nth-child(6n) {
    margin: 0;
}

.recommenditem_list_cardItem:nth-child(6n) {
    margin: 0;
}

.hotitem_list_cardItem:nth-child(6n) {
    margin: 0;
}

.newitem_list_cardItem:after {
    content: "";
    display: block;
    width: calc((100% - 225px)/6);
    height: 0;
}

.recommenditem_list_cardItem:after {
    content: "";
    display: block;
    width: calc((100% - 225px)/6);
    height: 0;
}

.hotitem_list_cardItem:after {
    content: "";
    display: block;
    width: calc((100% - 225px)/6);
    height: 0;
}

.newitem_list_cardItem_image,
.recommenditem_list_cardItem_image,
.hotitem_list_cardItem_image {
    position: relative;
    width: 100%;
    margin: 0 0 8px;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.newitem_list_cardItem_image::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.recommenditem_list_cardItem_image::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.hotitem_list_cardItem_image::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.newitem_list_cardItem_image img,
.recommenditem_list_cardItem_image img,
.hotitem_list_cardItem_image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.newitem_list_cardItem_detail_name,
.recommenditem_list_cardItem_detail_name,
.hotitem_list_cardItem_detail_name {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
	color: var(--color-main);
}

.newitem_list_cardItem_detail_price,
.recommenditem_list_cardItem_detail_price,
.hotitem_list_cardItem_detail_price {
    font-weight: bold;
	color: var(--color-main);
}

@media screen and (max-width:960px) {

    .newitem_list_card,
    .recommenditem_list_card,
    .hotitem_list_card {
        height: auto;
        flex-wrap: initial;
    }
}

@media screen and (max-width: 768px) {

    /*画面サイズ768pxタブレット用*/
    #newitem_page h3,
    #recommend_page h3,
    #hotitem_page h3 {
        text-align: center;
        margin: 0 0 32px;
    }

    .newitem_list_card,
    .recommenditem_list_card,
    .hotitem_list_card {
        display: flex;
        flex-wrap: wrap;
    }

    .newitem_list_cardItem,
    .recommenditem_list_cardItem,
    .hotitem_list_cardItem {
        width: calc((100% - 32px)/3);
        margin: 0px 16px 16px 0;
    }

    .newitem_list_cardItem:nth-child(3n) {
        margin: 0 0 16px;
    }

    .recommenditem_list_cardItem:nth-child(3n) {
        margin: 0 0 16px;
    }

    .hotitem_list_cardItem:nth-child(3n) {
        margin: 0 0 16px;
    }
}

/* =================================================
	login ログイン・会員登録
================================================= */
.login_off h3 {
    margin: 0 0 16px;
}

/*未ログイン*/
.login_off_wrap {
    display: flex;
    justify-content: space-between;
}

.login_off_wrap .login_form_btn {
    margin: 24px 0 0;
}

.login_off_card {
    width: 48%;
}

.login_off_card {
    width: 48%;
    padding: 24px 24px 0;
    box-sizing: border-box;
    background-color: var(--bg-area-content);
}

.login_off_card_title {
    font-weight: bold;
    margin: 0 0 24px;
}

.login_off_card_text {
    margin: 0 0 24px;
}

@media screen and (max-width:580px) {
    .login_off_wrap {
        display: block;
    }

    .login_off_card {
        width: 100%;
		padding: 16px 8px;
		margin: 0 0 16px;
	}

    .pw_reisue {
        margin: 24px 0 0;
    }
}

/* メイン画像エリア */
.gallery_img {
    display: flex;
    align-items: center;       /* 縦中央 */
    justify-content: center;   /* 横中央 */
    overflow: hidden;
    max-width: 900px;
    margin: 0 auto;
}

.gallery_img img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;       /* 枠内に収める */
    display: block;
    margin: 0 auto;
}

/* ギャラリーサムネイル（サムネイル全体のコンテナ） */
.gallery_choice-btn {
    display: flex;
    flex-direction: row;       /* 横並び */
    flex-wrap: wrap
    justify-content: center;
    gap: 8px;
    margin: 10px auto 0;
    max-width: 1000px;
}

/* サムネイル個別（li） */
.gallery_choice-btn li {
    width: 200px;              /* サムネイルサイズ */
    height: 200px;
    list-style: none;
    cursor: pointer;
    overflow: hidden;
    border: 1px solid var(--bg-item_gallery);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* サムネイル画像 */
.gallery_choice-btn li img {
    width: auto;
    height: 100%;              /* 枠の高さに合わせて縮小 */
    object-fit: contain;
    display: block;
    opacity: 0.4;
    margin: 0 auto;
}

/* 選択中のサムネイル */
.gallery_choice-btn li.slick-current img {
    opacity: 1;                /* 選択中は不透明に */
}


/*矢印の設定*/
/*戻る、次へ矢印の位置*/
.slick-image-prev,
.slick-image-next {
    position: absolute;
    z-index: 3;
    top: calc(50% - 15px);
    cursor: pointer;
    outline: none;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.2);
}

.slick-image-prev {
    /*戻る矢印の位置と形状*/
    left: 2.5%;
}

.slick-image-next {
    /*次へ矢印の位置と形状*/
    right: 2.5%;
}

.slick-image-next::before {
    right: calc(50% - 3px);
    transform: rotate(45deg);
}

.slick-image-prev::before {
    transform: rotate(-135deg);
    left: calc(50% - 3px);
}

.slick-image-prev::before,
.slick-image-next::before {
    position: absolute;
    content: "";
    height: 7px;
    width: 7px;
    top: calc(50% - 5px);
    border-top: 2px solid var(--btn-main-color);
    border-right: 2px solid var(--btn-main-color);
}

/*商品説明*/
.item_detail_wrap_content {
    max-width: 450px;
    width: 100%;
}

.item_detail_wrap_content_name {
    color: var(--color-main);
    margin: 0 0 16px;
    text-align: left;
    font-size: 1.8rem;
    font-weight: bold;
}

.item_detail_wrap_content_price {
    margin: 0 0 32px;
    font-size: 1.8rem;
    font-weight: bold;
}

.item_detail_wrap_content_price .item_soldout_label_text,
.item_detail_wrap_content_price .item_price_member_text {
    font-size: 1.3rem;
	color: var(--color-white);
    background: var(--bg-soldout);
    padding: 0 5px;
    margin: 0 8px 4px 0;
    border: none;
    height: 20px;
    font-size: 1.3rem;
    display: inline-flex;
    align-items: center;
}

.item_detail_wrap .sale_discount_mode_amount,
.item_detail_wrap .itemlist_main_cardItem_detail_price_membe_text {
    font-size: 1.4rem;
}

.item_price_naturalprice {
    font-size: 1.4rem;
	font-weight: normal;
    color: var(--color-icon);
    text-decoration: line-through;
}

.item_price_sale_price,
.item_price_member_price {
    color: var(--color-sale);
	margin: 16px 0;
}

.item_detail_wrap_content_product_stock {
    margin: 0 0 32px;
    color: var(--color-secondary);
}

.item_detail_wrap_content_product_stock b {
    font-weight: normal;
}

.item_detail_wrap_content_product_select_type {
    width: 100%;
    margin: 0 0 16px;
}

.item_detail_wrap_content_product_select_type select {
    width: 100%;
    border-radius: 3px;
}

.item_detail_wrap_content_product_count {
    margin: 0 0 32px;
}

.item_detail_wrap_content_product_count select {
    width: 100px;
    border-radius: 3px;
}

.item_detail_wrap_content_product_submit {
    margin: 0 0 16px;
}

.item_detail_wrap_content_product_submit input{
    font-weight: bold;
}
.item_detail_wrap_content_product_arrival_notice {
    margin: 0 0 16px;
}

.btn_arrival_notice {
    width: 80%;
    display: flex;
    height: 40px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-area);
    border-radius: 3px;
    box-sizing: border-box;
    margin: 0 0 16px;
}

/*= arrival_notice_request_wrap =*/
#arrival_notice_request_wrap {
    display: none;
}

.btn_submit_cart {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
    height: 52px !important;
    font-size: 1.4rem !important;
    border-radius: 25px !important;
    width: 100% !important;
    padding: 0 24px !important; /* ← 横の余白を広げて横長に */
}



.comment1 {
    margin: 0 0 16px;
}

.comment1 span,
.comment2 span {
    font-size: 1.4rem !important;
    line-height: 1.8;
}

.comment1 a,
.comment2 a {
    text-decoration: underline;
}

.item_delivery {
    margin: 32px 0 32px;
    display: flex;
}

.item_delivery_attention {
    font-size: 1.2rem;
    color: var(--color-secondary);
}

/*レビュー*/
.itemdetail_review {
    margin: 0 0 48px;
}

.itemdetail_review h3 {
    margin: 0 0 40px;
}

.itemdetail_review_average {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.review_average_score {
    display: flex;
    align-items: end;
}

.score_title {
    margin: 0 16px 0 0;
}

.score_contents {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.reviw_total {
    margin: 0 8px 0 0;
    font-size: 1.4rem;
    color: var(--color-secondary);
}

.review_average_all a {
    color: var(--color-link);
}

/*定期購入＿サブスクリプション*/
.itemdetail_subscription {
    margin: 0 0 32px;
    padding: 16px 8px 24px;
    border: 1px solid var(--border-light);
	background-color: var(--bg-area-content);
}

.itemdetail_subscription_title {
    margin: 0 0 16px;
    color: var(--color-main);
    font-size: 1.8rem;
    font-weight: bold;
}

.itemdetail_subscription_text {
    margin: 0 0 24px;
    display: block;
    width: 100%;
}

.itemdetail_subscription_text li {
    display: flex;
}

.total_subtitle {
    min-width: 80px;
}

.itemdetail_subscription_listTitle {
    text-align: left;
    background: var(--bg-light);
    margin: 0 0 8px;
    padding: 8px;
    display: block;
    box-sizing: border-box;
    font-weight: bold;
}

.itemdetail_subscription a {
    text-decoration: underline;
}

.itemdetail_subscription input.cartbutton_style {
    width: 100%;
    font-weight: bold;
    font-size: 1.4rem;
    color: var(--btn-primary-color);
    background-color: var(--btn-primary-bg);
    border: 2px solid var(--btn-primary-border);
    border-radius: 25px;
}

.itemdetail_subscription input.cartbutton_style:hover {
    opacity: 0.85;
    transition: 0.2s;
}

/*カテゴリ一覧*/
.itemdetail_category {
    margin: 32px 0 48px;
}
.itemdetail_category h3 {
    margin: 0 0 40px;
}

.itemdetail_category_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;!important;
}

.itemdetail_category_listItem {
    display: inline-block;
    margin: 0 8px 8px 0;
}

.itemdetail_category_listItem a {
    height: 32px;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--btn-secondary-color);
    background: var(--btn-secondary-bg);
    border: 1px solid var(--btn-secondary-border);
    border-radius: 25px;
    padding: 0 10px 0;
}

@media screen and (max-width:960px) {
    .item_detail_wrap_content {
        max-width: 100%;
        padding: 0 16px;
    }

    .item_detail_wrap_gallery {
        margin: 0 0 24px;
        max-width: 100%;
        box-sizing: border-box;
    }

    .item_detail_wrap_content_product_submit {
        margin: 0 0 24px;
    }

    .review_average_score {
        align-items: center;
        width: calc(100% - 56px);
    }

    .score_contents {
        width: 100%;
    }
}

@media screen and (max-width:580px) {

    /*画面サイズ580px以下*/
    .score_contents {
        width: auto;
    }

    .review_average {
        flex-wrap: wrap;
    }

    .review_average_score {
        flex-wrap: wrap;
        margin: 0 0 16px;
    }
}

/*plg_externalrssd -ブログ連携 新着記事*/
.plg_externalrssd {
    padding: 16px 8px;
    border: 1px solid var(--border-area);
    background: var(--bg-area-content);
}

.plg_externalrssd h3 {
    margin: 0 0 40px;
}

.plg_externalrssd_title_wrap {
    margin: 0px 0 8px;
    border-bottom: 1px solid var(--border-area);
    padding: 0 0 8px;
}

.plg_externalrssd_date {
    margin: 16px 0 0;
}

.plg_externalrssd_title a {
    text-decoration: none;
    font-weight: bold;
}

.plg_externalrssd_dateLink {
    margin: 0 0 24px;
}

.plg_externalrssd_dateLink:last-child {
    margin: 0;
}


/*buyers_bought この商品を勝った人はこんな商品も買っています*/
.buyers_bought {
    margin: 0 0 52px;
}

.buyers_bought:last-child {
    margin: 0;
}

.buyers_bought h3 {
    margin: 0 0 16px;
    padding: 40px 0 0;
}

/*buyers_bought この商品チェックした人はこんな商品チェックしています*/
.buyers_checked {
    margin: 0 0 52px;
}

.buyers_checked:last-child {
    margin: 0;
}

.buyers_checked h3 {
    margin: 0 0 40px;
}

/*buyers_bought この商品を勝った人はこんな商品も買っています
buyers_checked この商品チェックした人はこんな商品チェックしています 共通*/
.buyers_bought_list_card,
.buyers_checked_list_card {
    display: flex;
    margin: 0 0 24px;
    overflow: hidden;
    height: auto;
}

.buyers_bought_list_cardItem,
.buyers_checked_list_cardItem {
    min-width: calc((100% - 80px)/6);
    width: calc((100% - 80px)/6);
    box-sizing: border-box;
    margin: 0px 16px 0 0;
    padding: 4px;
    background: var(--bg-area-content);
}

.buyers_bought_list_cardItem :nth-child(n6) {
    margin-right: 0;
}

.buyers_checked_list_cardItem :nth-child(n6) {
    margin-right: 0;
}

.buyers_bought_list_card:after {
    content: "";
    display: block;
    width: calc((100% - 225px)/6);
    height: 0;
}

.buyers_checked_list_card:after {
    content: "";
    display: block;
    width: calc((100% - 225px)/6);
    height: 0;
}

.buyers_bought_list_cardItem_image,
.buyers_checked_list_cardItem_image {
    position: relative;
    width: 100%;
    margin: 0 0 8px;
}

.buyers_bought_list_cardItem_image::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.buyers_checked_list_cardItem_image::before {
    content: "";
    display: block;
    padding-top: 100%;
}

.buyers_bought_list_cardItem_image img,
.buyers_checked_list_cardItem_image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.buyers_bought_list_cardItem_detail_name,
.buyers_checked_list_cardItem_detail_name {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.buyers_bought_list_cardItem_detail_price,
.buyers_checked_list_cardItem_detail_price {
    font-weight: bold;
}

/*みんなのレビューコメント*/
.itemdetail_reviewList h3 {
    margin: 0 0 32px 0;
}

/*960px以下*/
@media screen and (max-width:960px) {
    .item_detail_wrap {
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
    }

    .review_average {
        flex-wrap: wrap;
    }

    .score_title {
        width: 16%;
        min-width: 70px;
    }

    .score_contents {
        width: 80%;
    }

    .buyers_bought_list_card,
    .buyers_checked_list_card {
        height: auto;
        flex-wrap: initial;
    }
}

@media screen and (max-width: 768px) {

    /*画面サイズ768pxタブレット用*/
    .buyers_bought h3,
    .buyers_checked h3,
    .itemdetail_reviewList h3 {
        margin: 0 0 32px;
    }

    .buyers_bought_list_card,
    .buyers_checked_list_card {
        display: flex;
        flex-wrap: wrap;
    }

    .buyers_bought_list_cardItem,
    .buyers_checked_list_cardItem {
        width: calc((100% - 32px)/3);
        margin: 0px 16px 16px 0;
    }

    .buyers_bought_list_cardItem:nth-child(3n) {
        margin-right: 0;
    }

    .buyers_checked_list_cardItem:nth-child(3n) {
        margin-right: 0;
    }
}

/* =================================================
	subscription_page 定期購入
================================================= */
.subscription_page a {
    text-decoration: underline;
}

.subscription_page h2 {
    text-align: center;
}

.content_section {
    margin: 0 0 16px;
}

.content_section：empty {
    display: none;
}

.subscription_item {
    border: 1px solid var(--border-light);
    margin: 0 0 24px;
}

.subscription_item_header {
    border-bottom: 1px solid var(--border-light);
    background-color: var(--bg-light);
    display: flex;
    justify-content: space-around;
    text-align: center;
}

.subscription_item_contents {
    padding: 0;
}

.subscription_item_contents dl {
    display: flex;
    flex-wrap: wrap;
}

.subscription_item_contents dl:first-child {
    margin: 0 0 8px;
}

.subscription_item_contents dt.total_subtitle {
    min-width: 80px;
}

.subscription_item_contents dd {
    font-weight: bold;
}

.subscription_wrap {
    margin: 0 0 88px;
}

.subscription_item_contents_list {
    align-items: center;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.subscription_item_title_sp {
    display: none;
}

.subscription_item_header li,
.subscription_item_contents_list li {
    padding: 8px;
    box-sizing: border-box;
}

.subscription_item_header li:first-child,
.subscription_item_name {
    width: 50%;
}

.subscription_item_header li:nth-child(2),
.subscription_item_orde {
    text-align: center;
    width: 10%;
}

.subscription_item_header li:nth-child(3),
.subscription_item_shipping {
    width: 10%;
    text-align: center;
}

.subscription_item_header li:nth-child(4),
.subscription_item_price {
    width: 20%;
}

.subscription_itemList {
    margin: 0 0 16px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--border-light);
}

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

    .subscription_item_contents_list {
        display: block;
    }

    .subscription_item_contents_list_card {
        width: 100%;
        text-align: left;
    }

    .subscription_item_title_sp {
        display: block;
        width: 100%;
        padding: 8px;
        box-sizing: border-box;
        background: var(--bg-light);
        font-weight: bold;
    }

    .subscription_item_contents {
        padding: 8px 8px 0;
    }

    .subscription_item_contents dl {
        display: flex;
    }

    .total_subtitle {
        min-width: 80px;
    }
}

/* =================================================
	specific_transaction_page 特定商取引法
================================================= */
.laws_list {
    margin: 0 0 24px;
    padding: 0 0 24px;
    border-bottom: 1px solid var(--border-light);
    align-items: center;
}

.laws_list_title {
    margin: 0 0 8px;
}

/* =================================================
	inquiry_page お問い合わせ
================================================= */
.inquiry_header {
    margin: 0 0 32px;
}
.inquiry_page h2 {
    margin: 0 auto 40px;
}

.inquiry_wrap {
    margin: 0 0 80px;
}

.inquiry_wrap h3 {
    margin: 0 0 4px;
}

.inquiry_wrap p {
    font-size: 1.2rem;
    margin: 0 0 32px;
    color: var(--color-secondary);
}

.inquiry_wrap_list {
    margin: 0 0 24px;
}

.inquiry_wrap_listTitle {
    margin: 0 0 4px;
}

.inquiry_wrap_listData input,
.inquiry_wrap_listData textarea,
.info_content input[type="text"],
.info_content input[type="email"],
.info_content textarea {
	width: calc(100% - 10px);
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.inquiry_wrap_listData textarea {
    height: 240px;
}

.inquiry_btn {
    margin: 0 auto 56px;
}

.inquiry_btn_previous input {
    border: none;
    font-weight: normal;
    height: 52px;
	color: var(--color-main);
}

/*確認ページ*/

.inquiry_confirmation {
    margin: 0 0 80px;
}
.inquiry_finish_title,
.inquiry_finish{
	text-align: center;
}
.inquiry_confirmationList{
	margin: 0 0 16px;
    padding: 0px 0 16px;
    border-bottom: 1px solid var(--border-light);
}
.inquiry_btn input.btn_main_lg {
    margin: 0 0 56px;
}


/* =================================================
	login_page 会員ログイン
================================================= */
.login_page {
    padding: 40px;
    background-color: var(--bg-area-content);
    border: 1px solid var(--border-light);
    box-shadow: var(--boxshadow-subarea);
    box-sizing: border-box;
}

.login_page .errormessage {
    margin: 0 0 24px;
}

.login_page_wrap {
    display: flex;
    justify-content: space-between;
}

.login_page h3 {
    margin: 0 0 40px;
}

.login_page_message {
    margin: 0 0 16px;
}

.login_page_wrap form,
.login_page_wrap_registCard {
    width: calc((100% - 24px)/2);
    height: 100%;
    padding: 16px;
    box-sizing: border-box;
}

.login_page_wrap form {
    border: 1px solid var(--border-light);
    background-color: var(--bg-area-content);
}

.login_page_wrap_registCard {
    background-color: var(--bg-area-primary);
}

.login_page h4 {
    margin: 0 0 10px;
}

.login_page_wrap_loginCard_message,
.login_page_wrap_registCard_message {
    margin: 0 0 16px;
}

.login_page_wrap_loginCard_form_input {
    width: 100%;
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.login_page_wrap_loginCard_form_button {
    margin: 34px 0 8px;
}

.login_page_wrap_registCard_registerbutton a {
    width: 100%;
    height: 52px;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    color: var(--btn-primary-color);
    font-weight: bold;
    background: var(--btn-primary-bg);
    border: 2px solid var(--btn-primary-border);
}

@media screen and (max-width:960px) {

    /*画面横幅960px 以下　タブレットサイズ*/
	.login_page{
		border: none;
	}
    .login_page h2 {
        margin: 0;
    }

    .login_page_wrap {
        flex-wrap: wrap;
    }

    .login_page_wrap form,
    .login_page_wrap_registCard {
		width: 100%;
		padding: 0 0 40px;
		border: none;
		box-shadow: none;
		margin: 0 0 40px;
		border-radius: 0;
    }
	.login_page_wrap_registCard {
		background: none;
		padding: 0;
	}
    .login_page form {
        border-bottom: 1px solid var(--form-border-light);
    }
}

@media screen and (max-width:580px){
	.login_page{
		padding: 16px;
	}
	.login_page_wrap form{
		padding: 0 0 40px;
	}

}

/* =================================================
	pwreissue_page パスワード再発行
================================================= */
.pwreissue_page h2 {
    text-align: center;
}

.pwreissu_info {
    max-width: 550px;
    margin: 0 auto 32px;
    line-height: 1.8;
}

.pwreissue_page form {
    max-width: 550px;
    margin: 0 auto;
}

.pwreissue_page input[type="submit"] {
    width: 100%;
    height: 52px;
    border-radius: 3px;
    color: var(--btn-main-color);
    background: var(--btn-main-bg);
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 80px;
}

.pwreissue_page input[type="email"] {
    width: 100%;
    display: block;
    margin: 0 auto;
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
    margin: 0 0 40px;
}

/* =================================================
	membersinfo_page 会員情報
================================================= */
.membersinfo_page h2 {
    text-align: center;
}

.membersinfo_page_wrap h3 {
    margin: 0 0 40px;
}

.membersinfo_formWrap_list,
.membersinfo_formWithdraw li {
    margin: 0 0 16px;
    padding: 0 0 16px;
}
.membersinfo_formWrap_list_content a{
	color: var(--color-link);
}
.membersinfo_formWrap_list a.membersinfo_formWrap_list_content_btn {
    display: none;
}

.membersinfo_formWrap_list_content input {
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}


.membersinfo_formWrap_list_content input[name="SubmitPedit"]:hover {
    opacity: 0.85;
    transition: 0.2s;
}

.membersinfo_formWrap_list_content input[name="Cancel"] {
    width: 550px;
    height: 40px;
    background: none;
    border: none;
    color: var(--color-secondary);
    box-sizing: border-box;
    font-weight: normal;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid transparent;
}


.membersinfo_formWithdraw {
    margin: 0 0 48px;
    border-top: 1px solid var(--border-light);
    padding: 24px 0;
    border-bottom: 1px solid var(--border-light);
}

.membersinfo_userWrap {
    display: flex;
    justify-content: space-between;
}

.membersinfo_formWrap_list {
    border-bottom: 1px solid var(--border-light);
    align-items: center;
}

.membersinfo_formWrap_list:last-child {
	border: none;
    flex-direction: column;
    align-items: center;
    padding: 0;
	margin: 16px 0;
}

.membersinfo_userWrap>li {
    width: calc((100% - 32px)/3);
}

.membersinfo_userWrap_card {
    border: 1px solid var(--border-light);
    text-align: center;
    padding: 32px;
    box-sizing: border-box;
    border-radius: 3px;
    box-shadow: var(--boxshadow-subarea);
}

.membersinfo_userWrap_card_img {
    border: 1px solid var(--border-light);
    height: 50px;
    width: 50px;
    border-radius: 25px;
    margin: 0 auto 16px;
    position: relative;
}

.icon_info,
.icon_history,
.icon_pw{
    fill: var(--btn-main-bg);
    background: var(--btn-main-color);
    width: 20px;
    position: absolute;
    font-size: 20px;
    top: 15px;
    left: 16px;
}

.membersinfo_userWrap_card h5 {
    margin: 0 0 4px;
}

@media screen and (max-width: 960px) {
	.icon_info,
	.icon_history,
	.icon_pw{
		left: 14px;
	}

}

/*会員情報変更*/
.info_content select {
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.info_content input[type="radio"] {
    margin: 0 24px 0 0;
    height: auto;
}

.info_content label {
    margin: 0 40px 0 0;
    height: auto;
}

.info_content input[name="SubmitEdit"],
.membersinfo_formWrap_list_content input[name="SubmitPedit"]{
    width: 100%;
    height: 52px;
    min-width: 550px;
    margin: 40px 0 46px;
    border: none;
    border-radius: 25px;
    color: var(--btn-main-color);
    background-color: var(--btn-main-bg);
}

.info_content input[name="Cancel"] {
    width: 100%;
    border: none;
    background: none;
}

.info_content input[name="SubmitEdit"]:hover {
    opacity: 0.85;
}

/*会員情報変更内容確認*/
.edit_wrap {
    max-width: 550px;
    margin: 0 auto 40px;
}

.edit_wrap_text {
    text-align: center;
    margin: 0 0 88px;
}

.edit_wrap_btn {
    text-align: center;
    margin: 0 0 56px;
}
@media screen and (max-width: 960px) {
	.edit_wrap {
		margin: 40px auto;
	}
}
/*パスワードの変更*/
.info_content input {
    border: 1px solid var(--form-border-light);
}

/*960px以下*/
@media screen and (max-width: 960px) {

    /*画面サイズ960px以下*/
    .membersinfo_page h2 {
        display: none;
    }

    .membersinfo_page_wrap-sp {
        display: flex;
        flex-direction: column;
		margin: 0 0 40px;
    }

    .membersinfo_userWrap {
        order: 1;
        margin: 0 0 32px;
		display: block;
    }
    .membersinfo_userWrap>li {
        width: 100%;
    }
    .membersinfo_formWrap {
        order: 2;
    }

    .membersinfo_formWithdraw {
        order: 3;
    }

    .membersinfo_formWrap_list_content {
        width: 100%;
    }
	.membersinfo_formWrap_list_content input[type="password"] {
		margin: 0 0 4px;
	}
    .membersinfo_formWrap_list_content input[name="SubmitPedit"] {
        min-width: initial;
        width: 100%;
    }
    .membersinfo_userWrap_card {
        padding: 16px;
        margin: 0 0 16px;
        display: flex;
        text-align: left;
        align-items: center;
    }

    .membersinfo_userWrap_card_img {
        margin: 0 16px 0 0;
    }

    .membersinfo_formWrap_list {
        border-bottom: none;
    }

    .membersinfo_formWrap_list,
    .membersinfo_formWithdraw li {
        margin: 16px 0 0;
        border-bottom: 1px solid var(--border-area);
    }
    .info_content input[name="SubmitEdit"] {
        min-width: auto;
    }
}

/* =================================================
	members_withdraw 会員退会ページ
================================================= */
.members_withdraw h2 {
    text-align: center;
}

.withdraw_header {
    max-width: 550px;
    margin: 0 auto 80px;
    padding: 32px;
    box-sizing: border-box;
    background: var(--bg-attention);
}

.withdraw_header_img {
    text-align: center;
    margin: 0 0 40px;
}
.withdraw_header_imgIcon{
    fill: var(--color-error);
    font-size: 50px;
}
.withdraw_header_text {
    text-align: center;
}

.withdraw_header_text:last-child {
    margin: 40px 0 0;
}

.withdraw_header_text span {
    font-size: 1.6rem;
    font-weight: bold;
}

.form_withdraw {
    max-width: 550px;
    margin: 0 auto;
}

.withdrawbutton input {
    margin: 0 0 56px;
}

/*退会完了ページ*/
.withdraw_finish {
    max-width: 550px;
    margin: 0 auto;
}

h4.withdraw_finish_header {
    text-align: center;
    margin: 0 0 88px;
}

/* =================================================
	members_signup 会員登録
================================================= */
.members_signup_wrap {
    margin: 0 auto 24px;
}

.members_signup_subwrap {
    margin: 0 auto;
}

.members_signup_wrap_header {
    margin: 24px 0;
    line-height: 1.8;
}

.form_signup_info {
    margin: 0 0 16px;
}

.members_signup_wrap .members_signup_wrap_form_list{
	border: none;
}

.members_signup_wrap_form_listData input {
    width: 100%;
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.members_signup_wrap_form_btn{
	margin: 0 auto;
    text-align: center;
}

.members_signup_wrap_form_btn input[type="submit"] {
	max-width: 550px;
    width: 100%;
    color: var(--btn-main-color);
    background: var(--btn-main-bg);
    border: none;
    height: 52px;
    border-radius: 25px;
}

/*新規登録入力フォーム*/
.members_signup_wrap_form_list {
    margin: 0 0 24px;
}

.members_signup_wrap_form_list p.hint {
    color: var(--color-secondary);
    font-size: 1.4rem;
}

.members_signup_wrap_form_list input,
.members_signup_wrap_form_list select,
.members_signup_wrap_form_list textarea {
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.members_signup_wrap_form_list input,
.members_signup_wrap_form_list textarea {
	width: calc(100% - 10px);
}

.members_signup_wrap_form_listData div>label {
    display: flex;
    align-items: center;
}

.members_signup_wrap_form_listData div>label input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0 8px 0 0;
}


.members_signup_wrap_form_list select {
    width: 50%;
    min-width: 250px;
}

.signupbutton {
    margin: 80px auto;
    text-align: center;
}

.signupbutton input[type="submit"] {
    max-width: 550px;
}

/*会員登録入力内容確認画面*/
.members_signup_wrap_header_title,
.members_signup_wrap_header_text {
    text-align: center;
    max-width: 550px;
    margin: 0 auto 32px;
}

.members_signup_wrap ul {
    margin: 0 0 16px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--border-light);
}

.members_signup_wrap input.btn_main_lg {
    margin: 0 auto 56px;
	max-width: 550px;
}

.members_signup_finish {
    margin: 88px auto 40px;
    max-width: 550px;
}

/* =================================================
	checkcart_page カートの中身
================================================= */
.checkcart_wrap h3 {
    margin: 0 0 40px;
}

.checkcart_wrap_item {
    display: flex;
    border-bottom: 1px solid var(--border-light);
    margin: 0 0 16px;
    padding: 0 0 16px;
}

.checkcart_wrap_item:last-child {
    margin: 0 0 24px;
}

.checkcart_wrap_itemImage {
    min-width: 136px;
    min-height: 136px;
    width: 136px;
    height: 136px;
    margin: 0 16px 0 0;
}

.checkcart_wrap_itemImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.checkcart_wrap_itemContetnt {
    width: calc(100% - 135px);
}

.checkcart_wrap_itemContetnt>div {
    margin: 0 0 16px;
}

.checkcart_wrap_itemContetnt .name {
    font-weight: bold;
}

.checkcart_wrap_itemContetnt .count {
    display: flex;
    align-items: end;
}

.checkcart_wrap_itemContetnt_countorder {
    margin: 0 16px 0 0;
}

.checkcart_wrap_itemContetnt .count input[type="submit"] {
    height: 40px;
}

.checkcart_wrap_itemContetnt .count select {
    height: 40px;
    width: 80px;
    border-radius: 3px;
    border: 1px solid var(--form-border-dark);
}

.btn_submit_quantity {
    width: 80px;
    height: 36px;
    color: var(--btn-secondary-color);
    background: var(--btn-secondary-bg);
    border: 1px solid var(--btn-secondary-border);
    border-radius: 3px;
}

.edit {
    text-align: end;
}

.edit a {
    color: var(--color-link);
    font-size: 1.4rem;
}

.checkcart_wrap_totalWrap {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.checkcart_wrap_totalWrap_title {
    font-weight: bold;
    margin: 0 24px 0 0;
}

.checkcart_wrap_totalWrap_totla {
    font-size: 2.4rem;
    font-weight: bold;
}

.checkcart_wrap .importantmessage {
    text-align: end;
}

.checkcart_wrap .goto_cart {
    max-width: 550px;
    margin: 80px auto 0;
    padding: 0 0 8px;
}

.checkcart_wrap .regi_header {
    text-align: end;
    margin: 0 0 32px;
}

.goto_cart .goto_cart_next {
    margin: 0 0 46px;
}

.goto_cart .goto_cart_next a {
    color: var(--btn-main-color);
    font-weight: bold;
    text-align: center;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 25px;
}

.goto_cart .goto_cart_back {
    text-align: center;
    margin: 0 0 8px;
}

/*カートの中身がない場合*/
#checkcart_page .no_order {
    text-align: center;
    margin: 0 0 80px;
    font-size: 1.6rem;
}

.checkcart_page_wrap {
    margin: 0 0 80px;
}

@media screen and (max-width:580px) {

    /*画面サイズ580px以下*/
    .checkcart_wrap_itemContetnt {
        width: calc(100% - 96px);
    }

    .checkcart_wrap_itemImage {
        min-width: 80px;
        min-height: 80px;
        width: 80px;
        height: 80px;
    }

    .checkcart_wrap_itemContetnt .count {
        display: flex;
        align-items: end;
    }

    .checkcart_wrap_itemContetnt .count div {
        width: 50%;
        margin: 0 16px 16px 0;
    }

    .checkcart_wrap_itemContetnt .count input[type="submit"] {
        height: 40px;
        width: 50%;
    }

    .btn_submit_quantity {
        width: 100%;
        margin: 0 0 16px;
    }

    .checkcart_wrap .goto_cart {
        margin: 40px 0 0;
    }
}

/* =================================================
	checkout_page ご注文情報の入力
================================================= */
.checkout_page {
    margin: 0 0 80px;
	padding: 16px 0;
}

.cart_header_step {
    margin: 0 0 40px;
}

.cart_header_step_list {
    max-width: 550px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.cart_header_step_listItem {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 100px;
    position: relative;
}

.cart_step_border {
    width: 100%;
    position: relative;
}

.cart_step_border:before {
    content: "";
    height: 1px;
    background: var(--cart-check-off);
    top: 25%;
    width: 100%;
    position: absolute;
}

.cart_header_step_listItem_check {
    width: 30px;
    height: 30px;
    border-radius: 25px;
    margin: 0 0 8px;
    position: relative;
    box-sizing: border-box;
}

.check_on {
    background: var(--color-primary);
    border: 1px solid var(--color-primary);
}

.check_off {
    background: var(--cart-check-off);
    border: 1px solid var(--cart-check-off);
}

.check_title_on {
    color: var(--icon-primary);
    font-weight: bold;
    font-size: 1.2rem;
}

.check_title_off {
    color: var(--cart-check-off);
    font-size: 1.2rem;
}

.check_empty {
    background: var(--cart-check-off);
    border: 1px solid var(--cart-check-off);
}

.check_on:before,
.check_off:before {
    /*チェックマーク*/
    position: absolute;
    content: "";
    left: 7px;
    top: 7px;
    width: 12px;
    height: 7px;
    border-left: 3px solid var(--cartCheck-mark);
    border-bottom: 3px solid var(--cartCheck-mark);
    transform: rotate(-45deg);
    z-index: 1000;
}

.checkout_cartInput {
    display: flex;
    justify-content: space-between;
}

.checkout_cartInput_wrap {
    margin: 0;
    padding: 24px;
    width: calc(100% - 300px);
    box-sizing: border-box;
    background-color: var(--bg-area-content);
}

.checkout_cartInput_wrap h3 {
    margin: 0 0 40px;
}

.regi_header {
    margin: 0 0 16px;
}

.checkout_formWrap {
    margin: 0 0 24px;
    padding: 0 0 32px;
}

.checkout_form_point h4,
.checkout_form_coupon h4{
	margin: 0px 0 12px;
}

.checkout_formWrap_header {
    margin: 0 0 24px;
}

.checkout_formWrap_header h3 {
    margin: 0;
}


.checkout_formWrap_header p.point {
    margin: 16px 0 0;
    font-size: 1.4rem;
    color: var(--color-secondary);
}

.checkout_formWrap_option {
    padding: 16px;
    background-color: var(--bg-light);
}

.checkout_formWrap_option input {
    background: var(--color-white);
    margin: 0 0 4px;
}

.checkout_formWrap_another li.form_title {
    margin: 0 0 16px;
    font-weight: bold;
}

.checkout_formWrap_another label {
    margin: 0 8px 0 0;
    display: block;
}

.checkout_formWrap_another label input {
    height: auto;
    margin: 0 8px 0 0 !important;
}

.checkout_formWrap_contentsList {
    margin: 0 0 16px;
}

.checkout_formWrap_contentsList_input.form_input>.checkout_info {
    background: var(--bg-attention);
}

.checkout_formWrap_contentsList_input.form_input label {
    padding: 8px;
}

.checkout_formWrap_contentsList_title br {
    display: none;
}

.checkout_formWrap_contentsList_input {
    color: var(--color-main);
    font-size: 1.4rem;
}

.coupon_input input[type="text"] {
    background: var(--bg-area-content);
}

.checkout_formWrap_contentsList_input input[type="checkbox"] {
    height: auto;
    margin: 0 8px 0 0;
}

.checkout_formWrap_contentsList_input input,
.checkout_formWrap_contentsList_input select,
.checkout_formWrap_contentsList_input textarea {
    color: var(--form-color);
    background-color: var(--form-bg);
    border: 1px solid var(--form-border-light);
}

.checkout_formWrap_contentsList_input input[type="text"],
.checkout_formWrap_contentsList_input input[type="email"],
.checkout_formWrap_contentsList_input textarea {
    width: 100%;
}

.checkout_formWrap_contentsList_input select {
    width: 70%;
}

.checkout_formWrap_contentsList_input select {
    width: 70%;
}

.checkout_formWrap_contentsList_input textarea#in_biko {
    height: 150px;
}

.checkout_formWrap_contentsList_point_input select {
    width: 50%;
    margin: 0 8px 0 0;
    border: 1px solid var(--form-border-light);
}

.registerbutton {
    padding: 0 0 56px;
	text-align: center;
}

.registerbutton input {
    border: none;
    width: 100%;
	max-width: 550px;
    height: 52px;
    border-radius: 25px;
    background: var(--btn-main-bg);
    color: var(--btn-main-color);
}

/*カートの中身 pcのみ*/
.checkout_cartInput_wrap_cart {
    margin: 0 0 16px;
    width: 230px;
    height: 100%;
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--color-primary);
    background-color: var(--bg-area-content);
}

.checkout_cartInput_wrap_cart_title {
    margin: 0 0 16px;
    width: 230px;
    height: 100%;
    font-size: 1.6rem;
}

.checkout_cartInput_wrap_cart_list {
    margin: 0 0 8px;
}

.checkout_cartInput_wrap_cart_list_itemdetail {
    display: flex;
    justify-content: space-between;
}

.checkout_cartInput_wrap_cart_list_itemdetail_itemImage {
    width: 60px;
    height: 60px;
    margin: 0 8px 0 0;
}

.checkout_cartInput_wrap_cart_list_itemdetail_itemImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.checkout_cartInput_wrap_cart_list_itemdetail_contents {
    width: calc(100% - 68px);
}

.checkout_cartInput_wrap_cart_list_itemdetail_contents_title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: var(--color-primary);
    font-size: 1.4rem;
}

.checkout_cartInput_wrap_cart_list_itemdetail_contents_order,
.checkout_cartInput_wrap_cart_list_itemdetail_contents_price {
    color: var(--color-primary);
    text-align: end;
    text-align: end;
    font-size: 1.4rem;
    margin: 4px 0 0 0;
    font-weight: normal;
}

.itemdetail_contents_price span {
    margin: 0 16px 0 0;
}

.checkout_cartInput_wrap_cart_total {
    border-top: 1px solid var(--border-light);
    padding: 8px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    font-weight: normal;
    font-size: 1.4rem;
}

.checkout_cartInput_wrap_cart_totalPrice {
    font-size: 1.6rem;
    font-weight: bold;
}

/*ご注文情報の確認-*/
.checkout_cartConfirm {
    padding: 32px;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    background: var(--bg-area-content);
}

.checkout_cartConfirm_header {
    margin: 0 0 32px;
}

.checkout_cartConfirm_header h3 {
    margin: 0 0 40px;
}

.checkout_cartConfirm_main {
    margin: 0 auto 56px;
}

.checkout_cartConfirm_main h4 {
    margin: 0 0 8px;
}

.checkout_cartConfirm_main_wrap_header {
    border-bottom: 1px solid var(--border-light);
    padding: 8px 0;
    font-weight: bold;
    display: flex;
    text-align: center;
}

.checkout_cartConfirm_main_wrap_headerTitle:nth-child(1) {
    width: 50%;
}

.checkout_cartConfirm_main_wrap_headerTitle:nth-child(2) {
    width: 10%;
}

.checkout_cartConfirm_main_wrap_headerTitle:nth-child(3) {
    width: 20%;
}

.checkout_cartConfirm_main_wrap_headerTitle:nth-child(4) {
    width: 20%;
}

.checkout_cartConfirm_main_wrap_contents {
    display: flex;
    padding: 16px 0;
}

.checkout_cartConfirm_main_wrap_contents_itemImage {
    width: 60px;
    height: 60px;
    margin: 0 16px 0 0;
}

.checkout_cartConfirm_main_wrap_contents_itemImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.checkout_cartConfirm_main_wrap_contents_name {
    width: calc(50% - 70px);
}
.checkout_cartConfirm_main_wrap_contents_limited_item{
	border: 1px solid var(--border-light);
    padding: 8px;
    margin: 4px 0 0;
    color: var(--color-primary);
    font-size: 1.2rem;
    display: inline-block;
}
.checkout_cartConfirm_main_wrap_contents_card {
    display: flex;
    align-items: center;
    width: 50%;
}

.checkout_cartConfirm_main_wrap_contents_card_orde {
    width: 15%;
    padding: 8px;
    text-align: center;
}

.checkout_cartConfirm_main_wrap_contents_card_price {
    width: 40%;
    padding: 8px;
    text-align: center;
}

.checkout_cartConfirm_main_wrap_contents_card_subtotal {
    width: 40%;
    text-align: end;
}

.checkout_cartConfirm_main_wrap_contents_card_orde span,
.checkout_cartConfirm_main_wrap_contents_card_subtotal span {
    display: none;
}

/*送料*/
.checkout_cartConfirm_main_wrap_option {
    border-top: 1px solid var(--border-light);
    padding: 24px 0;
    text-align: end;
}

.checkout_cartConfirm_main_wrap_option_list,
.checkout_cartConfirm_main_wrap_total_list {
    display: flex;
    justify-content: end;
    align-items: center;
}

.checkout_cartConfirm_main_wrap_option_list {
    margin: 0 0 16px;
}

.checkout_cartConfirm_main_wrap_option_list:last-child {
    margin: 0;
}

.checkout_cartConfirm_main_wrap_option_list_title {
    text-align: end;
    width: 75%;
    font-weight: bold;
}

.checkout_cartConfirm_main_wrap_option_list_contents {
    width: 25%;
}

.checkout_shipping_no_later:empty,
.scheckout_shipping_later:empty,
.checkout_shipping_sw:empty {
    display: none;
}

/*合計料金*/
.checkout_cartConfirm_main_wrap_total {
    border-top: 1px solid var(--border-light);
    padding: 24px 0;
    text-align: end;
}

.checkout_cartConfirm_main_wrap_total_title {
    width: 75%;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 16px;
}

.checkout_cartConfirm_main_wrap_total_contents {
    width: 25%;
    font-size: 1.8rem;
    font-weight: bold;
}

.checkout_cartConfirm_main_wrap_total_info {
    color: var(--color-point);
    font-weight: bold;
}

.checkout_cartConfirm_main_wrap_total_info:empty {
    display: none;
}

/*お客様情報の確認*/
.checkout_cartConfirm form {
    margin: 0 auto;
}

.checkout_cartConfirm_userinfo {
    margin: 0 0 56px;
}

.checkout_cartConfirm_userinfo_header {
    margin: 0 0 24px;
}

.checkout_cartConfirm_userinfo_contentsList {
    margin: 0 0 16px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--border-light);
    display: flex;
}

.checkout_cartConfirm_userinfo_contentsList_title {
    width: 25%;
    margin: 0 0 4px 0;
}

.checkout_cartConfirm_userinfo_contentsList_title br {
    display: none;
}

.paypal-card-form-sendbtn-check {
    margin-bottom: 32px;
    display: flex;
    align-items: center;
}
/*ボタン*/
p.registerbutton1 {
    max-width: 550px;
    margin: 32px auto;
}

/*横幅960px以下*/

@media screen and (max-width:960px) {
    .checkout_cartInput_wrap {
        width: 100%;
        padding: 24px;
    }

    .checkout_cartInput {
        display: block;
    }

    .checkout_cartInput_wrap_cart {
        display: none;
    }

    .checkout_cartConfirm_main_wrap_total {
        padding: 16px 0;
    }

    .checkout_cartConfirm_main_wrap_option_list_title {
        width: 75%;
    }

    .checkout_cartConfirm_main_wrap_contents_name {
        width: calc(100% - 110px);
        padding: 0;
    }

    .checkout_cartConfirm {
        padding: 24px 12px;
        border: none;
		border-radius: 0;
    }

    .regi_header {
        background-color: var(--bg-light);
        padding: 8px;
    }

    .cart_header_step_listItem_check {
        width: 25px;
        height: 25px;
    }

    .check_on:before,
    .check_off:before {
        left: 6px;
        top: 6px;
        width: 10px;
        height: 5px;
        border-left: 2px solid var(--cartCheck-mark);
        border-bottom: 2px solid var(--cartCheck-mark);
    }

    .checkout_cartConfirm_main_wrap {
        border: none;
    }

    .checkout_cartConfirm_main_wrap_header {
        display: none;
    }

    .checkout_cartConfirm_main_wrap_contents {
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 16px 0;
    }

    .checkout_cartConfirm_main_wrap_contents_itemImage {
        width: 92px;
        height: 92px;
        margin: 0 16px 0 0;
    }

    .checkout_cartConfirm_main_wrap_contents_card {
        width: calc(100% - 108px);
        margin: 0 0 0 auto;
        justify-content: flex-end;
        flex-wrap: wrap;
    }

    .checkout_cartConfirm_main_wrap_contents_card_orde span,
    .checkout_cartConfirm_main_wrap_contents_card_subtotal span {
        display: inline;
        font-weight: normal;
    }

    .checkout_cartConfirm_main_wrap_contents_card_orde {
        width: auto;
    }

    .checkout_cartConfirm_main_wrap_contents_card_price {
        display: none;
    }

    .checkout_cartConfirm_main_wrap_contents_card_subtotal {
        width: auto;
        margin: 0 0 0 16px;
        font-weight: bold;
    }

    .checkout_formWrap_contentsList_input select {
        width: 100%;
    }

    /*送料・option*/
    .checkout_cartConfirm_main_wrap_option {
        margin: 0;
    }

    .checkout_cartConfirm_main_wrap_option_list {
        justify-content: space-between;
        margin: 0 0 8px auto;
    }

    .checkout_cartConfirm_main_wrap_option_list_title {
        width: 75%;
    }

    .checkout_cartConfirm_main_wrap_option_list_contents {
        width: 25%;
    }

    .checkout_cartConfirm_main_wrap_option_list_contents:empty {
        width: 25%;
        display: block;
    }

    .checkout_cartConfirm_main_wrap_total {
        margin: 0;
    }

    .list_title {
        width: 100%;
    }

    .checkout_cartConfirm_main_wrap_total_contents {
        text-align: end;
    }
}

@media screen and (max-width:580px) {
    .checkout_page {
        margin: 0;
    }

    .checkout_cartInput_wrap {
		padding: 24px 12px;
    }

    .checkout_cartConfirm {
        border-radius: 0;
    }

    .checkout_cartConfirm_userinfo_contentsList_title {
        width: 100%;
    }

    .checkout_cartConfirm_main_wrap_contents_limited_item{
		margin: 12px 0 0;
		display: block;
	}

    .checkout_cartConfirm_main_wrap_option_list_title {
        width: auto;
    }

    .checkout_cartConfirm_main_wrap_option_list_contents {
        width: auto;
    }

    .checkout_cartConfirm_main_wrap_total_list {
        justify-content: space-between;
    }

    .checkout_cartConfirm_main_wrap_total_title {
        justify-content: start;
    }

    .cart_header_step {
        margin: 0 0 24px;
    }
}

/* =================================================
	complete_order ご注文の完了
================================================= */
.complete_order_wrap {
    max-width: 550px;
    margin: 80px auto;
}

.complete_order_wrap h2 {
    text-align: center;
}

.complete_order_wrap .registerbutton {
    text-align: center;
    margin: 40px 0 56px;
}

.complete_order_page_message {
    margin: 0 0 40px
}

.second_paymen {
    text-align: center;
}

.registerbutton2 {
    margin: 0 auto 48px;
}

/*クレカやその他の決済方法の表記のスタイル*/
.payment_incomplete {
    color: var(--color-point);
    background: var(--bg-notice);
    padding: 10px;
    line-height: 2;
    display: block;
}

.second_payment {
    text-align: center;
    padding: 16px;
    border: 1px solid var(--border-soft);
}

.payment_begin {
    color: var(--color-error);
    padding: 8px 0;
    display: block;
}

#id_beginpayment input {
    background: var(--btn-primary-color);
    border: none;
    border-radius: 3px;
    color: var(--color-white);
    font-weight: 300;
    font-size: 1.4rem;
    width: 100%;
    margin: 0 0 42px;
}

@media screen and (max-width:580px) {
    .complete_order_wrap {
        margin: 24px auto;
    }
}

/* =================================================
	history ご注文履歴一覧
================================================= */
.historylist h2 {
    text-align: center;
}

.historylist_sort {
    margin: 32px 0 40px;
}

.historylist input[type="submit"] {
    width: 64px;
    height: 40px;
    font-size: 1.4rem;
    border-radius: 25px;
    color: var(--btn-secondary-color);
    background: var(--btn-secondary-bg);
    border: 1px solid var(--btn-secondary-border);
}

.historylist .pagerbox {
    margin: 0 0 80px;
}

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

.historylist_sortbox select {
    border-radius: 3px;
    width: 120px;
    height: 40px;
    margin: 0 16px 0 8px;
}

.historylist_sortbox input {
    width: 80px;
    height: 40px;
    border: none;
}

.historylist_order {
    border: 1px solid var(--border-light);
    border-radius: 3px;
    margin: 0 0 40px;
}

.historylist_order_header {
    padding: 16px;
	margin: 0 0 16px;
    background: var(--bg-area-primary);
    display: flex;
    align-items: center;
    justify-content: space-between;
	border-radius: 3px 3px 0 0;
}

.historylist_order_header_total {
    font-weight: bold;
}

.historylist_order_header_detail a {
    width: 150px;
    height: 40px;
    color: var(--btn-main-color);
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
}

.historylist_order dl {
    /*商品情報*/
    display: flex;
    padding: 0 16px 16px;
    position: relative;
}

.historylist_order dl:last-child {
    margin: 0;
}

.historylist_order dt {
    /*商品タイトル*/
    order: 2;
    width: calc(100% - 258px);
    padding: 0 16px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height: 45px;
    line-height: 1.7;
}

.historylist_order .item_image {
    /*商品画像*/
    order: 1;
    margin: 0;
    width: 90px;
    height: 90px;
}

.historylist_order .item_image img {
    /*商品画像*/
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}


.historylist_order .item_comment {
    order: 3;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.historylist_order .item_comment p:first-child {
    width: max-content;
    border-bottom: 1px solid var(--border-light);
    border-radius: 0;
    display: -webkit-inline-box;
    justify-content: center;
    align-items: center;
    position: absolute;
    bottom: 17px;
    left: 124px;
}

.historylist_order .item_comment p:first-child a {
    color: var(--color-link);
    border: none;
}

.historylist_order .item_comment a {
    color: var(--btn-tertiary-color);
    background-color: var(--btn-tertiary-bg);
    border: 1px solid var(--btn-secondary-border);
    border-radius: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}

dd.item_comment :nth-child(2) {
    display: flex;
    flex-direction: column;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.review_url {
    border: 2px solid var(--color-primary);
    border-radius: 25px;
    height: 40px;
    display: flex;
    align-items: center;
    width: 150px;
    justify-content: center;
}

.historylist_order_link {
    /*リンクボタン*/
    max-width: 550px;
    margin: 0 auto;
}

.historylist_order_link div {
    margin: 32px auto;
}

.historylist_order_link .btn_back a {
    color: var(--color-link);
    display: flex;
    height: 40px;
    justify-content: center;
    align-items: center;
}

/*580px 以下*/
@media screen and (max-width:580px) {

    /*画面サイズ580px以下*/
    .historylist {
        padding: 16px 0;
    }

    .historylist h3 {
        margin: 0 0 0 16px;
    }

    .historylist .pagerbox {
        margin: 0 0 80px;
    }

    .historylist_order {
        border: none;
        padding: 0;
        margin: 0 0 40px 0;
    }

    .historylist_order_header {
        padding: 16px;
        border-bottom: none;
        border-top: 1px solid var(--border-light);
        background-color: var(--bg-light);
    }

    .historylist_order_header_date,
    .historylist_order_header_total {
        display: flex;
    }

    .historylist_order_header_detail a {
        width: 86px;
        padding: 0 8px;
    }

    .historylist_order dl {
        padding: 0 16px 16px;
        margin: 0 4px 16px;
        flex-wrap: wrap;
        border-bottom: 1px solid var(--border-light);
    }

    .historylist_order dl:last-child {
        padding: 0 16px 16px;
        border-bottom: none;
    }

    .historylist_order dt {
        width: calc(100% - 90px);
        box-sizing: border-box;
        padding: 0 0 0 16px;
    }

    .historylist_order .item_comment {
        width: calc(100% - 106px);
        margin: 8px 0 0 auto;
    }

    .historylist_order .item_comment p:first-child {
        top: 68px;
        left: 125px;
        padding: 0;
        display: inline-table;
    }

    .historylist_order .item_comment a {
        width: 100%;
    }

    a.review_url.button_style {
        margin: 16px 0 0;
    }

    .historylist_order_link div {
        padding: 0 16px;
    }
}

/* =================================================
	history ご注文履歴詳細
================================================= */
.history h3 {
    margin: 0 0 40px;
}

.history_order {
    border: 1px solid var(--border-light);
    border-radius: 3px;
    margin: 0 auto 48px;
    box-sizing: border-box;
}

.history_order_header {
    padding: 8px 24px;
    background-color: var(--bg-light);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.item_date,
.item_price_total {
    font-size: 1.4rem;
}

.item_price_total span {
    font-size: 2.4rem;
    font-weight: bold;
}

.history_order_detail_title {
    display: flex;
    justify-content: space-between;
    padding: 8px 24px;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
}

.history_order_detail_title .name {
    width: 50%;
}

.history_order_detail_title .count {
    width: 10%;
}

.history_order_detail_title .price,
.history_order_detail_title .price_subtotal {
    width: 20%;
}

/*ご注文履歴詳細商品詳細*/
.history_order_detail_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 32px;
    padding: 24px 24px 0;
    border-top: 1px solid var(--border-light);
}

.history_order_detail_item_header {
    width: 50%;
}

.history_order_detail_item_headerWrap {
    display: flex;
}

.history_order_detail_item_headerWrap_name {
    display: flex;
}

.history_order_detail_item_headerWrap_image {
    min-width: 60px;
    min-height: 60px;
    width: 60px;
    height: 60px;
    margin: 0 16px 0 0;
}

.history_order_detail_item_headerWrap_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.history_order_detail_item_headerWrap_name {
    width: calc(100% - 76px);
    margin: 0 16px 0 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.history_order_detail_item_info {
    width: 50%;
    display: flex;
}

.history_order_detail_item_info span {
    display: none;
}

.history_order_detail_item_info_count {
    width: 20%;
    text-align: center;
}

.history_order_detail_item_info_price {
    width: 40%;
    text-align: center;
}

.history_order_detail_item_info_price_subtotal {
    width: 40%;
    text-align: end;
}

.history_order_detail_option {
    border-top: 1px solid var(--border-light);
    padding: 24px 0;
    margin: 0 24px;
    text-align: end;
}

.history_order_detail_option_list {
    display: flex;
    justify-content: end;
    align-items: center;
    margin: 0 0 8px;
}

.history_order_detail_option_list:last-child {
    margin: 0;
}

.history_order_detail_total {
    border-top: 1px solid var(--border-light);
    padding: 24px 0;
    margin: 0 24px 40px 24px;
    display: flex;
    justify-content: flex-end;
}

.history_order_detail_option_list_title {
    width: 150px;
    text-align: left;
    display: flex;
    justify-content: end;
}

.history_order_detail_option_list_price {
    width: 200px;
    text-align: end;
}

/*お届け先・配送関係など*/
.history_order_info {
    margin: 0 auto 48px;
    max-width: 100%;
}

.history_order_info a {
    text-decoration: underline;
}

.history_order_info h3 {
    margin: 0 0 8px;
}

.history_order_info_list {
    display: flex;
    border-bottom: 1px solid var(--border-light);
    height: 40px;
    align-items: center;
}

.history_order_info_list_title {
    width: 20%;
    margin: 0;
}

.history_order_info_message {
    margin: 8px 0;
    padding: 8px;
    display: inline-block;
    width: auto;
    background: var(--bg-attention);
    color: var(--color-error);
}

/*ホームボタン*/
.history_order_link {
    padding: 40px 0;
    max-width: 550px;
    margin: 0 auto;
    text-align: center;
}

.history_order_link .btn_back a {
    color: var(--btn-primary-color);
    background-color: var(--btn-primary-bg);
    margin: 0 0 62px;

}


/*768px以下*/
@media screen and (max-width:960px) {

    /*画面横幅768px 以下　タブレットサイズ*/
    .history h2 {
        text-align: left;
    }

    .history_order {
        border: none;
    }

    .history_order_header {
        border-top: 1px solid var(--border-light);
        flex-wrap: wrap;
    }

    .history_order_detail {
        padding: 0;
    }

    .history_order_detail_title {
        display: none;
    }

    .history_order_detail_item {
        flex-wrap: wrap;
        justify-content: end;
        align-items: center;
        border-top: none;
    }

    .history_order_detail_item_header {
        width: 100%;
    }

    .history_order_detail_item_headerWrap_image {
        min-width: 92px;
        min-height: 92px;
        width: 92px;
        height: 92px;
    }

    .history_order_detail_item_headerWrap_name {
        width: calc(100% - 116px);
    }

    .history_order_detail_item_info {
        width: calc(100% - 80px);
        text-align: left;
        display: flex;
        justify-content: end;
        margin: 0 0 8px;
    }

    .history_order_detail_item_info span {
        display: block;
        color: var(--color-secondary);
    }

    .history_order_detail_item_info_count,
    .history_order_detail_item_info_price,
    .history_order_detail_item_info_price_subtotal {
        display: flex;
        margin: 0 0 0 32px;
        width: auto;
    }

    .history_order_detail_option {
        margin: 0;
    }

    .history_order_detail_total {
        margin: 0 0 40px;
    }

    .history_order_info_list {
        flex-direction: column;
        align-items: flex-start;
        height: auto;
    }

    .history_order_info_list_title {
        width: 100%;
        margin: 0;
        padding: 16px 0 0 0;
    }

    .history_order_info_list_data {
        padding: 0 0 16px 0;
    }

    @media screen and (max-width:580px) {

        /*画面サイズ580px以下*/
        .history_order_header {
            border-top: none;
			padding: 16px 8px;
        }

        .history_order_detail_option {
            padding: 24px;
        }
		.history_order_detail_item{
			padding: 16px 8px 0;
		}
        .history_order_detail_item_info {
            flex-direction: column;
			width: calc(100% - 92px);
        }
		.history_order_detail_item_headerWrap_image{
			margin: 0 8px 0 0;
		}
		.history_order_detail_item_headerWrap_name {
			margin: 0;
		}
		.history_order_detail_item_info_count,
		.history_order_detail_item_info_price,
		.history_order_detail_item_info_price_subtotal{
			margin: 0 0 0 8px;
		}
    }
}

/* =================================================
	会員ログインページ login
================================================= */
.login .errormessage {
    margin: 0 0 24px;
}

.login_wrap {
    display: flex;
    justify-content: space-between;
}

.login_wrap h3 {
    margin: 0 0 8px;
}

.login_wrap form,
.login_wrap_registCard {
    width: calc((100% - 24px)/2);
    height: 100%;
    padding: 48px 48px;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    box-shadow: var(--boxshadow-subarea);
    box-sizing: border-box;
}

.login_wrap_loginCard_message,
.login_wrap_registCard_message {
    margin: 0 0 40px;
}

.login_wrap_loginCard_form_input {
    width: 100%;
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.login_wrap_loginCard_form_button {
    margin: 34px 0 8px;
}

.login_wrap_registCard_registerbutton a {
    display: block;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--btn-primary-color);
    color: var(--color-white);
    border-radius: 3px;
}

@media screen and (max-width:960px) {

    /*画面横幅768px 以下　タブレットサイズ*/
    .login_page h2 {
        margin: 0;
    }

    .login_wrap {
        flex-wrap: wrap;
    }

    .login_wrap form,
    .login_wrap_registCard {
        width: 100%;
        padding: 32px 0;
        border: none;
        box-shadow: none;
        margin: 0 0 32px;
        border-radius: 0;
    }

    .login_page form {
        border-bottom: 1px solid var(--form-border-light);
    }
}

.login .formbutton a {
    height: 40px;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    border: 1px solid var(--border-light);
    border-radius: 3px;
    background-position: 8px 50%;
    justify-content: center;
}

/* =================================================
	レビューを書く reviewform
================================================= */
.reviewform_header {
    margin: 0 0 48px;
}

.reviewform_item {
    display: flex;
    margin: 0 0 32px;
}

.reviewform_item_image {
    min-width: 90px;
    min-height: 90px;
    width: 90px;
    height: 90px;
    margin: 0 24px 0 0;
}

.reviewform_item_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.reviewform_main {
    margin: 0 0 80px;
}

.reviewform_mainWrap {
    margin: 0 0 24px;
}

.reviewform_mainWrap_input input,
.reviewform_mainWrap_input textarea,
.reviewform_mainWrap_input select {
    width: calc(100% - 16px);
    border: 1px solid var(--form-border-light);
    background-color: var(--form-bg);
}

.reviewform_mainWrap_input textarea {
    height: 200px;
}

.formbutton {
    max-width: 550px;
    margin: 0 auto 56px;
    text-align: center;
}

.formbutton input.btn_main {
    margin: 0 0 46px;
    height: 52px;
    width: 100%;
}

/* =================================================
	review_finish レビュー完了
================================================= */
.review_finish_wrap {
    max-width: 550px;
    margin: 0 auto;
    text-align: center;
}

.review_finish_wrap_message {
    margin: 0 0 80px;
}

.review_finish_wrap_btn_home,
.review_finish_wrap_btn_back {
    margin: 0 0 56px;
    height: 40px;
}

.review_finish_wrap_btn_modify {
    display: flex;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.review_finish_wrap_btn_modify:hover {
    border-radius: 3px;
}

/* =================================================
	reviewlist レビュー一覧(みんなのレビュー)
================================================= */
.reviewlist h2 {
    text-align: left;
}

.reviewlist_itemWrap_item {
    display: flex;
    justify-content: space-between;
    padding: 0 0 32px 0;
    margin: 0 0 32px;
    border-bottom: 1px solid var(--border-light);
}

.reviewlist_itemWrap_item_image {
    width: 90px;
    height: 90px;
}

.reviewlist_itemWrap_item_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--border-soft);
    box-sizing: border-box;
}

.reviewlist_itemWrap_item_info {
    width: calc(100% - 106px);
    display: flex;
    justify-content: space-between;
    margin: 0 0 0 16px;
}

.reviewlist_itemWrap_item_info_submit input[type="submit"] {
    height: 36px;
}

.reviewlist_itemWrap_item_info_contents {
    width: 70%;
    margin: 0 24px 0 0;
}

.reviewlist_itemWrap_item_info_contents_name {
    margin: 0 0 8px;
}

.reviewlist_itemWrap_item_info_contents_tortalaverage {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 0 8px;
}

.reviewlist_itemWrap_item_info_contents_price,
.reviewlist_itemWrap_item_info_contents_option_stock {
    margin: 0 0 8px;
}

.reviewlist_itemWrap_item_info_contents_option_stock b {
    font-weight: initial;
}

.reviewlist_itemWrap_item_info_contents_option {
    margin: 0 0 16px;
}

.reviewlist_itemWrap_item_info_contents_option_count {
    display: flex;
    align-items: center;
}

.reviewlist_itemWrap_item_info_contents_option_type select,
.reviewlist_itemWrap_item_info_contents_option_stock select,
.reviewlist_itemWrap_item_info_contents_option_count select {
    height: 36px;
    border: 1px solid var(--form-border-dark);
    border-radius: 3px;
}

.reviewlist_itemWrap_item_info_contents_option_type,
.reviewlist_itemWrap_item_info_contents_option_stock {
    margin: 0 0 16px;
}

.reviewlist_itemWrap_item_info_contents_option_type select {
    width: 100%;
}

.reviewlist_itemWrap_item_info_contents_option_count span {
    min-width: 60px;
}

.reviewlist_itemWrap_item_info_contents_option_count select {
    width: calc(100% - 60px);
}

.reviewlist_main_card {
    margin: 0 0 32px;
    padding: 0 0 32px;
    border-bottom: 1px solid var(--border-light);
}

.reviewlist_main_card_header {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0 0 8px;
}

.reviewlist_main_card_header_wrap {
    margin: 0 0 8px;
}

.reviewlist_main_card_header_wrap_title {
    font-weight: bold;
    margin: 0 0 8px;
}

.reviewlist_main_card_fooder_info {
    display: flex;
	margin: 0 0 8px;
}

.reviewlist_main_card_fooder_info li,
.reviewlist_main_card_opinion{
    color: var(--color-secondary);
    font-size: 1.2rem;
}
.reviewlist_main_card_fooder_info li{
    margin: 0 24px 0 0;
}
.reviewlist_main_card_opinion {
	border: 1px solid var(--border-light);
    padding: 4px;
}

.reviewlist_itemWrap_item_info_cart {
    width: 30%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.reviewlist_main_card_main {
    margin: 0 0 16px;
}

.reviewlist_btn_wrap {
    max-width: 550px;
    margin: 0 auto 40px;
    text-align: center;
}

.reviewlist_btn_wrap .btn_modify {
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

input.button_style {
    width: 100%;
    border-radius: 25px;
    border: 1px solid #ccc;
    color: var(--btn-main-color);
    background-color: var(--btn-main-bg);
}

@media screen and (max-width:960px) {
    .reviewlist_itemWrap_item_image {
        max-width: 120px;
        max-height: 120px;
    }

    .reviewlist_itemWrap_item_info {
        flex-wrap: wrap;
    }

    .reviewlist_itemWrap_item_info_contents {
        width: auto;
        min-width: 350px;
    }

    .reviewlist_itemWrap_item_info_contents_option {
        margin: 0 0 24px;
    }

    .reviewlist_itemWrap_item_info_contents_option_count span {
        min-width: 56px;
    }

    .reviewlist_itemWrap_item_info_contents_option_type select,
    .reviewlist_itemWrap_item_info_contents_option_count select {
        width: 100%;
    }

    .reviewlist_itemWrap_item_info_cart {
        width: auto;
    }

    .reviewlist_main_card_header {
        flex-wrap: wrap;
    }

    .reviewlist_main_card_header_title {
        width: 100%;
        margin: 0 0 16px;
    }

    .reviewlist input.button_style {
        width: 100%;
    }

    @media screen and (max-width:740px) {

        /*画面サイズ740px以下*/
        .reviewlist_main_card_header {
            display: block;
            margin: 0 0 8px;
        }

        .reviewlist_main_card_header_wrap {
            width: 100%;
        }

        .reviewlist_main_card_header_info {
            width: 100%;
            margin: 16px 0 0;
        }

        .reviewlist_itemWrap_item_info_contents {
            min-width: inherit;
        }

        .reviewlist_itemWrap_item_info_cart {
            width: 100%;
        }
    }
}

/* =================================================
	在庫数オーバー
================================================= */
.stockout_page h2 {
    text-align: center;
}

.stockout_page_wrap {
    max-width: 550px;
    margin: 0 auto 40px;
    text-align: center;
    padding: 32px;
    box-sizing: border-box;
    background: var(--bg-attention);
}

.stockout_page_wrap_img {
    margin: 0 0 16px;
}

.stockout_page_wrap_title {
    margin: 0 0 16px;
    font-weight: bold;
    font-size: 1.6rem;
}

.stockout_page_wrap_text {
    text-align: left;
}
/* =================================================
	トップへのボタン
================================================= */
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 0;
    bottom: 254px;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 2;
    cursor: pointer;
    background: var(--bg-area-main);
    box-shadow: var(--boxshadow-subarea);
    border: 1px solid var(--border-soft);
    background-position: right 10px center;
    background-repeat: no-repeat;
    opacity: 0.85;
}
.icon_top{
	fill: var(--btn-primary-color);
    position: absolute;
    font-size: 24px;
    top: 12px;
    left: 12px;
}
@media screen and (max-width: 960px) {
    /*画面サイズ960px以下*/
    .pagetop {
        bottom: 30px;
    }
}
/* 検索ボタン（既存） */
.serach_btn {
    display: flex;
    justify-content: center;
    z-index: 3;
    right: 100px;
    top: 10px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    text-align: center;
    border-radius: 2px;
    position: absolute;
    align-items: center;
}
.header_subpage .serach_btn {
    right: 92px;
    top: 8px;
}
.globalMenu .serach_btn,
.sidemenu_search .serach_btn {
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
}

/* 共通：検索アイコン（存在すれば効く） */
span.icon_search,
.header_wrap .cartcheck {
    position: absolute;
    top: 50%;
    right: 5px; /* 優先させたい場合は !important */
    transform: translateY(-50%);
    z-index: 3;
}

/* 確実に効かせる（SVGが直接 .serach_btn 内にある場合） */
.serach_btn svg {
    position: absolute;
    top: 50%;
    right: 35px;              /* 小さくすると右へ寄る */
    transform: translateY(-50%);
}

/* SVGサイズ */
.icon_search svg,
.icon_cart svg {
  width: 24px;
  height: 24px;
  display: block;
}



/* サブページ用 */
.header_subpage .cartcheck {
    top: 8px;
    right: 92px;
}

/* SVGサイズと色 */
span.icon_cart svg {
    width: 24px;
    height: 24px;
    display: block;
}

.open-btn.btnactive {
    background-image: url(happy.svg);
    background: url("../img/icon_close.svg") no-repeat 15px center;
    /*閉じるアイコンを背景に表示*/
    background-size: 18px 18px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
    top: 10px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
    top: 16px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.globalMenu {
    width: 100%;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    color: var(--color-primary);
    background: var(--bg-area-content);
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.6s;
    border-bottom: 1px solid var(--border-area);
    z-index: 100;
}

.globalMenu_search .search .search_form {
    width: 300px;
}

.search_box_word {
    position: relative;
    margin: 0 0 16px;
}

.search_box_word input {
    width: 100%;
}

.globalMenu_search .search form .submit {
    box-sizing: border-box;
    width: 40px;
    height: 40px;
	background-size: 20px;
    background-repeat: no-repeat;
    background-position: 50%;
    border-radius: 0px 3px 3px 0;
    border: 1px solid #ccc;
    cursor: pointer;
    position: absolute;
}

.globalMenu_search .search_box_category {
    display: flex;
    align-items: center;
}

.globalMenu_search .search_box_category input[type="checkbox"] {
    width: 25px;
    margin: 0 8px 0 0;
}

.header_subpage .globalMenu {
    height: 144px;
}

/* このクラスを、jQueryで付与・削除する */
.globalMenu.active {
    transform: translateY(0%);
}

.close {
    position: absolute;
	top: 45px;
    right: 125px;
    background-size: 18px 18px;
    background-position: 10px;
    transition: 0.2s;
    width: 35px;
    height: 35px;
	cursor: pointer;
}

.close-btn{
    display: block;
    width: 35px;
    height: 35px;
    position: relative;
}

.close-btn::before,
.close-btn::after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    border-radius: 25px;
    background: var(--border-light);
    transform: rotate(45deg);
    transform-origin: 0% 50%;
    position: absolute;
    top: calc(14% - 5px);
    left: 14%;
}
.close-btn::after {
    transform: rotate(-45deg);
    transform-origin: 100% 50%;
    left: auto;
    right: 14%;
}

.header_subpage_wrap .globalMenu_search {
    position: relative;
}
.header_subpage_wrap .close{
    top: 10px;
    left: 500px;
}
/* =================================================
	auction　オークション関係のぺージ
================================================= */
/*商品一覧　－　オークション商品*/
.current_price {
    font-weight: bold;
}

.item_list_auction_priceAbout p{
    font-size: 16px;
    display: inline;
}

.item_list_auction_wrap {
    margin: 8px 0 0;
    border-top: 1px solid var(--btn-main-bg);
}

.item_list_auction_priceTitle {
    background: var(--btn-main-bg);
    margin: 0 0 4px 0;
    padding: 0 4px;
    font-size: 1.0rem;
    color: var(--color-white);
}

.is_ongoing_auction {
    padding: 8px 0 0;
}

.is_ongoing_auction p {
    color:var(--color-secondary);
    font-size: 1.2rem;
}

.auction_item_submit .btn_submit_cart{
    margin: 32px 0 0;
}

/*商品詳細　－　オークション商品*/
.auction_item_comment .item_price,
.item_price_priority {
    display: flex;
	align-items: center;
}

.auction_item_submit {
    margin: 0 0 48px;
}

.auction_item_submit .content_attention{
	margin: 24px 0 0 0;
}

.is_off_auction.errormessage{
    margin: 0 auto 16px;
}

.auction_item_submit .errormessage a {
    color: var(--color-main);
    text-decoration: underline;
}

.item_price_priority {
    padding: 12px 0;
    margin: 0 0 24px;
}

.auction_item_comment dl.item_price {
    width: 100%;
    margin: 0 0 16px;
}

.auction_item_comment .item_price dd {
    font-size: 20px;
}

.auction_item_comment .item_price dt,
.item_price_priority_title {
    min-width: 90px;
}

.auction_item_comment .item_delivery {
    padding: 24px 0;
    display: flex;
    margin: 0;
}

.auction_item_comment  .item_price_priority_title{
    margin: 0 !important;
    padding: 8px 0;
}

.item_top_bidder{
    margin: 0 0 24px;
    font-weight: bold;
    position: relative;
    padding: 24px 36px 24px 56px;
    border: 1px solid var(--color-point);
}

.item_top_bidder:before{
    content: '';
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--color-point);
}

.item_top_bidder:after{
    content: '';
    position: absolute;
    left: 25px;
    top: calc(50% - 1px);
    transform: translateY(-50%) rotate(45deg);
    width: 5px;
    height: 9px;
    border: 1px solid var(--border-white);
    border-width: 0px 2px 2px 0;
}

.item_price_priority_about {
    font-weight: bold;
}

.bin_price {
    font-weight: normal;
}

.is_canceled_title{
	margin: 0 0 8px;
}
.auction_item_submit form {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
}

.auction_item_submit input[type="number"] {
	height: 52px;
    width: calc(100% - 28px);
    padding: 4px;
    margin: 0 10px 0 0;
	box-sizing: border-box;
}

.auction_item_submit span{
    font-size: 16px;
}

.is_off_auction p{
	font-size: 13px;
}

@media screen and (max-width:580px) {

	/*画面サイズ580px以下*/
	.review_average {
		flex-wrap: wrap;
	}

	.review_average_score {
		flex-wrap: wrap;
		margin: 0 0 16px;
	}
}

/* オークション - 入札確認 */
.auction_bid_wrap {
    display: flex;
	justify-content: space-between;
}

.auction_bid_wrap_itemName {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 16px;
    padding: 0 16px 0 0;
}


.auction_bid_wrap_itemImage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.auction_bid_about {
    width: 50%;
}

.auction_bid_price {
    width: 50%;
    max-width: calc(100% - 270px);
    padding: 0 0 0 16px;
    margin: 0 0 0 16px;
    box-sizing: border-box;
}

.auction_bid_price dl dt:first-child {
    margin: 0;
}

.auction_bid_price dt {
    margin: 16px 0 0;
}

.auction_bid_price dd {
    text-align: right;
    border-bottom: 1px solid #ccc;
    padding: 0 0 16px 0;
    font-size: 24px;
}

.auction_bid_comp_btn {
    text-align: center;
    margin: 0 auto 24px;
    max-width: 550px;
    height: 52px;
    background:var(--btn-main-bg);
    border-radius: 25px;
}

.auction_bid_comp_btn a {
    width: 100%;
    color: var(--btn-main-color);
    font-weight: bold;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.auction_bid_price dd span {
    font-size: 14px;
}

.auction_bid_price_bid_price {
    font-weight: bold;
    margin: 0 0 16px 0;
}

.auction_bid_price_info {
    font-weight: bold;
    margin: 0 0 24px;
}

.auction_bid_about_back a {
    color: var(--color-link);
}

@media screen and (max-width:580px){
	.auction_bid_wrap {
        display: block;
    }
    .auction_bid_price,
    .auction_bid_about {
        width: 100%;
    }
    .auction_bid_wrap_itemImage{
        margin: 0 auto 40px;
    }
    .auction_bid_price {
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin: 0 0 64px;
    }
    .auction_bid_about_back {
        text-align: center;
        margin: 0 0 40px;
    }
}

/*オークション - 入札完了*/
.auction_bid_comp {
    text-align: center;
}

.auction_bid_comp_text {
    margin: 0 0 40px;
}

.auction_bid_comp_title,
.sended_comp_title {
    font-size: 24px;
    margin: 40px 0;
    padding: 40px 0 0 0;
    text-align: center;
    font-weight: bold;
    position: relative;
}

.auction_bid_comp_title::before,
.sended_comp_title::before{
    content: '';
    position: absolute;
    left: calc(50% - 20px);
    top: 0;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--btn-main-bg);
}

.auction_bid_comp_title::after,
.sended_comp_title::after{
    content: '';
    position: absolute;
    left: calc(50% - 4px);
    top: -2px;
    transform: translateY(-50%) rotate(45deg);
    width: 8px;
    height: 16px;
    border: 1px solid #ffffff;
    border-width: 0px 2px 2px 0;
}

.payment_incomplete {
    line-height: 2;
}

.auction_bid_comp_btn {
    text-align: center;
    margin: 0 auto 24px;
    max-width: 550px;
}

.auction_bid_comp_text span{
	font-weight: bold;
}


/*オークション - 落札完了*/
.auction_successful_img {
    width: 40px;
    height: 40px;
    background: var(--color-point);
    border-radius: 25px;
    margin: 0 auto 40px;
    position: relative;
}

.icon_auction_successful_img-l svg{
position: absolute;
    width: 46px;
    height: 46px;
    right: 66px;
    top: -4px;
}

.icon_auction_successful_img-r svg{
    position: absolute;
    width: 56px;
    height: 56px;
    left: 64px;
    top: -9px;
}

.icon_auc_ful {
    fill: var(--color-point);
}

.auction_successful_img::before {
    content: '';
    position: absolute;
    left: calc(50% - 4px);
    top: 16px;
    transform: translateY(-50%) rotate(45deg);
    width: 8px;
    height: 16px;
    border: 2px solid #ffffff;
    border-width: 0px 2px 2px 0;
}

.auction_successful_title {
    font-size: 2.4rem;
    font-weight: bold;
    margin: 0 0 8px;
    text-align: center;
}

.auction_successful_text {
    text-align: center;
}

.auction_bid_comp_btn {
    text-align: center;
    margin: 0 auto 24px;
    max-width: 550px;
    width: 100%;
    height: 52px;
    margin: 40px auto 0;
    background: var(--btn-main-bg);
    box-shadow: var(--boxshadow-btn-main);
    border-radius: 25px;
    border: none;
}

.auction_bid_comp_btn a {
    font-size: 1.4rem;
    color: var(--btn-main-color);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

/*オークション - ログイン（落札者認証）*/
.auction_login_text{
    margin: 0 0 40px;
}

#auction_login .list {
    width: 100%;
    margin: 0 0 16px;
}

#auction_login tr {
    display: flex;
    flex-direction: column;
    margin: 0 0 24px;
}

#auction_login th {
    width: auto;
    display: inline-flex;
    font-weight: bold;
    margin: 0 0 4px;
}

#auction_login input {
    width: 100%;
}

#auction_login .pw_reisue a {
    display: inline;
    font-size: 1.4rem;
    text-decoration: underline;
}

/*落札者情報入力*/
#regi_auction .goto_cart .goto_cart_next{
    margin: 0;
}
#regi_auction_checkout .checkout_cartConfirm_userinfo_contentsList_title,
#regi_auction_checkout .list_content {
    display: flex;
    align-items: center;
}
#regi_auction_checkout .checkout_cartConfirm_userinfo_contentsList_title{
    margin: 0;
}


#regi_auction_checkout .checkout_cartConfirm_main_wrap {
    border: 1px solid var(--border-color-gray-light);
    margin: 0 0 56px;
}
#regi_auction_checkout .checkout_cartConfirm_main_wrap_contents {
    padding: 16px 0;
}

#regi_auction_checkout .checkout_cartConfirm_main_wrap_total,
#regi_auction_checkout .checkout_cartConfirm_main_wrap_option {
    margin: 0;
    padding: 24px 0;
}

#regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_name {
    width: 50%;
    padding: 0px 8px 0 0;
    display: flex;
    align-items: center;
    box-sizing: border-box;
}

#regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card {
    width: 50%;
    justify-content: space-between;
}

#regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_orde {
    width: 20%;
    padding: 8px;
    text-align: center;
}

#regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_price {
    width: 20%;
    padding: 0;
    text-align: right;
}

#regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_subtotal {
    width: 40%;
    text-align: end;
}

@media screen and (max-width:899px){
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents{
        display: block;
    }

    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_name {
        width: 100%;
        padding: 0;
        display: block;
    }

    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_name,
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card {
        justify-content: space-between;
    }

    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card{
        width: 100%;
    }

    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_orde {
        width: auto;
        padding: 8px 0;
        text-align: center;
    }
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_subtotal{
        width: auto;
    }
}

@media screen and (max-width:750px){
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_name {
        width: 100%;
        margin: 0 0 16px;
        padding: 0;
    }
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card{
        width: 50%;
        justify-content: end;
    }
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_orde {
        width: auto;
        padding: 0;
    }
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_contents_card_orde{
        padding: 8px 0;
    }
}

@media screen and (max-width:599px){
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_option,
    #regi_auction_checkout .checkout_cartConfirm_main_wrap_total{
        padding: 16px 0;
    }
    .checkout_cartConfirm_main_wrap_contents_card_subtotal {
        width: auto;
    }
}

/*auction共通*/
#auction_bid .errormessage,
#auction_login .errormessage{
    max-width: 100%;
    width: 100%;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/*オークション - 落札者情報完了*/
.content_message p {
    margin: 0 0 24px;
}
/* ▼ここから追記：minimum slider ショップ名のスタイル */
.minimum_slider .slider-title {
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    font-size: 32px;
    font-weight: 600;
    color: #111;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
}
/* ▲ここまで追記 */
/* 親要素が #header または header_main などの場合に適用 */
#header, .header_main {
  position: relative;    /* 親要素に relative を付けると中央寄せが安定 */
  width: 100%;           /* 親要素幅を確保 */
  text-align: center;    /* 中央揃え */
}

/* ロゴ自体 */
#logo {
  display: inline-block; /* 親の text-align:center に対応 */
}

/* ロゴ画像 */
#logo img {
  display: block;        /* インライン要素のずれ防止 */
  margin: 0 auto;        /* 画像自身も中央 */
  max-width: 300px;      /* サイズ調整は任意 */
  height: auto;
}
/* ===============================
   商品詳細ページ：メイン画像＆ギャラリー
================================= */

/* メイン画像（サムネイルではない） */
.item_detail_img,
.item_detail_gallery > .gallery {
    display: flex;
    align-items: center;       /* 縦中央 */
    justify-content: center;   /* 横中央 */
    overflow: hidden;
    width: 100%;
    max-width: 900px;
    height: auto;
    margin: 0 auto 24px;
}

/* メイン画像だけに適用（サムネイルは除外） */
.item_detail_img img,
.item_detail_gallery > .gallery img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    cursor: pointer;
}

/* ===============================
   商品一覧ページ：カード画像
================================= */
/* 商品カード全体の幅（4列に調整） */
.itemlist_main_card_item {
    width: calc(25% - 6px);  /* 4列分の幅に調整 */
    margin: 0 1px 10px 1px;  /* 余白を最小限に */
    box-sizing: border-box;
}

/* 商品画像を正方形に揃える */
.itemlist_main_cardItem_image {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.itemlist_main_cardItem_image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}



/* ===============================
   ページ全体の幅調整
================================= */
.itemlist_page,
.itemlist_main,
.itemlist_main_card_wrapper,
.itemlist_main_card,
.container,
.shopping-content {
    max-width: 100%;
    width: 100%;
    margin: 0;
    padding: 0 10px;
    box-sizing: border-box;
}


/* ===== レスポンシブ対応 ===== */

/* タブレット：4列 */
@media screen and (max-width: 768px) {
  .itemlist_main_card_item {
    width: calc(100% / 4) !important;
  }
}

/* スマホ：3列 */
@media screen and (max-width: 480px) {
  .itemlist_main_card_item {
    width: calc(100% / 3) !important;
  }

}
/* 商品一覧のコンテナ */
.itemlist_page {
    width: 100%;
    max-width: 1200px; /* 必要なら上限幅を設定 */
    margin: 0 auto;
    padding: 0 40px; /* ←左右に少し余白を追加 */
}

/* 商品グリッド */
.itemlist {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
}

/* 商品画像を正方形で揃える */
  width: 100%;          /* 幅に合わせる */
    height: auto;         /* 高さは自動で縦横比維持 */
    object-fit: contain;  /* 切り抜かず枠内に収める */
}

/* スマホ用レスポンシブ */
@media (max-width: 768px) {
    .itemlist {
        grid-template-columns: repeat(3, 1fr);
    }
.itemlist_main_card {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 20px !important; /* カード間の隙間 */
  padding: 0 30px !important; /* ← 左右に30pxずつ余白 */
  margin: 0 auto !important;
  box-sizing: border-box;
}
.itemlist_headerWrap h3 {
  font-size: 32px !important;
  font-weight: bold !important;
}
/* TOPヘッダーのショップ名を消す */
header h1,
header h1 a {
  display: none !important;
}
body:not(.toppage) a .icon_cart {
  position: relative !important;
  top: 20px !important;   /* 数字を調整してください */
  display: inline-block !important;
}
.item_soldout_label_text {
    display: none !important;
}
.item_soldout_label_text {
    display: none !important;
}
.header_wrap .cartcheck .icon_cart {
    position: absolute;  /* 親のpositionを無視 */
    top: 5px;
    right: 15px;
    width: 40px;
    height: 40px;   
}
.header_wrap .cartcheck .icon_cart svg {
    width: 28px;   /* サーチアイコンと同じサイズに調整 */
    height: 28px;
}

.item_detail_wrap_content_price div.item_soldout_label_text {
    display: none !important;
}
.itemlist_main_cardItem_detail_price {
    display: flex;        /* 価格とコメントを横並び */
    align-items: center;  /* 高さを揃える */
    gap: 8px;             /* 価格とコメントの間隔 */
    min-height: 44px;     /* 既存テンプレートに合わせる */
}

.itemlist_main_cardItem_detail_price .price {
    font-weight: bold;
    font-size: 1.6rem;    /* 既存の価格サイズ */
    color: var(--color-price);
/* 親ヘッダーの基本設定 */
.header_main {
  display: flex;
  align-items: center;   /* 子要素を縦中央に揃える */
  height: 60px;          /* ヘッダーの高さ固定 */
  padding: 0 10px;
  background: #fff;      /* 必要に応じて背景色 */
}

/* MENUラベルの調整 */
.category-label {
  font-weight: bold;
  margin: 0 15px 0 0;    /* 右に余白、上下マージンは無し */
  line-height: 60px;     /* 高さに合わせて文字を縦中央 */
  height: 60px;
  display: flex;
  align-items: center;   /* flexで縦中央 */
  user-select: none;     /* 文字選択防止(お好みで) */
}

/* 右のボタンエリア */
.header_btn {
  display: flex;
  align-items: center;
  gap: 15px;             /* アイコン間の余白 */
  margin-left: auto;     /* 右寄せ */
  height: 60px;
}

/* 検索ボタンとカートボタンの共通設定 */
.serach_btn,
.cartcheck {
  height: 40px;
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative; /* 必要に応じて */
}

/* 検索アイコン位置（右寄り修正済み） */
span.icon_search {
    position: absolute;
    top: 50%;
    right: 5px !important; /* ← 他CSSより優先して右位置を固定 */
    transform: translateY(-50%);
    z-index: 3;
}

/* カートアイコン（他のページ用） */
.header_wrap .cartcheck {
    position: absolute;
    top: 0;
    right: 100px;
}

/* SVGサイズはそのままOK */
.icon_search svg,
.icon_cart svg {
  width: 24px;
  height: 24px;
  display: block;
}

.soldout-button {
  color: red !important;       /* ←強制的に赤に */
  font-weight: bold !important;
  font-size: 1.2em !important;
}
.slick-image-prev::before,
.slick-image-next::before {
    content: "";
    position: absolute;
    width: 12px;      /* サイズアップ */
    height: 12px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg); /* 中央に配置し回転 */
    border-top: 3px solid red;      /* 色を赤にして目立たせる */
    border-right: 3px solid red;    /* 太さアップ */
}
.slick-prev,
.slick-next {
    font-size: 30px;          /* 矢印サイズ */
    color: black;             /* 矢印色 */
    line-height: 1;
    opacity: 1;               /* 透明じゃないように */
    z-index: 10;
}

.slick-prev::before {
    content: '‹';             /* デフォルトの左矢印 */
}

.slick-next::before {
    content: '›';             /* デフォルトの右矢印 */
}
/* ============================ トップページ アイコン横並び調整 ============================ */

/* 既存の絶対位置・transformを無効化 */
.cartcheck,
.serach_btn,
span.icon_search {
    position: relative;   /* absoluteを無効化 */
    top: auto;            /* 上下位置リセット */
    right: auto;          /* 右位置リセット */
    transform: none;      /* translateY無効化 */
}

/* 親コンテナをフレックスにして横並び */
.header_btn {
    display: flex !important;
    align-items: center;
    gap: 10px;           /* アイコン間の余白 */
    margin-left: auto;   /* 右端寄せ */
    height: 60px;        /* 必要に応じて調整 */
}

/* アイコンサイズを統一 */
.serach_btn,
.cartcheck {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

/* 中のSVGサイズも統一 */
.serach_btn svg,
.cartcheck svg {
    width: 24px;
    height: 24px;
}
/* SOLD OUT表示のスタイルを確実に適用 */
/* FC2の元のクラス名に上書き */
.item-status-out {
    color: red !important;       /* 赤文字 */
    text-align: right !important; /* 右寄せ */
    font-weight: bold !important; /* 太字 */
    font-size: 0.8em !important;  /* 文字サイズを小さく */
}

/* 在庫有り表示のスタイルを確実に適用 */
/* FC2の元のクラス名に上書き */
.item-status-present {
    text-align: right !important; /* 親要素を右寄せ */
}

.item-status-present .stock-present-message {
    color: red !important;       /* 赤文字 */
    font-weight: bold !important;
    font-size: 0.8em !important;  /* 文字サイズを小さく */
}
/* 【最終リセット】すべての位置指定、変形を無効化 */
body .cartcheck,
body .header_wrap .cartcheck,
body .header_subpage_wrap .cartcheck {
    /* 必須：位置指定をフローに戻す */
    position: static !important;
    /* 位置プロパティと変形を解除 */
    top: auto !important;
    right: auto !important;
    transform: none !important;
    /* メニューアイコンとの間に隙間を作る */
    margin-left: 10px !important; 
    /* Z-INDEXを解除 */
    z-index: auto !important;
    /* サイズを再定義 */
    width: 40px !important;
    height: 40px !important;
}

/* メインコンテナのFlexbox設定の確認（念のため） */
.header_main {
    display: flex !important;
    align-items: center !important; 
}
/* 【ハンバーガーアイコン表示の復元】インラインスタイルで失われた設定を補う */

.drawermenu-btn {
    /* アイコンの枠のサイズを復元 */
    width: 40px !important;
    height: 40px !important;

    /* 内部の線（span）を中央に配置するための設定を復元 */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 以前のCSSで競合していた top/left の絶対位置指定があれば、ここに追加してリセット */
/* 例: */
/*
.header_main .drawermenu-btn {
    position: static !important;
    top: auto !important;
    left: auto !important;
}
.header_main .drawermenu-btn,
.header_subpage .drawermenu-btn {
    /* 以前の absolute を無効化し、Flexboxの流れに戻す */
    position: static !important;
    top: auto !important;
    left: auto !important;

    /* width/heightなどの復元と設定 */
    width: 50px !important;
    height: 40px !important; /* ラベルと合わせるため高さを調整 */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
/* アイコン全体を下に下げる調整 (トップページ・サブページ共通) */
.drawermenu-btn {
    /* Flexboxの中央からさらに下に調整したい場合に使用 */
    /* 値を大きくするほど下に移動します。 */
    margin-top: 0px !important; 
}
/* MENU文字の調整（top: 20px; などの強い指示を調整） */
.menu-label {
    /* インラインスタイル(style="..."属性)から、position: relative; と left: -8px; を削除した前提で調整 */
    
    /* 縦位置の調整: 値をマイナスにするほど上に移動、プラスにするほど下に移動 */
    top: -10px !important; 
    
    /* 横位置の調整: マイナス値で左へ、プラス値で右へ移動 */
    left: -5px !important; 
    
    /* その他のスタイルを保持 */
    position: relative !important; /* 個別に top を使うために必要 */
    white-space: nowrap !important;
}
/* 古い絶対位置のCSSをすべて無効化 */
.header_wrap .cartcheck,
.header_wrap .cartcheck .icon_cart,
body:not(.toppage) a .icon_cart {
    position: static !important; /* 絶対位置を無効化 */
    top: auto !important;
    right: auto !important;
    left: auto !important;
    margin: 0 !important;
}
/* ハンバーガーアイコンも横並びの流れに戻す */
.drawermenu-btn {
    position: static !important;
    top: auto !important;
    left: auto !important;
}
.header_main,
.header_wrap {
    display: flex !important;
    align-items: center !important;
}

