@charset "utf-8";
/* CSS Document */

/********************************************************************/

/* HTMLタグ要素 */

/********************************************************************/

body {
    padding: 0px;
    margin: 0px;
    background-color: #FFFFFF;
    color: #333333;
}

.responsive body,
.responsive select,
.responsive input,
.responsive button,
.responsive textarea,
.responsive button {
	font-family: 'Local Roboto', 'Roboto', 'Local Noto Sans JP', 'Noto Sans JP', sans-serif;
}

.responsive body .inner_global_nav .nav_btn,
.responsive body .inner_global_nav .header_nav_item {
	 letter-spacing: 0;
}

A,
A:link,
A:visited, 
A:hover,
A:active {
    color: #333333;
    text-decoration: none;
    font-weight: bold;
    outline: none;
}

.use_hover A:hover {
    color: #666666;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    margin-bottom: 5px;
}

h1 {
    font-size: 161.6%;
}

h2 {
    font-size: 146.5%;
}

h3 {
    font-size: 131%;
}

h4 {
    font-size: 123.1%;
}

h5 {
    font-size: 116%;
}

h6 {
    font-size: 108%;
}


/********************************************************************/

/* 大外 */

/********************************************************************/

#container {
    font-size: 108%;
}

.single_layout.responsive .fix_center {
	max-width: 1200px;
}

.responsive .has_min_nav .fix_center {
	max-width: 980px;
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
	.ocnk028.responsive.single_layout #container:not(.has_min_nav) :is(.popup_base.fix_center, .popup_base .fix_center),
	.ocnk028.responsive.wide_layout #container:not(.has_min_nav) :is(.popup_base.fix_center, .popup_base .fix_center) {
		width: 100%;
		max-width: 100%;
	}
}


/********************************************************************/

/* トップページコンテンツ間余白 */

/********************************************************************/

.main_box {
    margin-bottom: 50px;
}

.top_page_body .main_box:not(:has(.main_box)) {
	border-bottom: 1px solid #E1DFDF;
}

.top_page_body .main_box:not(.item_box) {
	padding-bottom: 30px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .top_page_body .main_box:not(.item_box) {
        padding-bottom: 60px;
    }
}

.module_box .main_box {
	margin-top: 1px;
    margin-bottom: 1px;
}

.side_box {
    margin-bottom: 50px;
}


/********************************************************************/

/* キャッチフレーズ欄 */

/********************************************************************/

/* キャッチフレーズ */
.responsive .copy {
    max-width: 100%!important;
    text-align: center;
    min-height: 18px;
    padding: 8px;
    font-size: 85%;
    background-color: #EEEEEE;
}

.copy A {
    text-decoration: underline;
}


/********************************************************************/

/* ヘッダー */

/********************************************************************/

#header_wrapper:not(.folding_header, .min_header) {
	background-color: #FFFFFF;
}

#header {
    position: relative;
	background-color: #FFFFFF;
}

.responsive #inner_header {
	padding: 5px 0px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .responsive #inner_header {
		padding: 10px;
		min-height: 67px;
	}
}


/********************************************************************/

/* ショップ名 */

/********************************************************************/

/* ショップ名ロゴ */
.shoplogo {
    padding: 5px 0px;
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
    .shoplogo {
			  padding: 0px;
    }
}

.shoplogo img,
.folding_header .shoplogo img {
	width: 120px;
    max-width: 120px;
}

/* レスポンシブ横幅600px以上指定 */
@media screen and (min-width: 600px) {
    .shoplogo img,
	.folding_header .shoplogo img { 
		width: auto;
		max-width: 150px;
		max-height: 50px;
    }
}

.use_hover .shoplogo A:hover img {
    opacity: 0.8;
}

/* ショップ名テキスト */
.shoptext {
    padding: 5px 0px 5px 5px;
    min-height: 40px;
    margin-right: auto;
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
    .shoptext{
        padding-left: 0px;
    }
}

.shoptext A {
    font-size: 123.1%;
    margin: 0px;
}


/********************************************************************/

/* 文字サイズ */

/********************************************************************/

.font_setting {
    padding: 5px 5px 10px;
    text-align: center;
	font-size: 13px;
}

.header_font_setting .set_font_title {
    color: #000000;
}

/* 文字サイズボタン */
.set_font_normal,
.set_font_large {
    width: 40px;
    height: 28px;
    display: inline-block;
    margin-left: 5px;
    background-color: #E9E9E9;
    border-radius: 5px;
    line-height: 28px;
    text-align: center;
    color: #777777;
    transition: .3s;
}

/* 普通サイズボタン */
.set_font_normal::after {
	content: "普通";
	font-size: 13px;
}

/* 大サイズボタン */
.set_font_large::after {
	content: "大";
	font-size: 17px;
}

/* 文字サイズボタンマウスオーバー、選択中 */
.use_hover .font_setting .set_font_normal:hover,
.use_hover .font_setting .set_font_large:hover,
.font_setting .nav_on {
	background-color: #000000;
}

.use_hover .font_setting .set_font_normal:hover:after,
.use_hover .font_setting .set_font_large:hover:after,
.font_setting .nav_on:after {
    color: #FFFFFF;
}


/********************************************************************/

/* ヘッダーナビ */

/********************************************************************/

/* 各ナビゲーション */
.inner_header_nav .nav_btn {
    color: #666666;    
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .inner_header_nav .nav_btn {
        text-align: left;
    }
}

.inner_header_nav .empty_nav_label .nav_btn {
    text-align: center;
	height: 100%;
}

.header_right .inner_header_nav .nav_btn {
	margin-right: 2px;
}

.use_hover .inner_header_nav .nav_btn:hover {
    background-color: #EEF0F0;
}

.responsive .inner_header_nav .nav_text {
    padding: 0px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive .inner_header_nav .nav_text {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}

.responsive .inner_header_nav .nav_text .nav_label {
	display: block;
	padding-top: 3px;
	font-size: 9px;
	letter-spacing: -.05em;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive .inner_header_nav .nav_text .nav_label {
		font-size: 10px;
		padding-top: 2px;
	}
}

.header_right {
	display: flex;
	align-items: center;
	justify-content: center;
}


/*************************************************************/

/* 検索 */

/*************************************************************/

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.ocnk020.responsive .has_search_bar .search_bar:has(.global_btn .searchinput) .search {
		max-width: 260px;
		padding: 1px 10px 1px 5px;
		background-color: #EEF0F0;
	}
	
	.responsive .has_search_bar .search_bar .search .search_box {
		width: 200px;
	}
	
	.responsive .has_search_bar:has(.h_contact,.h_favorite,.h_help,.h_signout) .search_bar.has_header_right_size2,
	.responsive .has_search_bar .search_bar.has_header_right_size2 {
		right: 160px;
	}
}


/*************************************************************/

/* グローバルナビゲーション */

/*************************************************************/

.global_nav {
	background-color: #FFFFFF;
}

#header_wrapper:not(.folding_header) .inner_global_nav {
	padding-top: 8px;
	padding-bottom: 8px;
	border-top: 1px solid #E1DFDF;
}

/* 各ナビゲーション */
.responsive .inner_global_nav .nav_btn,
.responsive .column6 .inner_global_nav .nav_btn {
	position: relative;
	border-right: none;
	border-bottom: 1px solid #FFFFFF;
	background-color: #FFFFFF;
	color: #000000;
	font-weight: 400;
	text-align: left;
}

.responsive .inner_global_nav > .global_nav_item > .nav_btn,
.responsive .column6 .inner_global_nav > .global_nav_item > .nav_btn {
	text-align: center;
}

.responsive .inner_global_nav .inner_popup_nav .nav_btn,
.responsive .column6 .inner_global_nav .inner_popup_nav .nav_btn {
	text-align: left;
}

.responsive .inner_global_nav .global_nav_item> .nav_btn.nav_on,
.responsive #header_wrapper:not(.folding_header) .inner_global_nav .global_nav_item.nav_on > .nav_btn {
	border-bottom: 1px solid #000000;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.folding_header .inner_global_nav {
		padding-top: 10px;
		border-top: 1px solid #E1DFDF;
	}
	
	.responsive .inner_global_nav A.nav_btn,
	.responsive .column6 .inner_global_nav .nav_btn {
		padding: 10px 15px;
		font-size: 100%;
		font-weight: 400;
	}
	
	.responsive.use_hover .inner_global_nav .nav_btn:hover,
	.responsive .folding_header .inner_global_nav .global_nav_item.nav_on > .nav_btn {
		border-bottom: 1px solid #000000;
	}

	.responsive .large_font .inner_global_nav A.nav_btn {
		font-size: 123.1%;
	}

	.global_nav_item:first-child .nav_btn {
		border-left: none;
	}
	
	.responsive #container .global_nav .global_nav_item.wrapped_item {
		width: auto;
	}
	
	.ocnk028.responsive.wide_layout .inner_global_nav.fix_center,
	.ocnk028.responsive.single_layout #container .inner_global_nav.fix_center {
		max-width: 100%;
		justify-content: center;
	}
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
	.folding_header .inner_global_nav {
		padding: 5px;
		border-top: none;
	}
	
	#header_wrapper:not(.folding_header) .inner_global_nav {
		padding: 5px ;
	}
	
	.ocnk028.responsive.single_layout #container .folding_header .inner_global_nav.fix_center,
	.ocnk028.responsive.wide_layout #container .folding_header .inner_global_nav.fix_center {
		justify-content: flex-start;
	}
	
	#header_wrapper:not(.folding_header) .header_global_nav {
		position: relative;
		left: 200px;
		bottom: 57px;
	}
	
	#header_wrapper:not(.folding_header) .header_global_nav .global_nav {
		position: absolute;
		top: 0px;
		z-index: 99;
	    border-top: none;
	}
	
	#header_wrapper:not(.folding_header) #header:has(.header_nav_item:not(.empty_nav_label)) + .header_global_nav .global_nav {
	    top: -5px;	
	}
	
	.large_font #header_wrapper:not(.folding_header) .header_global_nav .global_nav {
		top: -5px;
	}
	
	.large_font #header_wrapper:not(.folding_header) #header:has(.header_nav_item:not(.empty_nav_label)) + .header_global_nav .global_nav {
	    top: -10px;	
	}
	
	.ocnk038 #header_wrapper:not(.folding_header):has(.left_menu_opener_box) .header_global_nav {
		left: 250px;
	}

	#header_wrapper:not(.folding_header) .inner_global_nav {
		border-top: none;
	}
}


/********************************************************************/

/* 開閉ナビゲーション */

/********************************************************************/

.inner_popup_nav_area,
.inner_popup_menu_area {
	padding: 15px 10px;
    background-color: #FFFFFF;
    color: #000000;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.inner_popup_nav_area,
    .inner_popup_menu_area {
		padding: 20px;
    }
}

.upper_popup_nav,
.lower_popup_nav {
	padding: 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.upper_popup_nav,
	.lower_popup_nav {
		padding: 0px 10px;
	}
}

.popup_sub_title {
	padding-bottom: 20px;
	font-size: 123.1%;
	font-weight: 700;
}

/* 各ナビゲーション */
.responsive .inner_popup_nav .nav_btn,
.responsive .column6 .inner_popup_nav .nav_btn {
    background-color: #FFFFFF;
    border-bottom: 1px solid #E1DFDF;
	padding: 10px 10px 10px 25px;
    font-weight: 400;
}

.responsive.use_hover .inner_popup_nav .nav_btn:hover {
	background-color: #F5F5F5;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .responsive .inner_popup_nav .nav_btn,
    .responsive .column6 .inner_popup_nav .nav_btn {
		margin: 5px 10px;
    }
	
	.responsive.use_hover .inner_popup_nav .nav_btn:hover {
		border-bottom: 1px solid #E1DFDF;
	}
}

.inner_custom_nav_popup.custom_space {
	padding: 15px 10px;
}

/* 開閉ナビゲーション閉じるボタン */
.nav_close_box .nav_close {
    background-color: #F9F9F9;
}

.popup_base .close_btn_box {
	top: 25px;
}

.popup_base .popup_nav_area .nav_close_box .nav_close {
	margin-top: 20px;
	padding: 5px;
	line-height: 1;
}

.use_hover .nav_close_box .nav_close:hover {
    background-color: #EEF0F0;
}

.nav_close_box .fa-times {
    font-size: 20px;
}


/********************************************************************/

/* メインナビゲーション */

/********************************************************************/

/* 各ナビゲーション */
.inner_side_nav .nav_btn,
.inner_main_nav .nav_btn {
	margin-bottom: 5px;
	padding: 10px 10px 10px 25px;
    background-color: #EEF0F0;
    color: #000000;
}

.use_hover .inner_side_nav .nav_btn:hover ,
.use_hover .inner_main_nav .nav_btn:hover {
	background-color: #E8E8E8;
    color: #333333;
}

/* フリーページナビゲーション背景 */
.freepage_nav .inner_freepage_nav .nav_btn {
    background-color: #EEF0F0;
    color: #000000;
}

.use_hover .freepage_nav .inner_freepage_nav .nav_btn:hover {
    background-color: #E8E8E8;
    color: #333333;
}


/********************************************************************/

/* カテゴリ、特集ナビゲーション */

/********************************************************************/

.itemlist_nav {
    margin-top: 15px;
}

/* 各ナビゲーション */
.inner_itemlist_nav .nav_btn {
    background-color: #FFFFFF;
    border-bottom: 1px solid #E1DFDF;
	padding: 15px 10px 15px 25px;
    color: #000000;
    font-weight: 400;
}

.side_sub_menu_hover .inner_itemlist_nav .has_sub_menu > .nav_btn:not(.has_image_nav_btn),
.inner_itemlist_nav.toggle_menu_list .has_sub_menu > .nav_btn:not(.has_image_nav_btn) {
	padding-left: 10px;
	padding-right: 25px;
}

.toggle_menu_list .itemlist_nav_item.has_sub_menu .nav_btn.close_sub_menu_link,
.side_sub_menu_hover .side_itemlist_nav .itemlist_nav_item.has_sub_menu .nav_btn.close_sub_menu_link {
    background-color: #EEF0F0;
}

.use_hover .inner_itemlist_nav .nav_btn:hover {
    background-color: #EEF0F0;
    color: #000000;
}


/********************************************************************/

/* サイドメニュー */

/********************************************************************/

/* サイドメニュー枠 */
.open_side_col .side_container {
    background-color: #FFFFFF;
}

.side_itemlist_nav .itemlist_nav_item {
	margin: 0px;
}

.side_itemlist_nav .itemlist_nav_item.has_sub_menu {
	margin: 15px 0px;
}

.side_itemlist_nav .toggle_menu_list .itemlist_nav_item.has_sub_menu,
.side_sub_menu_hover .side_itemlist_nav .itemlist_nav_item.has_sub_menu {
	margin: 0px;
}

/* サイドメニュアイコン */
.right_side_nav_icon {
	font-size: 14px;
}

.nav_btn .fa-chevron-down.right_side_nav_icon {
	right: 12px;
}

.nav_btn .fa-chevron-right.right_side_nav_icon {
	left: 10px;
	right: auto;
}

.title_toggle_link .right_side_nav_icon {
	right: 12px;
}

/* サイドカテゴリ一覧 */
.side_itemlist_nav {
    padding: 0px 1px;
}

/* サブカテゴリ　第二階層 */
.side_itemlist_nav .sub_menu_link {
    padding: 10px 10px 10px 24px;
}

.side_box:not(:where(.side_sub_menu_hover)) .side_itemlist_nav .sub_menu_link {
	background-color: transparent;
	border: none;
	margin-left: 5px;
	padding: 8px 10px 8px 25px;
}

.side_box:not(.side_sub_menu_hover) .side_itemlist_nav .sub_menu_link_list {
    margin-top: 8px;
	margin-bottom: 8px;
}

/* サブカテゴリ背景 */
.side_itemlist_nav .sub_menu_link {
    background-color: #F9F9F9;
    border-top: none;
    border-bottom: 1px solid #E1DFDF;
	font-weight: 400;
}

/* マウスオーバーでサブカテゴリを開く */
/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.side_sub_menu_hover .sub_menu_link_list {
		background-color: #EEF0F0;
		padding: 15px;
		top: 0px;
	}
}
	
.side_sub_menu_hover .sub_menu_link_list .sub_menu_link {
    background-color: #FFFFFF;
}

.use_hover .side_sub_menu_hover .sub_menu_link_list .sub_menu_link:hover {
    background-color: #F9F9F9;
}

/* サイドメニューを開くボタン */
.use_side_menu .menu_opener_box, .use_side_menu .h_side_menu_opener {
    display: flex;
    align-items: center;
}


/********************************************************************/

/* フッターナビゲーション */

/********************************************************************/

.footer_nav {
    background-color: #EEF0F0;
}

.responsive .footer_nav {
	padding-top: 30px;
}

/* 各ナビゲーション */
.footer_nav_item .nav_btn {
    border-bottom: 1px solid #E0DFE3;
	padding: 10px 10px 10px 25px;
}

.use_hover .footer_area .nav_btn:hover {
    border-bottom: 1px solid #666666;
}


/********************************************************************/

/* タイトル */

/********************************************************************/

.page_title h1,
.page_title h2,
.main_box h2 {
    background-color: transparent;
}

.page_title h1 .title_text,
.page_title h2 .title_text,
.main_box h2 .title_text {
    display: inline-block;
	position: relative;
	z-index: 1;	
}

.page_title h1.detail_page_title .title_text {
    padding-left: 0px;
	padding-right: 0px;	
}

.lower_link_box .main_box .section_title h2 .title_text {
    display: inline;
	background-color: transparent;
	padding: 0px;
}

.side_box h2,
.main_box h2 {
    padding: 10px;
    margin-bottom: 10px;
    color: #000000;
    font-weight: 600;
}

.side_box h2 {
	background-color: #8B9191;
	color: #FFFFFF;
	font-size: 93%;
}

.lower_link_box .main_box .section_title h2 {
	background-color: #EEF0F0;
	padding: 10px;
	margin-top: 0px;
	margin-bottom: 0px;
	text-align: left;
	font-size: 123.1%;
}

.main_desc {
    margin-bottom: 10px;
}

.main_desc li {
    text-align: left;
}


/********************************************************************/

/* 第二階層タイトル */

/********************************************************************/

/* 第二階層各ページタイトル */
.page_box .page_title h1,
.page_box .page_title h2,
.page_box .recently .section_title h2,
.page_box .use_emphasis_title .section_title h2 {
    padding: 10px;
    margin-bottom: 10px;
	color: #000000;
}

.has_min_nav .page_title h2 {
	text-align: center;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.has_min_nav .page_title h2 {
		margin-top: 20px;
		margin-bottom: 20px;
	}
}

/* 商品詳細ページタイトル */
.itemdetail .page_title h1 {
    background-color: transparent;
	text-align: left;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.has_left_side_menu:not(:has(.hidden_specified_side_menu)) .itemdetail .page_title h1 {
		padding-left: 0px;;
	}
}

/* 記事ページタイトル */
.pwhatnew .page_title h1,
.pdiary .page_title h1 {
    margin-bottom: 0px;
}


/********************************************************************/

/* 第二階層サブタイトル */

/********************************************************************/

/* 各ページサブタイトル */
.page_box .section_title h2,
.page_box .section_title h3 {
    border-bottom: 1px solid #E1DFDF;
    padding: 10px;
    color: #000000;
}

.page_box .recently .section_title h2 {
	border: none;
}

.page_box .use_emphasis_title .section_title h2 {
    background-color: transparent;
	padding: 10px 0px;	
}

.page_box.shoppingcart .section_title h3,
.page_box.mypage .section_title h3,
.page_box.help .section_title h3,
.page_box.recipient_list .section_title h3,
.page_box.mypage_recipient_form .section_title h3 {
    background-color: #EEF0F0;
    border: none;
    border-radius: 0;
    padding: 10px;
	margin-bottom: 10px;
}

.page_box .contents_box .page_title_right_edge h3, 
.page_box .contents_box .section_title_right_edge h3 {
    padding-right: 100px;
}

.page_box #cart_preview .section_title h3 {
    background-color: #EEF0F0;
    border: none;
    border-radius: 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.page_box.shoppingcart .section_title h3,
	.page_box.help .section_title h3,
	.page_box #cart_preview .section_title h3,
	.page_box.recipient_list .section_title h3,
	.page_box.mypage_recipient_form .section_title h3 {
		padding: 12px;
	}
}

.page_box .help_contents .section_title h4 {
    margin-top: 10px;
}

.page_box .section_title h4 {
    padding: 10px 5px;
	border-bottom: 1px solid #E1DFDF;
}

.page_box .page_contents .search_result_title h3 {
    margin-top: 10px;
}


/********************************************************************/

/* 第二階層小項目タイトル */

/********************************************************************/

.contents_title {
    padding: 10px;
	background-color: #EEF0F0;
    font-weight: 400;
    font-size: 108%;
    color: #000000;
}

.rules_title {
    font-weight: bold;
}


/********************************************************************/

/* フォームタイトル */

/********************************************************************/

.form_title {
    border-bottom: 1px solid #E1DFDF;
    padding: 10px 3px 5px;
    font-weight: 700;
    font-size: 116%;
    color: #000000;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.shoppingcart_contents #cart_recipient .form_title {
		font-weight: 400;
		background-color: #EEF0F0;
	}
	
	.ocnk009.responsive .shoppingcart_contents .cart_recipient .form_data,
	.ocnk009.responsive .shoppingcart_contents .cart_payment_row,
	.ocnk009.responsive .shoppingcart_contents .form_inner_title {
		border-bottom: 1px solid #E1DFDF;
	}
}

.form_data .form_title.radio_selection_box,
.form_data .form_inner_title.radio_selection_box {
	padding: 10px;
	font-weight: 400;
}

.shoppingcart_contents .form_title {
	font-size: 108%;
}

.shoppingcart_page_body .page_box .form_area .form_title {
	border-bottom: 1px solid #E1DFDF;
}

.form_inner_title {
    border-bottom: 1px solid #E1DFDF;
    font-weight: 400;
    color: #000000;
}


/********************************************************************/

/* タイトル文字サイズ */

/********************************************************************/

.page_title h1,
.page_title h2,
.section_title h1,
.section_title h2 {
    font-size: 131%;
	font-weight: bold;
}

.side_box .section_title h2 {
	font-size: 108%;
	font-weight: 400;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.page_title h1,
    .page_title h2,
    .section_title h1,
    .section_title h2 {
        font-size: 161.6%;
    }
	
	.side_box .section_title h2 {
        font-size: 116%;
    }
}

.page_title h1 .title_text,
.page_title h2 .title_text,
.main_box h2 .title_text {
	font-size: 100%;
}

.recently h2 .title_text {
    font-size: 66%;	
}

/* レスポンシブ横幅375px以上指定 */
@media screen and (min-width: 375px) {
    .recently h2 .title_text {
        font-size: 93%;	
    }
}

.lower_link_box .main_box .section_title h2 .title_text {
    font-size: 100%;	
}

.page_title h3,
.section_title h3 {
    margin: 0px;
    font-size: 108%;
    font-weight: 400;
}

.page_box .section_title h2,
.page_box .section_title h3 {
    margin: 0px 2px;
}

.page_title h4,
.page_title h5,
.page_title h6,
.section_title h4,
.section_title h5,
.section_title h6 {
    margin: 0px;
    font-size: 100%;
    font-weight: bold;
}

.shoppingcart_page_body .section_title h4 {
    margin: 0px;
    font-size: 108%;
}


/********************************************************************/

/* メインコンテンツ */

/********************************************************************/

/********************************************************************/

/* 一覧
・写真のみ表示
・説明付き表示
・商品一覧ページ(写真のみ、説明付き)
・最新情報、店長日記
・ソート
*/

/********************************************************************/


/*--------------------------------------*/

/* 写真のみ表示  */

/*--------------------------------------*/

/* サムネイル写真 */
.layout_photo .list_item_photo {
    padding: 5px 0px;
    text-align: center;
}

/* 一覧枠 */
.itemlist_box .inner_item_data {
    padding: 15px 10px 5px;
}

.layout_photo .list_item_data {
    padding: 8px 1px 5px;
}

/* もっと見る */
.more_item {
    max-width: 150px;
	min-width: max-content;
    border-top: none;
    margin: 40px auto 50px;
    text-align: center;
}

.layout_column_text .more_item {
    margin-top: 30px;
}

.more_item .general_btn {
	background-color: #EEEEEE;
	border: none;
	padding: 10px;
	font-weight: 400;
	display: block;
	border-radius: 50px;
	line-height: 100%;
}

.use_hover .more_item .general_btn:hover {
	border: none;
}

/* 写真のみ文字サイズ */
.layout_photo .item_data_link {
    font-size: 93%;
}

.layout_photo .col2 .item_data_link {
    font-size: 93%;
}


/*--------------------------------------*/

/* 説明付き */

/*--------------------------------------*/

/* リンク */
.layout_column_text .list_item_box,
.layout_text .not_link {
    border-bottom: 1px solid #E1DFDF;
    padding: 15px 5px 15px 10px;
}

.itemlist_box.layout_column_text .list_item_box {
	align-items: flex-start;
}

.itemlist_box.layout_column_text .list_item_link:not(.flex_column) .list_item_data {
	min-height: 100%;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .layout_column_text .list_item_box,
	.layout_text .not_link {
		padding: 15px 0px;
    }
}

.list_item_data p.item_desc {
    color: #000000;
}


/*--------------------------------------*/

/* 商品一覧  */

/*--------------------------------------*/

/* 商品、記事一覧マウスオーバー */
.use_hover .item_list .item_data_link:hover,
.use_hover .item_list .list_item_link:hover {
    opacity: 0.7;
}

/* 商品名 */
.item_name {
    font-weight: 600;
}

.list_item_data p.item_name {
    margin-bottom: 3px;
}

/* 販売価格 */
.price {
    padding: 2px 0px;
    color: #000000;
    font-weight: 700;
}

.price .selling_price,
.price .regular_price {
    padding: 2px 0px;
}

.selling_price .tax_label {
    font-weight: 400;
	margin-left: 1px;
}

/* 通常販売価格 */
.price .regular_price {
    color: #000000;
    font-weight: normal;
    display: block;
}

.item_box .text_layout .regular_price {
    display: inline;
}

/* 希望小売価格、税込価格 */
.item_box .retail_price,
.item_box .tax_incl_price {
	font-size: 93%;
    color: #555555;
    font-weight: normal;
    word-break: normal;
}

.item_box .retail_price {
	margin-top: 5px;
}

.retail_price .price_label:empty {
	display: none;
}

/* 在庫あり */
.stock {
    color: #555555;
    font-size: 90%;
}

/* 在庫僅か */
.lowstock {
    color: #D43B55;
}

/* 在庫なし */
.soldout,
.variation_stock_list .data_table .soldout {
    color: #777777;
}

/* 商品一覧ランキング */
.rankno {
    display: block;
    width: 40px;
    min-width: auto;
    margin: auto;
    background-color: #EEF0F0;
    color: #000000;
    font-size: 10px;
}

.rankno1 {
    background-color: #BBB447;
    color: #FFFFFF;
}

.rankno2 {
    background-color: #A7A7A7;
	color: #FFFFFF;
}

.rankno3 {
    background-color: #B4643A;
	color: #FFFFFF;
}

/* ランキングタブ */
.ocnk016.responsive .ranking_page_body .inner_ranking_navigation {
  margin-bottom: 20px;
}

.ocnk016.responsive .ranking_navigation.anchor_nav_area .nav_btn {
	margin: 2px 3px -1px;
	padding: 10px 8px;
	background-color: #EEEEEE;
	border: 1px solid #EEEEEE;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	color: #B9BDBD;
}

.ocnk016.responsive.use_hover .ranking_navigation.anchor_nav_area .nav_btn:hover {
	background-color: #FFFFFF;
	border: 1px solid #EEEEEE;
	border-bottom: 1px solid #FFFFFF;
}

.ocnk016.responsive .ranking_navigation.anchor_nav_area .nav_btn.nav_on {
	background-color: #FFFFFF;
	border: 1px solid #EEEEEE;
	border-bottom: 1px solid #FFFFFF;
	color: #000000;
}


/*--------------------------------------*/

/* 記事一覧  */

/*--------------------------------------*/

/* タイトル */
.list_subject {
    padding: 5px 0px;
}

/* 日付 */
.date {
    color: #000000;
    font-size: 93%;
    font-weight: normal;
}


/*--------------------------------------*/

/* ソート */

/*--------------------------------------*/

.sort_box {
    padding: 5px;
    margin: 3px;
    border-bottom: 1px solid #E1DFDF;
}

.sort_item .global_btn {
    padding: 5px;
    text-align: center;
}

/* 件数 */
.item_count {
	padding: 10px 10px 0;
    font-size: 93%;
}


/********************************************************************/

/* 写真 */

/********************************************************************/

#photo {
    padding: 0px;
}

#photo .fix_center {
    max-width: 100%;
}

#photo .item_image_box img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

/* レスポンシブ横幅600px以上指定 */
@media screen and (min-width: 600px) {
	.ocnk007.responsive:not(:where(.touch006, .touch008, .touch010)) #photo .item_image_box img {
		height: 400px;
	}
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	#photo .item_image_box img {
		height: 500px;
	}
}

/* レスポンシブ横幅900px以上指定 */
@media screen and (min-width: 900px) {
	.ocnk007.responsive:not(:where(.touch006, .touch008, .touch010)) #photo .item_image_box img {
		height: 500px;
	}
}

/* レスポンシブ横幅1000px以上指定 */
@media screen and (min-width: 1000px) {
	.ocnk007.responsive:not(:where(.touch006, .touch008, .touch010)) #photo .item_image_box img {
		height: 600px;
	}
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
	.ocnk007.responsive.wide_layout:not(:where(.touch006, .touch008, .touch010)) #inner_container {
		max-width: 100%;
	}
	.ocnk007.responsive:not(:where(.touch006, .touch008, .touch010)) #photo .item_image_box img {
		height: 700px;
	}
}

/********************************************************************/

/* スライド */

/********************************************************************/

/* スライド送りボタン */

#photo .slider_controller.lower_slider_controller {
	padding-bottom: 50px;
}

.slider_box .swiper-pagination-bullet,
.swipe_list .pointer span {
    background-color: #DCD9D1;
}

#photo .slider_box .swiper-pagination-bullet,
#photo .swipe_list .pointer span {
    background-color: #DCD9D1;
}

/* 現スライド */
.slider_box .swiper-pagination-bullet-active,
.swipe_list .pointer span.current {
    background-color: #8B9191;
}

#photo .slider_box .swiper-pagination-bullet,
#photo .swipe_list .pointer span,
#photo .slider_box .swiper-pagination-bullet-active,
#photo .swipe_list .pointer span.current {
    border: none;
}

#photo .slider_box .swiper-pagination-bullet-active,
#photo .swipe_list .pointer span.current {
    background-color: #8B9191;
}

/* 前へ、次へアイコン */
.swipe_list .pointer_box span.pointer_prev,
.swipe_list .pointer_box span.pointer_next,
.swiper-button-prev,
.swiper-button-next {
    width: 25px;
    height: 25px;
    background-color: #FFFFFF;
    border-radius: 50%;
    display: inline-block;
    cursor: pointer;
}

.use_hover .swiper-button-prev:hover,
.use_hover .swiper-button-next:hover {
    background-color: #E0DFE3;
}

.use_hover .slider_box .swiper-button-disabled:hover {
    background-color: #EEF0F0;
}

/* 前へアイコン画像 */
.swipe_list .pointer_box span.pointer_prev,
.swiper-button-prev {
    background-image: url(img/icon_prev.png);
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}

/* 次へアイコン画像 */
.swipe_list .pointer_box span.pointer_next,
.swiper-button-next {
    background-image: url(img/icon_next.png);
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}


/********************************************************************/

/* 第二階層 */

/********************************************************************/

.page_box {
    color: #000000;
}

.has_min_nav .inner_page_contents,
.legal_page_body .tablayout_navigation,
.help_page_body .inner_page_contents,
.review_page_body .inner_page_contents {
	padding: 0px 8px;
}

/* 共通説明 */
.page_desc {
    padding: 10px;
}

/* 共通ボックス */
.global_info {
    background-color: #F9F9F9;
    padding: 10px;
}


/********************************************************************/

/* 商品詳細 */

/********************************************************************/

/* 商品情報　各ブロック */
.detail_section,
.detail_block_stock .detail_section {
    border-bottom: 1px solid #E1DFDF;
	padding: 10px;
}

.detail_block_price .detail_section:not(.option_point) {
	padding: 5px;
}

.detail_inner_box.custom_toggle_box,
.custom_toggle_box .detail_inner_box {
	transition: .3s;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.detail_section,
	.detail_block_stock .detail_section {
		padding: 15px;
	}
	
	.detail_block_price .detail_section:not(.option_point) {
		padding: 0px;
	}
}

.detail_section.add_cart {
	border-bottom: none;
	text-align: center;
	margin: 10px 0px;
}

/* 商品情報　商品名 */
.detail_item_data h1,
.detail_item_data .item_name {
	font-size: 131%;
	font-weight: bold;
	padding: 0 10px;
	margin-top: 20px;
	margin-bottom: 10px;
}

.itemdetail .section_title h2 {
	font-size: 116%;
}

.itemdetail .custom_toggle_box .section_title h2 {
	padding: 15px 25px 15px 10px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.detail_item_data h1,
	.detail_item_data .item_name {
		font-size: 146.5%;
		margin-top: 10px;
	}

	.itemdetail .section_title h2 {
		font-size: 131%;
		padding-left: 5px;
	}

	.itemdetail .custom_toggle_box .section_title h2 {
		padding: 10px 5px;
	}
}

/* 商品詳細　価格エリアdivタグ間余白 */
.detail_item_data .section_box {
    margin-bottom: 10px;
}

/* 商品詳細　価格エリア項目間余白 */
.detail_item_data .section_box p {
    margin-bottom: 5px;
}

/* 商品詳細　販売価格 */
.detail_item_data .selling_price {
    font-size: 123.1%;
    word-break: normal;
}

/* 商品詳細　販売価格金額 */
.detail_item_data .selling_price .figure {
    font-weight: bold;
}

/* 商品詳細　通常販売価格 */
.detail_item_data .regular_price {
    font-size: 85%;
}

/* 商品詳細　希望小売価格、税込価格 */
.detail_item_data .retail_price,
.detail_item_data .tax_incl_price {
    color: #666666;
    font-weight: normal;
}

/* 商品詳細　販売価格ラベル */
.detail_item_data .selling_price {
    font-weight: normal;
}

/* 商品詳細　在庫 */
.detail_item_data .stock {
    font-size: 108%;
    font-weight: bold;
}

/* 商品情報　商品説明 */
.item_desc {
	padding: 15px;
    margin: 0px;
}

/* 価格変動注意書き */
.price_desc {
    font-size: 77%;
}

/* 商品仕様 */
.detail_spec_data {
	padding: 10px;
    margin: 0px;
}

/* 他の写真枠 */
.other_item_data {
    margin: 0px;
}

.other_item_data .global_photo {
    text-align: center;
}

/* 他の写真説明 */
.other_photo_desc {
    margin: 0px;
}

/* バリエーション在庫表 */
.variation_stock_list {
    margin-bottom: 5px;
}

.variation_stock_list .stocklist_label {
	  font-size: 93%;
}

.side_box.diary_category_nav_box h2 {
    background-color: transparent;
}

/* バリエーション、オーダーメイド項目間余白 */
.variation_item,
.order_item {
    padding-top: 10px;
    padding-bottom: 10px;
}

/* オーダーメイド項目 */
.order_item {
    border-bottom: 1px solid #E1DFDF;
}

.order_label {
	padding: 5px 0px;
}

.ordermade .bottompos {
    border-bottom: none;
}

/* バリエーション在庫選択中背景 */
.variation_stock_list .data_table .selected_item {
    background-color: #F2F1EC;
    color: #757263;
}

.variation_stock_list .data_table .selected_data {
    background-color: #F2F1EC;
}
	

/*--------------------------------------*/
/* バリエーション選択のポップアップ */

/* ポップアップ枠 */
.popup_variation,
.popup_area {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}

.popup_variation_selection,
.popup_section {
    border-bottom: 1px solid #E1DFDF;
}

/* バリエーション項目ボタン */
.popup_variation_button,
.item_selection_button {
    background-color: #EEF0F0;
    border: 2px solid #CCCCCC;
}

/* 選択中 */
.selected_option .popup_variation_button,
.selected_option .item_selection_button {
    background-color: #F2F1EC;
    border: 2px solid #000000;
    color: #000000;
}

/* 変更、選択してくださいボタン */
.popup_variation_edit_button,
.popup_variation_select_button,
.item_select_operation_button {
    background-color: #F2F1EC;
    color: #757263;
}

.popup_variation_value,
.variation_selection_value,
.item_selection_value {
    color: #000000;
    font-weight: bold;
}

/* 選択済み枠 */
.variation_selection_box .validation_selection_selected_all,
.use_hover .variation_selection_box .validation_selection_selected_all:hover {
	max-width: 100%;
	width: 100%;
    background-color: #F2F1EC;
    color: #757263;
}

.validation_selection_selected_all .variation_selection_msg_text {
    background-color: #8B9191;
    color: #FFFFFF;
}

.popup_variation_title {
	  font-weight: 400;
}


/*--------------------------------------*/
/* バリエーション画像 */

.variation_image {
	  margin-right: 8px;
}


/*--------------------------------------*/
/* サムネイル写真 */

.thumbnail {
    margin-top: 5px;
}

/* サムネイル写真 */
.thumbnail .thumbnail_btn {
    border: 1px solid #FFFFFF;
}

/* サムネイル写真枠サイズ */
.thumbnail_listbox {
    width: 60px;
}


/*************************************************************/

/* レビュー */

/*************************************************************/

/* レビュー件数 */
.item_info .review_number {
    color: #000000;
}

.large_rating_icon .star_empty,
.large_rating_icon .star_full,
.large_rating_icon .star_half,
.medium_rating_icon .star_empty,
.medium_rating_icon .star_full,
.medium_rating_icon .star_half,
.small_rating_icon .star_empty,
.small_rating_icon .star_full,
.small_rating_icon .star_half {
    background-image: none;
}

.star_icon {
    display: inline-block;
    margin-top: 4px;
    font: normal normal normal 14px/1 FontAwesome;
}

.star_full::before {
    content: "\f005";
}

.star_half {
	position: relative;
}

.star_half::before,
.star_half::after {
	position: absolute;
}

.star_half::before {
    content: "\f005";
}

.star_half::after {
    content: "\f089";
}

.star_empty::before {
    content: "\f005";
}

/* 星の大きさ */
.large_rating_icon .star_icon::before,
.large_rating_icon .star_icon::after {
    font-size: 22px;
}

.large_rating_icon .star_icon {
	width: 25px;
    height: 25px;
}

.medium_rating_icon .star_icon::before,
.medium_rating_icon .star_icon::after {
    font-size: 18px;
}

.medium_rating_icon .star_icon {
	width: 20px;
	height: 20px;
}

.small_rating_icon .star_icon::before,
.small_rating_icon .star_icon::after {
    font-size: 14px;
}

/* 星の色 */
.star_icon::before,
.star_half::after {
    color: #FFC607;
}

.review_register_page_body .review_post_stars img[src$="star_full_x2.png"] {
    background-color: #FFC607;
}

.star_icon.star_empty::before,
.star_half::before {
    color: #E0DFE3;
}

.review_register_page_body .review_post_stars img[src$="star_empty_x2.png"] {
    background-color: #E0DFE3;
}

/* 文字の色 */
.rating_point {
    color: #333333;
	line-height: 100%;
}

.large_rating_icon .rating_point {
    font-size: 153.9%;
}

.medium_rating_icon .rating_point {
    font-size: 138.5%;
}

/* 星ポイント */
.rating_point {
    margin-left: 5px;
    color: #333333;
}

/* レビュー数 */
.review_number:not(.no_review) {
    margin-left: 7px;
}

/* グラフ */
.bar_graph {
    background-color: #FFC607;
}

/* 年代 */
.rating_age {
    font-size: 93%;
}

/* 分析レポート内レビュー数 */
.rating_number A {
    font-size: 93%;
}

/* レビュー一覧 */
.review_data {
    background-color: #EEF0F0;
	margin: 20px 0px;
}

.mypagereview_contents .list_item_data .review_data {
    background-color: transparent;
	margin: 5px 0px;
}

.mypagereview_contents .review_data_lower {
    padding: 10px;
	margin: 5px 0px 0px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.review_data {
		margin: 20px 5px 20px;
	}

	.mypagereview_contents .review_data_lower {
		padding: 15px;
	}
}

/* レビュータイトル */
.review_title {
	padding: 8px 0;
    font-size: 123.9%;
    font-weight: bold;
}

.product_review_item .page_title {
    margin-bottom: 30px;
}

.product_review_item .page_title .title_note,
.item_box .page_title .title_note {
	display: block;
	margin-top: 5px;
	font-size: 77%;
}

/* レスポンシブ横幅710px以上指定 */
@media screen and (min-width: 710px) {
	.product_review_item .page_title .title_note,
	.item_box .page_title .title_note {
		font-size: 85%;
	}
}

.itemdetail .review_data .review_title,
.mypagereview_contents .review_data .review_title {
	font-size: 108%;
}

.mypagereview_contents .review_data .review_title {
	padding-bottom: 15px;
}

/* 登録日 */
.review_postdate {
    background-color: #444444;
    color: #FFFFFF;
}

/* レビュワー */
.reviewer_name {
	padding: 15px 15px 0;
	background-color: #FFFFFF;
	color: #555555;
}

/* メモ */
.review_note {
	padding: 15px;
    background-color: #FFFFFF;
}

.detail_page_body .review_note {
    background-color: #FFFFFF;
}

/* ショップオーナー返信 */
.owner_note {
    border-bottom: 1px solid #E1DFDF;
}

/* ショップオーナーヘッダー */
.owner_header {
    font-size: 93%;
	font-weight: 700;
    color: #47ABC5;
}

/* ショップオーナー登録日 */
.owner_postdate {
    display: inline-block;
    margin-left: 5px;
}

/* 参考 */
.review_consult {
	font-size: 85%;
}

/* 参考質問数字 */
.user_number {
    font-size: 123.9%;
    font-weight: bold;
    color: #333333;
}

/* 参考質問ボタン */
.review_vote_btn {
    display: inline-block;
    margin-top: 5px;
	margin-left: 5px;
}

/* 商品一覧レビュー数 */
.item_list .review_number {
    font-size: 85%;
    margin-left: 5px;
}

/* 商品詳細レビュー数 */
.review_list .review_number {
    font-size: 93%;
}

/* 商品詳細レビュー */
.inner_detail_review_area {
    padding: 10px;
}

/* 商品詳細ヘッダー */
.detail_review_header {
    padding-top: 15px;
	padding-bottom: 5px;
}

.detail_review_header .global_btn {
    text-align: center;
}

/* 全て見る */
.more_item .label_suffix {
	margin-top: 3px;
	font-size: 85%;
}

.more_item .label_suffix + .fa {
	vertical-align: middle;
}

/* レビュー一覧 */
.review_item_name {
	font-size: 116%;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.review_item_name {
		font-size: 123.1%;
	}
}

.inner_review_item_data,
.inner_review_list_product_box .add_cart {
	padding: 5px 10px;
}

.inner_review_item_data .large_rating_icon {
	padding: 8px 5px;
}

.product_review_info_area .rating_average,
.rating_average {
	margin: 20px 0px;
}

.inner_rating_average {
	margin: 0px 10px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.product_review_info_area .rating_average,
	.rating_average {
		margin: 0px;
	}

	.inner_rating_average {
		margin: 0px;
	}
}

/* マイページレビュー管理 */
.item_data.review_admin .inner_item_data {
	padding: 20px 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .item_data.review_admin .inner_item_data {
		padding: 30px 0;
    }
}

/* マイページレビュー管理ボタン */
.review_admin .global_btn {
    text-align: center;
}

.item_data.review_admin .inner_item_data .box_both_ends_space {
	padding: 5px 5px 0px;
}

.review_admin .review_item_name {
	margin: 5px 0;
	font-size: 108%;
}

.review_list .delete_box .delete_btn_box {
	top: 10px;
}

.review_post_product_box .review_item_data {
	padding-left: 15px;
}


/********************************************************************/

/* ログイン */

/********************************************************************/

.login_page_body #inner_contents,
.mail_auth_page_body #inner_contents {
	  max-width: 680px;
}

.login_page_body #inner_contents #signin_form,
.mail_auth_page_body #inner_contents #mail_auth_form {
	  padding: 0px 5px;
}

.signin_box .form_data .largesize,
#mail_auth_form .form_data .largesize {
	width: 100%;
	max-width: none;
}

@media screen and (min-width: 840px) {
	.ocnk009.responsive #shoppingcart_page_step1 #signin_form.contents_box,
	.ocnk009.responsive #shoppingcart_page_step1 #cartregister_form.contents_box {
		margin-bottom: 0px;
	}
}

/* ID、PW枠 */
.signin_box .id_box,
.signin_box .pass_box {
    margin: 0px;
}

/* ID、PWタイトル */
.signin_box .id_title,
.signin_box .pass_title {
    margin-bottom: 10px;
    border-bottom: 1px solid #E1DFDF;
    font-size: 116%;
    font-weight: bold;
}

.signin_box .password .global_link {
    font-size: 85%;
}

/* 新規登録枠 */
#register_form {
    padding-top: 20px;
    border-top: 1px solid #E1DFDF;
}


/********************************************************************/

/* カート */

/********************************************************************/

#shoppingcart_page_step1 .visitor:not(:has(#cart_step)) .shoppingcart_contents {
	max-width: 680px;
	margin: auto;
}

#shoppingcart_page_step1 .visitor:not(:has(#cart_step)) .shoppingcart_contents #signin_form,
#shoppingcart_page_step1 .visitor:not(:has(#cart_step)) .shoppingcart_contents #cartregister_form {
	padding: 0px 5px;
}

/* カートの中身各枠 */
.inner_cart_data {
	padding: 0px;
    margin-bottom: 10px;
    background-color: #FFFFFF;
}

/* 各項目枠 */
.cart_section {
    border-top: 1px solid #E1DFDF;
    padding: 10px 0px;
}

/* 区切り線 */
.top_separator {
    border-top: 1px solid #E1DFDF;
}

.bottom_separator {
    border-bottom: 1px solid #E1DFDF;
}

/* 各項目ラベル */
.cart_label {
    font-weight: normal;
}

/* ボタン中央寄せ */
.cart_inner_btn {
    text-align: center;
}

/* 小計、送料 */
.cart_sub_total_price,
.cart_shipping_charge {
    text-align: right;
}

/* 合計 */
.cart_footer {
    text-align: right;
}

.grand_total {
    display: inline-block;
    border-bottom: 2px solid #8B9191;
    margin-bottom: 5px;
}

.grandtotal_price {
    font-size: 153.9%;
}

/* 買い物を続ける */
.continue_shopping {
    text-align: right;
}

/* 送り主、お届け先追加変更ボタン */
.cart_recipient .global_btn {
    text-align: center;
}

/* お届け先名 */
.cart_recipient_title {
    padding: 8px 0px;
    border-bottom: 1px solid #E1DFDF;
	 font-weight: 700;
}

/* ラジオボタン選択の強調表示 */
.cart_payment_row .form_element,
.ocnk009.responsive .shoppingcart_contents .cart_payment_row .form_element {
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.cart_payment_row .form_element,
    .ocnk009.responsive .shoppingcart_contents .cart_payment_row .form_element {
		padding: 10px 20px 20px;
    }
}

.checked_row,
.ocnk009.responsive .shoppingcart_contents .form_area .checked_row > .form_title,
.ocnk009.responsive .shoppingcart_contents .form_inner_area .checked_row > .form_inner_title,
.ocnk009.responsive .shoppingcart_contents #cart_payment .checked_row .form_title,
.ocnk009.responsive .shoppingcart_contents #cart_payment .cart_payment_row.checked_row,
.ocnk009.responsive .shoppingcart_contents .cart_shipping_row.checked_row {
    background-color: #F8F8F8;
}

.form_area .checked_row > .form_title,
.form_inner_area .checked_row > .form_inner_title {
    color: #000000;
	font-weight: 700;
}

.checked_row .global_info {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
    padding: 10px;
}

/* リピータ向け決済機能用 */
.inner_global_info {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}

/* クーポン/ポイント枠 */
.toggle_box .cart_point,
.toggle_box .box_padding,
.toggle_box .cart_point_notice {
    margin: 1px;
}

/* クーポン/ポイント変更時の金額を更新ボタン欄、強調表示背景 */
.notice_box .form_btn_spad {
    background-color: #EFF8FA;
}

A.edit_entered_card_link:link,
A.edit_entered_card_link:active,
A.edit_entered_card_link:visited {
	text-decoration: underline;
}

A.edit_entered_card_link:hover {
	text-decoration: none;
}


/*************************************************************/

/* ステップ表 */

/*************************************************************/

.step_list {
	width: 100%;
    margin: 10px 0px 15px;
    padding: 0px 2px;
}

/* ステップ表 各枠背景 */
.step_data {
    background-color: #EEF0F0;
    border-right: 2px solid #FFFFFF;
    text-align: center;
}

/* ステップ表 左端 */
.step_block:first-child .step_data {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

/* ステップ表 右端 */
.step_block:last-child .step_data {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	border-right: none;
}

/* ステップ表 各枠　現ページ */
.step_check .step_data {
    background-color: #8B9191;
}

/* ステップ表 文字 */
.step_data span {
    color: #666666;
}

/* ステップ表 ステップ数 */
.step_data .step_number {
    font-weight: 400;
	font-size: 9px;
}

/* ステップ表 現ページ文字 */
.step_check .step_data span {
    color: #FFFFFF;
	font-weight: 700;
}


/********************************************************************/

/* 最新情報、店長日記 */

/********************************************************************/

/* 日付 */
.article_date {
    border-bottom: 1px solid #E1DFDF;
    margin-bottom: 10px;
}

.date, .article_date {
    color: #000000;
    font-size: 93%;
    font-weight: normal;
    font-family: 'Roboto', sans-serif;
}

.pwhatnew .article_date,
.pdiary .article_date {
	padding-top: 0px;
}

.format {
    font-size: 77%;
}

/* 記事 */
.ph_article {
	font-size: 108%;
	padding: 15px 10px;
}

/* バックナンバー */
.count_number {
    font-size: 93%;
}


/********************************************************************/

/* ご利用案内 */

/********************************************************************/

/* 上部ページ内リンクのナビゲーション */
.help_navigation.anchor_nav_area {
	padding: 0px 10px;
}

.anchor_nav_area .nav_btn {
    border: 1px solid #EEEEEE;
	font-size: 93%;
}

.use_hover .anchor_nav_area .nav_btn:hover {
    background-color: #EEF0F0;
	border: 1px solid #EEEEEE;
}

/* 各ブロック */
.help_contents .inner_contents_box {
    margin-bottom: 10px;
}

.help_step,
.help_payment {
    padding-bottom: 5px;
}

/* 説明各ブロック */
.help_data {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 93%;
}

/* 推奨環境 */
#spec_contents dt {
    font-weight: bold;
    padding-bottom: 5px;
}

#spec_contents dd {
    background-color: #EEF0F0;
}


/********************************************************************/

/* 特定商取引法 */

/********************************************************************/

/* 各欄枠 */
.contents_desc {
    padding: 10px 5px;
    margin: 5px 0px;
}


/********************************************************************/

/* メールマガジン */

/********************************************************************/

.mailmagazine_page_body #inner_contents,
.mailmagazinestop_page_body #inner_contents {
	max-width: 680px;
}

.mailmagazine_box .form_data .largesize {
	width: 100%;
	max-width: none;
}

/* 登録、解除タイトル */
.mailmagazine_box .mailmagazine_subscribe_title,
.mailmagazine_box .mailmagazine_unsubscribe_title {
    border-bottom: 1px solid #E1DFDF;
    margin-bottom: 10px;
    font-size: 116%;
    font-weight: bold;
}


/********************************************************************/

/* マイページ */

/********************************************************************/

/* ポイント */
.member_contents .point_number {
    font-size: 138.5%;
    font-weight: bold;
    color: #7D7A5C;
}

.member_contents .point_number .point_suffix {
    color: #000000;
}

/* リンク枠 */
.link_box .global_iconleft {
    display: block;
    margin-bottom: 10px;
}

/* 注意書き */
.mypage_note {
    font-size: 93%;
    line-height: 140%;
}

/* マイページ共通　送り主　お届け先 */
.mypage_recipient {
    padding: 5px 0px;
    font-size: 108%;
}

.mypage_contents .link_box .global_link {
	font-weight: 400;
}


/*************************************************************/

/* 購入履歴 */

/*************************************************************/

/* 商品名 */
.history_data_list .item_name {
    font-weight: 400;
    color: #000000;
}


/*************************************************************/

/* 送り主、お届け先 */

/*************************************************************/

/* 住所 */
.recipient_data_list .user_address {
    font-weight: 400;
    color: #000000;
}


/*************************************************************/

/* お気に入り */

/*************************************************************/

/* 登録日、メモ */
.item_registration_date,
.item_memo {
    font-size: 93%;
}

/* 商品説明 */
.favorite_contents .item_desc {
    padding: 8px 3px;
    margin: 10px 0px;
    border-top: 1px solid #E1DFDF;
    border-bottom: 1px solid #E1DFDF;
}

.favorite_contents .price {
	font-size: 93%;
}

/* メモ */
.item_memo_text {
	padding: 10px;
    background-color: #EEF0F0;
    color: #000000;
}


/*************************************************************/

/* 複数選択 */

/*************************************************************/

/* 複数削除 */
.bulk_btn {
    padding-top: 5px;
    padding-bottom: 5px;
}

/* 複数選択 */
.inner_bulk_check_box {
    background-color: #EEF0F0;
}

.layout_column_text .inner_bulk_check_box,
.layout_text .inner_bulk_check_box {
    background-color: #EEF0F0;
}

.bulk_mode .layout_column_text .list_item_box,
.bulk_mode .layout_column_text .not_link,
.bulk_mode .layout_text .not_link {
    border-bottom: none;
}

/* 一括削除時の下部ボタン枠 */
.bulk_mode .fixed_bottom {
    background-color: #EEF0F0;
    border-top: 1px solid #E1DFDF;
}

/* 数量表示バッジ */
.badge {
    background-color: #FF0000;
    font-family: Arial, Helvetica, sans-serif;
    color: #FFFFFF;
}


/*************************************************************/

/* 掲示板 */

/*************************************************************/

/* 記事枠 */
.post_box {
    margin-bottom: 5px;
    border: 1px solid #E0DFE3;
}

/* 記事枠レス */
.post_box_res {
    padding-left: 20px;
}

/* 記事ヘッダー */
.post_box .data_table .cell_header,
.post_box .data_table .cell_data {
    background-color: #E9E9E9;
    font-weight: 400;
	border: none;
}

/* 記事ヘッダー下部余白 */
.post_box .data_table {
    margin-bottom: 5px;
}

/* 記事ヘッダー中央寄せ */
.post_box .res_cell,
.post_box .toggle_cell,
.post_box .replay_cell {
    text-align: center;
}

.post_title,
.post_user,
.post_day,
.post_number {
    padding: 2px 0px;
}

/* 記事タイトル */
.post_title {
    font-weight: bold;
    font-size: 14px;
}

/* 記事ユーザー */
.post_user {
    font-size: 11px;
}

/* 記事投稿日 */
.post_day {
    font-size: 11px;
}

/* 記事No */
.post_number {
    font-size: 13px;
}

/* URL */
.post_url {
    font-size: 13px;
}

/* 記事コメント */
.bbs_comments {
    background-color: #FFFFFF;
}

/* 記事検索 */
.bbs_search.form_data {
    background-color: #F5F5F5;
	  margin-bottom: 10px;
}

/* 検索文字強調 */
.result_emphasis {
    background-color: #FFFF73;
}

/* 検索前に戻る */
.bbs_search .global_link {
    margin-left: 10px;
}

/* 記事開閉 */
#bbs_toggle {
    border-top: 1px solid #E1DFDF;
    border-bottom: 1px solid #E1DFDF;
}

/* 記事投稿欄 */
.bbs_post_form {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}


/*************************************************************/

/* 関連ページ */

/*************************************************************/

/* 内容 */
.link_desc_box {
    border-top: 1px solid #E1DFDF;
}


/*************************************************************/

/* 私が店長です */

/*************************************************************/

/* スタッフ画像 */
.staff_photo,
.pstaff_photo {
    text-align: center;
    margin-top: 10px;
}

/* プロフィール項目 */
.staff_contents dt,
.pstaff_contents dt {
    border-top: 1px solid #E1DFDF;
    font-weight: bold;
}

/* プロフィール内容 */
.staff_contents dd,
.pstaff_contents dd {
    border-top: 1px solid #E1DFDF;
}

.staff_profile_desc {
    background-color: #EEF0F0;
    border: 1px solid #E0DFE3;
}


/********************************************************************/

/* カレンダー */

/********************************************************************/

/* カレンダーヘッダー */
.calendar_data {
    padding: 15px 0px;
}

.cal_month {
    padding-bottom: 15px;
    text-align: center;
}

.cal_month .prev_month,
.cal_month .next_month,
.cal_month .this_month {
    padding: 0px 10px;
}

.cal_month span.prev_month,
.cal_month span.next_month {
    padding: 0px 5px;
    font-weight: bold;
    cursor: pointer;
}

/* 今月 */
.this_month {
    font-size: 123.1%;
    font-weight: bold;
}

.side_col .this_month {
    font-size: 14px;
    padding: 0px;
}

.side_col .next_month,
.side_col .prev_month {
    font-size: 13px;
    padding: 0px;
}

/* カレンダー枠線 */
.calendar_data .data_table th.cell_header,
.calendar_data .data_table td.cell_data {
    border: 1px solid #E0DFE3;
}

/* カレンダー曜日セル */
.calendar_data .cal_day_header {
    font-size: 85%;
}

/* カレンダー各セル */
.calendar_data .data_table .cal_day_cell {
    width: 14%;
    height: 60px;
    vertical-align: top;
}

/* 日曜日 */
.sun .cal_day {
    color: #D43B55;
}

/* 土曜日 */
.sat .cal_day {
    color: #47ABC5;
}

/* 今日 */
.calendar_data .today {
    font-weight: bold;
}

/* イベント一覧 */
.event_list li {
    border-bottom: 1px solid #E1DFDF;
}

/* イベント内容 */
.event_data {
    padding: 10px 0px;
}

/* イベント名 */
.event_name {
    font-weight: bold;
    line-height: normal;
}

/* アイコン画像 */
div.event_icon {
    text-align: center;
}

div.event_icon img {
    margin: 0px 1px;
}

span.event_icon {
    margin-right: 5px;
}

/* 定休日 */
.calendar_data .holiday,
.holiday_icon {
    background-color: #FFE9EE;
}

.holiday_icon {
    border: 1px solid #E0DFE3;
    display: inline-block;
    width: 15px;
    height: 15px;
}

/* イベント説明 */
.event_desc {
    font-size: 93%;
    padding: 5px;
}

/* 左右カラム */
.side_col .cal_day {
    font-size: 85%;
}

.side_col .data_table th.cell_header,
.side_col .data_table td.cell_data {
	padding: 2px;
}

.side_col .calendar_data .data_table .cal_day_cell {
	height: auto;
}


/********************************************************************/

/* table */

/********************************************************************/

/* thタグ、tdタグ */
.data_table .cell_header,
.data_table_header,
.data_table .cell_data {
    padding: 10px;
    border: 1px solid #E0DFE3;
}

/* thタグ */
.data_table .cell_header,
.data_table_header {
    background-color: #EEF0F0;
    color: #000000;
}

.data_table tbody .cell_header {
    background-color: #F6F7F7;
}

/* tdタグ */
.data_table .cell_data {
    background-color: #FFFFFF;
    color: #000000;
}


/********************************************************************/

/* フォーム */

/********************************************************************/

/* フォーム上部説明 */
.list_icon_circle {
    color: #000000;
}

/* フォーム項目 */
.form_element,
.form_inner_element {
    padding: 10px 3px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.shoppingcart_contents #cart_recipient .form_element {
		padding: 10px;
	}
}

select {
    border: #CCCCCC solid 1px;
}

/* 必須項目 */
.require {
    color: #D43B55;
    font-weight: bold;
}

abbr.require {
    border: none;
    cursor: default;
}

/* 注意書き */
span.cell_note {
    font-size: 85%;
    font-weight: normal;
}

/* メールアドレス欄 */
.confirm_email {
    border: none;
    background-color: #EEF0F0;
}


/********************************************************************/

/* 入力エリア */

/********************************************************************/

/* 標準 */
.form_data .defaultsize {
    width: 170px;
}

/* 特小 */
.form_data .xsmallsize {
    width: 60px;
}

/* 小 */
.form_data .smallsize {
    width: 80px;
}

/* 大 */
.form_data .largesize {
    max-width: 500px;
    width: 97%;
}


/********************************************************************/

/* フォームエラー */

/********************************************************************/

/* 個別エラー表示 */
.form_error {
    border: 5px solid #D43B55;
    border-radius: 5px;
}

/* フォーム上部エラー表示 */
.error_box {
    border: 1px solid #D43B55;
    border-radius: 5px;
}

/* 商品詳細エラー表示 */
.detail_page_body .error_box {
    margin: 10px;
}

/* エラー表示　※赤枠内文字 */
.error_status {
    color: #A71235;
    font-size: 93%;
    padding-left: 5px;
}

/* エラー時入力エリア背景色 */
.page_box .edit_form .error_row input,
.page_box .edit_form .error_row select,
.page_box .edit_form .error_row textarea {
    background-color: #FFE9EE;
}

/* エラーアイコン */
.error_icon .fa {
    background-color: #D43B55;
    box-shadow: 0px 0px 0px 1px #D43B55;
    color: #FFFFFF;
}

/* フォーム上部OK表示 */
.ok_box {
    border: 1px solid #47ABC5;
    border-radius: 5px;
}

/* OK表示 ※緑枠内文字 */
.ok_status {
    color: #47ABC5;
    font-size: 93%;
    padding-left: 5px;
}

/* OK表示アイコン位置調整 */
.ok_status img {
    padding-right: 3px;
}

/* OK時入力エリア背景色 */
.page_box .edit_form .ok_row input,
.page_box .edit_form .ok_row select,
.page_box .edit_form .ok_row textarea,
.page_box .edit_form .error_row .ok_input {
    background-color: #E3F4F9;
}

/* OKアイコン */
.ok_icon .fa {
    background-color: #47ABC5;
    box-shadow: 0px 0px 0px 1px #47ABC5;
    color: #FFFFFF;
}

/* 重要な注意書き色 */
.note_color {
    color: #D43B55;
}


/********************************************************************/

/* アイコン */

/********************************************************************/

/* ヘッダーナビボタン */
.responsive .inner_header_nav .header_nav_item .fa {
    font-size: 22px;
    color: #333333;
    text-align: center;
    position: static;
    margin-right: 0px;
}

.responsive .inner_header_nav .header_nav_item .fa.icon-ocnk-barsla {
	font-size: 25px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive .inner_header_nav .header_nav_item:not(.empty_nav_label) {
		width: 60px;
	}
	
	.responsive .inner_header_nav :is(.h_contact,.h_favorite,.h_help,.h_signout).header_nav_item:not(.empty_nav_label) {
		width: 70px;
	}
	
	.responsive .inner_header_nav :is(.h_contact,.h_favorite,.h_help,.h_signout).header_nav_item:not(.empty_nav_label) .nav_text .nav_label {
		font-size: 9px;
	}
	
	.ocnk038.responsive #container:has(.side_col .has_toggle_menu_list) .inner_header_nav .header_nav_item .nav_text .fa {
		font-size: 22px;
	}
	
	.ocnk038.responsive #container:has(.side_col .has_toggle_menu_list) .inner_header_nav .header_nav_item.empty_nav_label .nav_text .fa.icon-ocnk-barsla {
		font-size: 25px;
	}
}

.responsive .inner_header_nav .empty_nav_label .nav_btn .fa {
    transform: none;
}

/* グローバルナビ */
.inner_global_nav .fa {
    color: #000000;
}

.responsive .inner_global_nav A .fa {
	font-size: 16px;
}

.global_iconleft .fa {
	padding-right: 5px;
}

.itemlist_cartbutton .btn_size_icon .fa, .itemlist_cartbutton .global_iconleft .fa {
	font-size: 16px;
}

/* レスポンシブ横幅500px以上指定 */
@media screen and (min-width: 500px) {
	.global_iconleft .fa {
		padding-right: 8px;
	}

	.itemlist_cartbutton .btn_size_icon .fa, .itemlist_cartbutton .global_iconleft .fa {
		font-size: 18px;
	}
}

.global_iconright .fa {
    padding-left: 5px;
}

/* 検索ボタン */
.fa-search {
    font-family: "ocnkiconf";
}

.fa-search:before {
    content: "\e90f";
	  font-weight: 700;
}

.ocnk020.responsive .search_bar:has(.global_btn .searchinput) .global_btn .searchinput:before {
	content: "\e90f";
	width: 1em;
	display: inline-block;
	font-family: "ocnkiconf";
	font-weight: 700;
}

/* 閉じる、削除ボタン */
.close_btn_box .fa,
.delete_btn_box .fa,
.nav_close_btn .fa {
    color: #000000;
}

.close_btn_box .fa {
	font-size: 18px;
	line-height: 18px;
}

/* フッター下部ボタン */
.fixed_corner_button .fa {
    font-size: 40px;
    color: #555555;
}

.use_hover .fixed_corner_button:hover .fa {
    color: #000000;
}

/* +-開閉ボタン */
.open_icon .fa,
.close_icon .fa {
    color: #000000;
}

.side_sub_menu_hover .has_sub_menu .fa {
    font-size: 14px;
    right: 10px;
}

/* 説明付き一覧表示調整 */
.right_side_list_icon {
    position: absolute;
    right: 5px;
    top: 50%;
    margin-top: -11px;
    font-size: 22px;
}

/* 矢印アイコン */
#container .fa-chevron-right,
#container .fa-chevron-down,
#container .fa-chevron-up {
    color: #8b9191;
}

#container .side_box .section_title .title_toggle_link .fa-chevron-right,
#container .side_box .section_title .title_toggle_link .fa-chevron-down,
#container .side_box .section_title .title_toggle_link .fa-chevron-up {
	color: #EEF0F0;
}

.nav_btn .fa-chevron-right.right_side_nav_icon,
.nav_btn .fa-chevron-down.right_side_nav_icon {
	  font-size: 10px;
	  margin-top: -5px;
}

.fa-chevron-right, .fa-chevron-left, .fa-chevron-down, .fa-times {
    font-family: 'ocnkiconf';
}

.fa-chevron-right:before {
    content: "\e909";
}

.nav_btn.has_image_nav_btn .fa-chevron-right.right_side_nav_icon::before {
    content: "";
}

.fa-chevron-left:before {
	content: "\e90b";
}

.fa-chevron-down:before,
.side_sub_menu_hover .has_sub_menu .fa.fa-chevron-down::before {
    content: "\e90a";
}

.close_sub_menu_link .fa-chevron-down:before,
.toggle_opened .title_toggle_link .fa-chevron-down:before {
    content: "\e908";
}

.fa-times:before {
    content: "\e92d";
}


/********************************************************************/

/* ボタン */

/********************************************************************/

/* アイコンボタン枠 */
.icon_btn {
    padding: 0px 3px;
    border: 1px solid #E0DFE3;
    background-color: #FFFFFF;
    border-radius: 5px;
}

.icon_btn.close_btn_box,
.icon_btn.search_close,
.site_list_dropdown .icon_btn {
	padding: 0 4px 1px;
}

.use_hover .icon_btn:hover {
    border: 1px solid #E0DFE3;
    background-color: #EEF0F0;
}

/* +-開閉ボタン枠 */
.open_icon,
.close_icon {
    border: 1px solid #CCCCCC;
    background-color: #FFFFFF;
}

.use_hover A:hover .open_icon,
.use_hover A:hover .close_icon,
.use_hover abbr:hover .open_icon,
.use_hover abbr:hover .close_icon {
    background-color: #D1D1D1;
}

/* 汎用ボタン */
.general_btn {
    padding: 4px 5px;
    border: solid 1px #E0DFE3;
    background-color: #EEF0F0;
    border-radius: 5px;
    display: inline-block;
    box-shadow: none;
    font-size: 93%;
    line-height: 100%;
}

.global_btn button.general_btn {
	padding: 4px 5px;
}

.use_hover .general_btn:hover {
    border: 1px solid #E0DFE3;
    background-color: #F0F0F0;
}

.standard_btn {
    padding: 10px 20px;
    border: solid 1px #E0DFE3;
    background-color: #F9F9F9;
    border-radius: 5px;
    display: inline-block;
	box-shadow: none;
}

.use_hover .standard_btn:hover {
    border: 1px solid #E0DFE3;
    background-color: #F0F0F0;
}

/* 右端ボタン */
.page_title_right_edge .general_btn,
.section_title_right_edge .general_btn {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
    border-radius: 5px;
    color: #666666;
}

.use_hover .page_title_right_edge .general_btn:hover,
.use_hover .section_title_right_edge .general_btn:hover {
    background-color: #EEF0F0;
    color: #666666;
}

/* 画像リンク */
.use_hover .photo_link:hover {
    opacity: 0.7;
}


/*************************************************************/

/* フォームボタン */

/*************************************************************/

/* フォームボタンマウスオーバー */
.use_hover .global_btn input:hover,
.use_hover button:hover,
.use_hover .global_btn A:hover {
    opacity: 0.7;
}

/* ボタンサイズXXS */
.global_btn .btn_size_xxsmall {
    width: 30px;
    height: 30px;
}

/* ボタンサイズXS */
.global_btn .btn_size_xsmall {
    width: 50px;
    height: 30px;
}

/* ボタンサイズS */
.global_btn .btn_size_small {
    width: 70px;
    height: 30px;
}

/* ボタンサイズM */
.global_btn .btn_size_medium {
    width: 90px;
    height: 30px;
}

.global_btn A.btn_size_xxsmall,
.global_btn A.btn_size_xsmall,
.global_btn A.btn_size_small,
.global_btn A.btn_size_medium,
.global_btn A.btn_size_auto {
    line-height: 30px;
}

/* ボタンサイズL */
.global_btn .btn_size_large {
    width: 130px;
    height: 35px;
}

.global_btn A.btn_size_large {
    line-height: 35px;
}

/* ボタンサイズXL */
.global_btn .btn_size_xlarge {
    width: 180px;
    height: 40px;
    font-size: 116%;
}

.global_btn A.btn_size_xlarge {
    line-height: 40px;
}

/* ボタンサイズXXL */
.global_btn .btn_size_xxlarge {
    width: 281px;
    height: 50px;
    font-size: 123%;
	font-weight: 600;
}

.global_btn A.btn_size_xxlarge {
    line-height: 50px;
}

/* ボタンサイズ横幅auto */
.global_btn .btn_size_auto {
    height: 30px;
    width: auto;
    padding: 0px 20px;
}

/* ボタンサイズ小文字 */
.font_size_small {
    font-size: 77%;
}

/* 縦2段積みボタン */
.under_global_btn {
    display: block;
    margin-top: 30px;
}

/* 商品詳細 */
.add_cart_btn_wrapper {
    width: 100%;
}

.detail_item_data .add_cart_btn_wrapper .is_fixed {
	background-color: #EEF0F0D4;
}

#contents .detail_item_data .add_cart_btn_wrapper .is_fixed .add_cart_btn {
    margin: 15px auto!important;
    max-width: 300px;
}

.form_data, .form_inner_data {
    padding: 5px;
    margin: 0px;
}

/* 下部配置ボタン */
.form_btn {
    text-align: center;
    margin: auto;
    padding: 20px 0;
}

/* 下部ボタン上部注意書き */
.global_bottom_info {
    border-bottom: 1px solid #E1DFDF;
}

/* ログインページ新規登録余白調整 */
#register_form .form_btn {
    padding: 0px;
}

/* Aタグボタン */
.global_btn A {
    font-weight: normal;
}

/* 外部決済ボタン */
.outside_btn_box {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}

/* 楽天決済用 */
.payment_method_desc {
    margin-bottom:10px;
}


/*--------------------------------------*/

/* ボタン色 */

/*--------------------------------------*/
/* 色通常 */
/* フォームボタン全般 */
.btn_color_common {
    background-color: #F9F9F9;
	border: 1px solid #E3E8E8;
    color: #FFFFFF;
}

.btn_color_common,
A.btn_color_common:link,
A.btn_color_common:visited,
A.btn_color_common:hover,
A.btn_color_common:active {
    background-color: #F9F9F9;
	border: 1px solid #E3E8E8;
    background-image: none;
    border-radius: 5px;
    color: #333333;
    font-weight: 400;
    box-shadow: none;
}

.sort_item .btn_color_common,
.sort_item A.btn_color_common:link,
.sort_item A.btn_color_common:visited,
.sort_item A.btn_color_common:hover,
.sort_item A.btn_color_common:active {
    background-color: #8B9191;
	border: none;
    color: #FFFFFF;
}

.use_hover .btn_color_common:hover {
	background-color: #F9F9F9;
    color: #333333;
}

.use_hover .sort_item .btn_color_common:hover {
	background-color: #A2A7A7;
    color: #FFFFFF;
}

/* 色強調 */
.btn_color_emphasis {
    background-color: #8B9191;
    color: #FFFFFF;
}

.btn_color_emphasis,
A.btn_color_emphasis:link,
A.btn_color_emphasis:visited,
A.btn_color_emphasis:hover,
A.btn_color_emphasis:active,
A.btn_color_common.restockinput:link,
A.btn_color_common.restockinput:visited,
A.btn_color_common.restockinput:hover,
A.btn_color_common.restockinput:active {
    background-color: #8B9191;
    background-image: none;
    border-radius: 5px;
    color: #FFFFFF;
    font-weight: 400;
}

.use_hover .btn_color_emphasis:hover {
    color: #FFFFFF;
}


/*************************************************************/

/* パンくずリスト */

/*************************************************************/

.responsive .breadcrumb_area,
.ocnk028.responsive.wide_layout #container #contents .breadcrumb_area,
.ocnk028.responsive.single_layout #container #contents .breadcrumb_area {
	max-width: 100%;
}
	
.responsive .breadcrumb_area {
	background-color: #EEF0F0;
	padding: 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive .breadcrumb_area {
		margin-bottom: 20px;
	}
}
	
.has_min_nav .breadcrumb_area {
	margin-bottom: 0px;
}
	
.breadcrumb_list {
	max-width: 1200px;
	margin: auto;
	padding: 10px;
	font-size: 77%;
}

.breadcrumb_list A {
	text-decoration: underline; 
}
	
.ocnk028.responsive .breadcrumb_list {
	max-width: 1400px;
}
	
.ocnk028.responsive .has_min_nav .breadcrumb_list,
.has_min_nav .breadcrumb_list {
	max-width: 980px;
}


/********************************************************************/

/* ポップアップ */

/********************************************************************/

/* ポップアップの背景 */
.overlay_area .modal_skin {
    background-color: #FFFFFF;
}

.overlay_area .page_box {
	padding: 10px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.overlay_area .page_box {
		padding: 15px;
	}
}


/********************************************************************/

/* ロード、ページャー */

/********************************************************************/

/* 読み込み中アイコン画像 */
.loading,
.initial_loading {
    background: url(img/load_icon.gif);
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}

.entry_box .loading {
    background-image: url(img/load_entry_icon.gif);
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}

/* 一覧ページャー */
.pager {
    margin: 0px 0px 15px;
    text-align: center;
}

#pagerbottom {
	margin: 15px 0px;
	background-color: #EEF0F0;
}

/* 現ページ */
.pager strong {
    min-width: 20px;
    min-height: 20px;
	line-height: 20px;
    padding: 3px;
    margin: 0px 1px;
    border: 1px solid #8B9191;
    background-color: #8B9191;
	border-radius: 5px;
    color:#FFFFFF;
	font-size: 77%;
}

/* 各ページ */
.pager .pager_btn {
    min-width: 20px;
    min-height: 20px;
	line-height: 20px;
    margin: 0px 1px;
    padding: 3px;
    border: 1px solid #EEF0F0;
    background-color: #FFFFFF;
	border-radius: 5px;
    text-decoration: none;
	font-size: 77%;
}

.pager .to_next_page,
.pager .to_prev_page {
	min-width: 50px;
}

.use_hover .pager .pager_btn:hover {
    border: 1px solid #8B9191;
    background-color: #8B9191;
    color: #FFFFFF;
}


/********************************************************************/

/* グローバルサイトリンク */

/********************************************************************/

/* リンク一覧 */
.site_list_dropdown {
    background-color: #FFFFFF;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.4),-5px 5px 10px rgba(0,0,0,0.4);
}

/* 各リンク先 */
.layout_dropdown .site_list_data {
    border-bottom: 1px solid #E1DFDF;
}

/* 各リンク文字 */
.global_site .site_list_dropdown .nav_btn,
#inner_footer .layout_dropdown .site_list_data .nav_btn {
    color: #000000;
}

.use_hover .global_site .site_list_dropdown .nav_btn:hover,
.use_hover #inner_footer .layout_dropdown .site_list_data .nav_btn:hover {
    color: #666666;
    background-color: #EEF0F0;
	border: none;
}

/* リスト表示タイトル */
#inner_footer .layout_dropdown .site_list_title .nav_btn {
    background-image: none;
    background-color: #FFFFFF;
    color: #000000;
	border: none;
}


/********************************************************************/

/* フッター */

/********************************************************************/

/* PCサイトボタン */
.footer_pc_site_box {
    height: 30px;
    padding: 15px 0px 15px 0px;
    position: relative;
    background-color: #EEF0F0;
    box-sizing: content-box;
    text-align: center;
}

.pc_site_btn .pc_site_link {
    width: 80px;
    margin: auto;
    padding: 8px 8px 8px 30px;
    display: inline-block;
    background-image: url(img/icon_pc.png);
    -webkit-background-size: 30px 30px;
    background-size: 30px 30px;
    background-repeat: no-repeat;
    background-position: 5px center;
    background-color: #FFFFFF;
    border: 1px solid #CCCCCC;
    border-radius: 5px;
    box-sizing: content-box;
    font-size: 12px;
    text-align: center;
    color: #000000;
}

.use_hover .pc_site_btn .pc_site_link:hover {
    color: #000000;
    opacity: 0.8;
}

/* 自由記入欄 */
#inner_contents_bottom, #inner_footer_free_top {
    padding: 10px;
}

/* フッター */
.footer_area {
    background-color: #EEF0F0;
}

#footer {
    text-align: center;
	padding: 20px 10px;
}

.footer_upper_link_box .continued_link_box {
    border-left: 1px solid #666666;
}

/* ページトップへ戻るボタン */
.fixed_corner_button {
    width: 45px;
    height: 45px;
    border-radius: 10px;
    background-color: #CCCCCC;
    text-align: center;
}

.move_to_add_cart .corner_covering_item,
.use_hover .move_to_add_cart:hover .corner_covering_item {
    color: #CCCCCC;
}

/* フッター下部バナー */
.footer_banner {
    text-align: center;
}

.footer_banner .banner_box {
    margin: 15px 5px 5px 5px;
}

.use_hover .footer_banner .banner_box A:hover {
    opacity: 0.8;
}


/********************************************************************/

/* Powered by おちゃのこネット
※上記の文言は共用ドメインコースをご利用の場合に表示されます。
必須項目ですので、下記の編集は許可されていません。
・文言の削除
・文字色を薄くする
・文字サイズを小さくする */

#ochanoko {
    padding: 5px;
    text-align: center;
    font-size: 12px;
}

#ochanoko A {
    font-size: 12px;
}

.accessory_color {
    background-color: #EEF0F0;
}

/********************************************************************/

/* ================================================================
   AirKeeper / OCHANOKO-NET complete renewal v2
   Unpublished preview template only. Base: Luxe responsive
   ================================================================ */

:root {
  --ak-navy: #082b5b;
  --ak-deep: #061c3c;
  --ak-blue: #0878cf;
  --ak-aqua: #18a8d8;
  --ak-green: #2d9b78;
  --ak-ink: #13263c;
  --ak-muted: #66788b;
  --ak-cloud: #f3f7fa;
  --ak-ice: #eaf5fb;
  --ak-line: #dce6ed;
  --ak-white: #ffffff;
  --ak-radius: 18px;
  --ak-shadow: 0 18px 50px rgba(8, 43, 91, .10);
  --ak-shadow-soft: 0 10px 30px rgba(8, 43, 91, .07);
}

.responsive *,
.responsive *::before,
.responsive *::after {
  box-sizing: border-box;
}

.responsive body,
.responsive select,
.responsive input,
.responsive button,
.responsive textarea {
  color: var(--ak-ink);
  font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
  font-feature-settings: "palt";
}

.responsive body {
  margin: 0;
  background: var(--ak-white);
  line-height: 1.75;
}

.responsive .fix_center {
  width: min(1160px, calc(100% - 48px));
  max-width: 1160px;
}

.responsive A,
.responsive A:link,
.responsive A:visited,
.responsive A:hover,
.responsive A:active {
  color: inherit;
  text-decoration: none;
}

/* --- Compact single-row desktop header --- */
.responsive #header_wrapper {
  position: relative;
  z-index: 30;
  display: block !important;
  border: 0;
  border-bottom: 1px solid rgba(8, 43, 91, .09);
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 5px 22px rgba(6, 28, 60, .05);
}

.responsive #header_wrapper .copy {
  display: none;
}

.responsive #header,
.responsive #header_area,
.responsive #inner_header {
  min-height: 80px;
}

.responsive #header {
  position: relative;
  z-index: 1;
  background: transparent;
}

.responsive #header_area {
  position: relative;
  display: flex;
  align-items: center;
  padding-top: 8px;
  padding-bottom: 8px;
}

.responsive #inner_header {
  width: 100%;
  align-items: center;
}

.responsive #header .header_left {
  display: none;
}

.responsive #header .header_center {
  position: relative;
  z-index: 6;
  margin: 0 auto 0 0;
}

.responsive #header .shoplogo {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 220px;
  min-width: 220px;
  margin: 0;
}

.responsive #header .shoplogo > a {
  display: block;
  width: 70px;
  height: 52px;
  overflow: hidden;
}

.responsive #header .shoplogo img,
.responsive #header .folding_header .shoplogo img {
  width: 70px !important;
  max-width: none !important;
  height: 52px !important;
  max-height: none !important;
  object-fit: cover;
  object-position: 50% 15%;
}

.responsive #header .shoplogo::after {
  content: "AirKeeper";
  color: var(--ak-navy);
  font-size: 21px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.035em;
}

.responsive #header .header_right {
  position: relative;
  z-index: 6;
}

.responsive .inner_header_nav .nav_btn {
  min-width: 44px;
  min-height: 44px;
  justify-content: center;
  border-radius: 50%;
  color: var(--ak-navy);
  transition: background .2s ease, color .2s ease;
}

.responsive .inner_header_nav .nav_btn:hover {
  color: var(--ak-blue);
  background: var(--ak-cloud);
}

.responsive .header_global_nav {
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  z-index: 5;
  width: min(460px, 38vw) !important;
  height: 80px !important;
  transform: translateX(-50%) !important;
  border: 0 !important;
  background: transparent !important;
}

.responsive .header_global_nav .global_nav,
.responsive .header_global_nav .inner_global_nav {
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
}

.responsive .header_global_nav .inner_global_nav {
  justify-content: center;
  align-items: stretch;
}

.responsive .header_global_nav .inner_global_nav > li {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 100px;
  border: 0 !important;
}

.responsive .header_global_nav .inner_global_nav .nav_btn {
  height: 100%;
  padding: 0 15px;
  color: #31475d;
  background: transparent;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
}

.responsive .header_global_nav .menu_nav_icon {
  display: none;
}

.responsive .header_global_nav .g_search,
.responsive .header_global_nav .g_menu {
  display: none !important;
}

.responsive .use_hover .inner_global_nav .nav_btn:hover {
  color: var(--ak-blue);
  background: transparent;
}

.responsive #header .header_search_bar {
  position: absolute !important;
  top: 17px !important;
  right: 92px !important;
  left: auto !important;
  z-index: 7;
  display: block !important;
  width: 205px !important;
  min-height: 46px !important;
  padding: 0 !important;
  background: transparent !important;
}

.responsive #header .header_search_bar .inner_search_bar {
  width: 100% !important;
  max-width: none !important;
}

.responsive #header .header_search_bar .close_btn_box {
  display: none !important;
}

.responsive .search_bar input[type="search"],
.responsive .search_bar input[type="text"] {
  min-height: 48px;
  border: 1px solid var(--ak-line);
  border-radius: 10px 0 0 10px;
  background: var(--ak-cloud);
}

.responsive .search_bar button {
  min-height: 48px;
  border-color: var(--ak-blue);
  border-radius: 0 10px 10px 0;
  color: #fff;
  background: var(--ak-blue);
}

/* --- Hero: strong but compact --- */
.responsive #photo {
  position: relative;
  overflow: hidden;
  background: #dce9ef;
}

.responsive #photo::after {
  content: "兵庫県姫路市の自社工場から、直接お届け。";
  position: absolute;
  right: 28px;
  bottom: 24px;
  z-index: 4;
  max-width: calc(100% - 56px);
  padding: 10px 17px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 999px;
  color: #fff;
  background: rgba(6, 28, 60, .76);
  backdrop-filter: blur(8px);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .03em;
  pointer-events: none;
}

.responsive #photo .top_image_slide {
  width: 100%;
  max-width: none;
}

.responsive #photo .slider_image_box,
.responsive #photo .item_image_box {
  display: block;
  height: clamp(260px, 27vw, 350px) !important;
  background: #dce9ef;
}

.ocnk007.responsive #photo .item_image_box img.item_image {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* コアレス写真は製品と説明文字が中央に収まる位置を優先 */
.ocnk007.responsive #photo .item_image_box img.item_image[src*="20260303_d150bc"] {
  object-position: center 70% !important;
}

.responsive #photo .swiper-pagination-bullet {
  width: 7px;
  height: 7px;
  border: 1px solid #fff;
  opacity: .75;
  background: transparent;
}

.responsive #photo .swiper-pagination-bullet-active {
  width: 22px;
  border-radius: 99px;
  opacity: 1;
  background: #fff;
}

/* --- Trust strip --- */
.responsive #contents {
  width: 100%;
  max-width: none;
  padding: 0;
  background: #fff;
}

.responsive .top_page_body #contents::before {
  content: "✓ 姫路の自社工場で製造　　✓ メーカー直販　　✓ 法人・大量注文・特注サイズ対応";
  display: block;
  padding: 18px 24px;
  color: var(--ak-navy);
  border-bottom: 1px solid #dce7ed;
  background: linear-gradient(90deg, #edf8fc 0%, #f7fbfd 55%, #edf8fc 100%);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .035em;
  text-align: center;
}

.responsive #inner_contents {
  width: min(1160px, calc(100% - 48px));
  max-width: 1160px;
  margin-inline: auto;
  padding-top: 66px;
  padding-bottom: 88px;
}

.responsive #maincol {
  float: none;
  width: 100%;
  max-width: none;
}

.responsive #left_side_col,
.responsive #right_side_col {
  display: none;
}

.responsive .main_section,
.responsive .main_box {
  margin-bottom: 72px;
}

.responsive .main_box h2,
.responsive .main_box .title,
.responsive .itemlist_box .title {
  margin: 0 0 30px;
  padding: 0;
  border: 0;
  color: var(--ak-deep);
  background: transparent;
  font-size: clamp(28px, 3.2vw, 40px);
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -.04em;
  text-align: left;
}

.responsive .main_box h2 .title_text {
  color: inherit;
  font: inherit;
}

.responsive .more_link,
.responsive .more_btn {
  display: inline-flex;
  min-width: 142px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid #bed0dc;
  border-radius: 999px;
  color: var(--ak-navy);
  background: #fff;
  font-size: 11px;
  font-weight: 900;
  transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.responsive .more_link:hover,
.responsive .more_btn:hover {
  border-color: var(--ak-blue);
  color: #fff;
  background: var(--ak-blue);
}

/* --- Home layout: products first, information second --- */
.responsive .top_page_body #inner_main_container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
}

.responsive .top_page_body .main_new_item_box {
  position: relative;
  order: 1;
  grid-column: 1 / -1;
  margin-bottom: 58px;
}

.responsive .top_page_body .main_new_item_box .main_box {
  margin-bottom: 0 !important;
}

.responsive .top_page_body .main_new_item_box::before {
  content: "STANDARD LINEUP";
  display: block;
  margin-bottom: 8px;
  color: var(--ak-blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .18em;
}

.responsive .top_page_body .main_new_item_box h2 .title_text {
  font-size: 0;
}

.responsive .top_page_body .main_new_item_box h2 .title_text::after {
  content: "AirKeeperを選ぶ";
  font-size: clamp(30px, 3.3vw, 42px);
}

.responsive .top_page_body .main_news_box,
.responsive .top_page_body .main_diary_box {
  align-self: stretch;
  margin: 0 !important;
  padding: 28px 30px 24px;
  border: 1px solid var(--ak-line);
  border-radius: var(--ak-radius);
  background: var(--ak-cloud);
}

.responsive .top_page_body .main_news_box {
  order: 2;
  grid-column: 1;
}

.responsive .top_page_body .main_diary_box {
  order: 3;
  grid-column: 2;
}

.responsive .top_page_body .main_news_box .main_box,
.responsive .top_page_body .main_diary_box .main_box {
  margin: 0 !important;
  padding: 0 !important;
}

.responsive .top_page_body .main_news_box h2,
.responsive .top_page_body .main_diary_box h2 {
  margin-bottom: 17px;
  padding: 0 0 14px;
  border-bottom: 1px solid #cfdce5;
  font-size: 0;
  letter-spacing: 0;
}

.responsive .top_page_body .main_news_box h2::before {
  content: "お知らせ";
  font-size: 22px;
}

.responsive .top_page_body .main_diary_box h2::before {
  content: "工場からの読みもの";
  font-size: 22px;
}

.responsive .top_page_body .main_news_box img,
.responsive .top_page_body .main_diary_box img {
  display: none !important;
}

.responsive .top_page_body .main_news_box ul,
.responsive .top_page_body .main_diary_box ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.responsive .top_page_body .main_news_box li,
.responsive .top_page_body .main_diary_box li {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #d7e2e9 !important;
  background: transparent !important;
}

.responsive .top_page_body .main_news_box li:nth-child(n+4),
.responsive .top_page_body .main_diary_box li:nth-child(n+4) {
  display: none !important;
}

.responsive .top_page_body .main_news_box li a,
.responsive .top_page_body .main_diary_box li a {
  display: grid !important;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 12px;
  width: 100% !important;
  min-height: 0 !important;
  padding: 13px 0 !important;
  color: var(--ak-ink);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.55;
}

.responsive .top_page_body .main_news_box .more_link,
.responsive .top_page_body .main_diary_box .more_link,
.responsive .top_page_body .main_news_box .more_btn,
.responsive .top_page_body .main_diary_box .more_btn {
  min-width: 112px;
  min-height: 36px;
  margin-top: 18px;
  padding-inline: 14px;
  font-size: 9px;
}

.responsive time {
  color: var(--ak-blue);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .03em;
}

.responsive .top_page_body .main_recently_item_box,
.responsive .top_page_body #recently_item,
.responsive .top_page_body .recently_item_box,
.responsive #inner_recently_bottom {
  display: none !important;
}

/* --- Product cards --- */
.responsive .itemlist_box .item_list {
  margin: 0;
}

.responsive .itemlist_box .ajax_response_list,
.responsive .itemlist_box .item_list > ul,
.responsive .itemlist_box ul.item_list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px !important;
  align-items: stretch;
}

.responsive .itemlist_box .list_item_cell,
.responsive .itemlist_box .wrapped_item {
  position: relative;
  width: 100% !important;
  max-width: none !important;
  overflow: hidden;
  border: 1px solid var(--ak-line);
  border-radius: var(--ak-radius);
  background: #fff;
  box-shadow: var(--ak-shadow-soft);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.responsive .itemlist_box .list_item_cell:hover,
.responsive .itemlist_box .wrapped_item:hover {
  z-index: 2;
  transform: translateY(-5px);
  border-color: #bad8e9;
  box-shadow: var(--ak-shadow);
}

.responsive .layout_photo .item_data_link,
.responsive .layout_photo .list_item_link {
  position: relative;
  display: flex !important;
  height: 100%;
  flex-direction: column;
  color: var(--ak-ink);
  background: #fff;
}

.responsive .layout_photo .item_data_link::after,
.responsive .layout_photo .list_item_link::after {
  content: "詳しく見る  →";
  display: block;
  margin: auto 22px 22px;
  padding-top: 13px;
  border-top: 1px solid var(--ak-line);
  color: var(--ak-blue);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .03em;
}

.responsive .layout_photo .list_item_photo,
.responsive .layout_photo .item_photo,
.responsive .layout_photo .item_image_box {
  overflow: hidden;
  min-height: 260px;
  background: linear-gradient(145deg, #f8fbfd 0%, #edf4f7 100%);
}

.responsive .layout_photo .list_item_photo img,
.responsive .layout_photo .item_photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .35s ease;
}

.responsive .layout_photo .item_data_link:hover img,
.responsive .layout_photo .list_item_link:hover img {
  transform: scale(1.035);
}

.responsive .itemlist_box .inner_item_data,
.responsive .layout_photo .list_item_data {
  padding: 23px 22px 16px;
}

.responsive .list_item_data p.item_name {
  min-height: 3.4em;
  margin: 0 0 10px;
  color: var(--ak-deep);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.65;
}

.responsive .model_number {
  color: #82909d;
  font-size: 9px;
  letter-spacing: .03em;
}

.responsive .item_icon,
.responsive .item_label,
.responsive .icon_label {
  border-radius: 999px;
}

.responsive .price .selling_price,
.responsive .selling_price {
  color: var(--ak-navy);
  font-weight: 900;
}

.responsive .selling_price .figure {
  font-size: 22px;
  letter-spacing: -.03em;
}

.responsive .selling_price .tax_label,
.responsive .tax_incl_price {
  color: var(--ak-muted);
  font-size: 9px;
}

/* --- Maker band before footer --- */
.responsive .top_page_body #contents::after {
  content: "MADE IN HIMEJI\A 製造から出荷まで、兵庫県姫路市の自社工場で。";
  display: block;
  padding: 54px 24px;
  color: #fff;
  background: linear-gradient(125deg, var(--ak-deep) 0%, var(--ak-navy) 58%, #0a5790 100%);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.9;
  letter-spacing: .03em;
  text-align: center;
  white-space: pre-line;
}

/* --- Internal pages --- */
.responsive .breadcrumb_area {
  margin-top: 18px;
  margin-bottom: 22px;
  color: #8190a0;
  font-size: 9px;
}

.responsive .breadcrumb_list A {
  color: var(--ak-blue);
}

.responsive #maincol > h1,
.responsive .page_title,
.responsive .detail_item_data h1,
.responsive .detail_item_data .item_name {
  margin-bottom: 30px;
  color: var(--ak-deep);
  font-size: clamp(28px, 3.8vw, 44px);
  font-weight: 900;
  line-height: 1.38;
  letter-spacing: -.04em;
}

.responsive .page_title h1,
.responsive .page_title h2 {
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--ak-deep);
  background: transparent;
  font-size: clamp(30px, 4vw, 46px);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -.045em;
}

.responsive .detail_page_body .page_box.itemdetail > .page_title {
  display: none !important;
}

.responsive .page_parent_category .inner_pickupcategory_nav {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.responsive .page_parent_category .itemlist_nav_item {
  width: 100% !important;
  max-width: none !important;
  border: 1px solid var(--ak-line) !important;
  border-radius: 12px;
  background: var(--ak-cloud);
}

.responsive .page_parent_category .itemlist_nav_item .nav_btn {
  min-height: 62px;
  padding: 14px 18px;
  color: var(--ak-navy);
  font-size: 13px;
  font-weight: 900;
}

.responsive .page_parent_category .itemlist_nav_item:hover {
  border-color: #b6d7e9 !important;
  background: var(--ak-ice);
}

.responsive .detail_item_box,
.responsive .detail_item,
.responsive .inner_detail_item {
  gap: 54px;
  align-items: flex-start;
}

.responsive .detail_item_photo,
.responsive .detail_item_image {
  overflow: hidden;
  border: 1px solid var(--ak-line);
  border-radius: var(--ak-radius);
  background: linear-gradient(145deg, #f9fbfd, #eef4f7);
}

.responsive .detail_item_photo img,
.responsive .detail_item_image img {
  object-fit: contain;
}

.responsive .detail_item_data {
  padding: 5px 0;
  border: 0;
}

.responsive .detail_item_data .section_box {
  padding: 18px 0;
  border-color: var(--ak-line);
}

.responsive .detail_item_data .selling_price {
  color: var(--ak-navy);
}

.responsive .detail_item_data .selling_price .figure {
  font-size: 34px;
  font-weight: 900;
}

.responsive .detail_item_data select,
.responsive .detail_item_data input[type="number"],
.responsive .detail_item_data input[type="text"] {
  min-height: 48px;
  border: 1px solid #bfd0dc;
  border-radius: 10px;
  background: #fff;
}

.responsive .variation_table,
.responsive .stock_table {
  overflow: hidden;
  border: 1px solid var(--ak-line);
  border-radius: 12px;
  background: var(--ak-cloud);
}

.responsive .variation_table th,
.responsive .variation_table td,
.responsive .stock_table th,
.responsive .stock_table td {
  padding: 13px;
  border-color: var(--ak-line);
}

.responsive .add_cart_btn,
.responsive button.add_cart_btn,
.responsive .cart_btn,
.responsive input.add_cart_btn {
  min-height: 60px;
  border: 1px solid var(--ak-blue);
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, var(--ak-blue), #0464b4);
  box-shadow: 0 12px 28px rgba(8, 120, 207, .24);
  font-size: 15px;
  font-weight: 900;
}

.responsive .add_cart_btn:hover,
.responsive button.add_cart_btn:hover,
.responsive .cart_btn:hover {
  border-color: var(--ak-navy);
  background: var(--ak-navy);
}

.responsive .detail_item_desc,
.responsive .item_description,
.responsive .free_area {
  color: #53677b;
  line-height: 1.95;
}

/* --- Cart and forms --- */
.responsive .cart_contents table,
.responsive .form_table,
.responsive .order_table {
  overflow: hidden;
  border-color: var(--ak-line);
  border-radius: 12px;
}

.responsive .cart_contents th,
.responsive .form_table th,
.responsive .order_table th {
  color: var(--ak-navy);
  background: var(--ak-cloud);
}

.responsive .submit_btn,
.responsive .next_btn,
.responsive input[type="submit"] {
  min-height: 50px;
  border-radius: 10px;
}

/* --- Footer --- */
.responsive #footer_wrapper {
  color: #d9e6ef;
  border: 0;
  background: #051b38;
}

.responsive #footer_free_top,
.responsive .footer_nav,
.responsive #footer {
  border-color: #29425f;
  background: transparent;
}

.responsive #footer_wrapper A,
.responsive #footer_wrapper A:link,
.responsive #footer_wrapper A:visited {
  color: #d9e6ef;
}

.responsive #footer_wrapper A:hover {
  color: #72d9ff;
}

.responsive #inner_footer,
.responsive .inner_footer_nav_column,
.responsive #inner_footer_free_top {
  padding-top: 24px;
  padding-bottom: 24px;
}

.responsive #copyright {
  color: #8499ad;
  font-size: 0;
  letter-spacing: .05em;
}

.responsive #copyright::after {
  content: "Copyright © 株式会社コムコム. All Rights Reserved.";
  font-size: 9px;
}

.responsive .back_to_top {
  border-radius: 50%;
  color: #fff;
  background: var(--ak-blue);
}

@media screen and (max-width: 960px) {
  .responsive .header_global_nav {
    width: min(360px, 38vw) !important;
  }

  .responsive .header_global_nav .inner_global_nav > li {
    min-width: 78px;
  }

  .responsive .header_global_nav .inner_global_nav .nav_btn {
    padding-inline: 9px;
    font-size: 10px;
  }

  .responsive #header .header_search_bar {
    display: none !important;
  }

  .responsive .layout_photo .list_item_photo,
  .responsive .layout_photo .item_photo,
  .responsive .layout_photo .item_image_box {
    min-height: 220px;
  }
}

@media screen and (max-width: 800px) {
  .responsive .fix_center,
  .responsive #inner_contents {
    width: calc(100% - 32px);
  }

  .responsive #header,
  .responsive #header_area,
  .responsive #inner_header {
    min-height: 68px;
  }

  .responsive #header .header_left {
    display: block;
    order: 1;
  }

  .responsive #header .header_center {
    order: 2;
    margin: 0 auto;
  }

  .responsive #header .header_right {
    order: 3;
  }

  .responsive #header .shoplogo {
    width: 160px;
    min-width: 160px;
    justify-content: center;
    gap: 8px;
  }

  .responsive #header .shoplogo > a {
    width: 54px;
    height: 42px;
  }

  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    width: 54px !important;
    height: 42px !important;
  }

  .responsive #header .shoplogo::after {
    font-size: 17px;
  }

  .responsive .header_global_nav {
    display: none !important;
  }

  .responsive #photo::after {
    right: 16px;
    bottom: 16px;
    padding: 8px 12px;
    font-size: 10px;
  }

  .responsive #photo .slider_image_box,
  .responsive #photo .item_image_box {
    height: 270px !important;
  }

  .responsive .top_page_body #contents::before {
    padding: 14px 16px;
    font-size: 10px;
  }

  .responsive #inner_contents {
    padding-top: 50px;
    padding-bottom: 64px;
  }

  .responsive .top_page_body #inner_main_container {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .responsive .top_page_body .main_new_item_box,
  .responsive .top_page_body .main_news_box,
  .responsive .top_page_body .main_diary_box {
    grid-column: 1;
  }

  .responsive .top_page_body .main_new_item_box {
    margin-bottom: 38px;
  }

  .responsive .itemlist_box .ajax_response_list,
  .responsive .itemlist_box .item_list > ul,
  .responsive .itemlist_box ul.item_list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px !important;
  }

  .responsive .detail_item_box,
  .responsive .detail_item,
  .responsive .inner_detail_item {
    gap: 30px;
  }

  .responsive .page_parent_category .inner_pickupcategory_nav {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 520px) {
  .responsive #header .shoplogo {
    width: 136px;
    min-width: 136px;
  }

  .responsive #header .shoplogo::after {
    font-size: 15px;
  }

  .responsive #photo .slider_image_box,
  .responsive #photo .item_image_box {
    height: 210px !important;
  }

  .responsive #photo::after {
    right: 10px;
    bottom: 10px;
    max-width: calc(100% - 20px);
    font-size: 8px;
  }

  .responsive .top_page_body #contents::before {
    content: "✓ 自社工場製造　✓ 直販　✓ 法人・特注対応";
    white-space: nowrap;
    overflow: hidden;
    font-size: 9px;
    letter-spacing: 0;
  }

  .responsive .main_box h2,
  .responsive .main_box .title,
  .responsive .itemlist_box .title {
    font-size: 27px;
  }

  .responsive .itemlist_box .ajax_response_list,
  .responsive .itemlist_box .item_list > ul,
  .responsive .itemlist_box ul.item_list {
    grid-template-columns: 1fr;
  }

  .responsive .layout_photo .list_item_photo,
  .responsive .layout_photo .item_photo,
  .responsive .layout_photo .item_image_box {
    min-height: 240px;
  }

  .responsive .itemlist_box .inner_item_data,
  .responsive .layout_photo .list_item_data {
    padding: 18px 18px 12px;
  }

  .responsive .layout_photo .item_data_link::after,
  .responsive .layout_photo .list_item_link::after {
    margin: auto 18px 18px;
  }

  .responsive .top_page_body .main_news_box,
  .responsive .top_page_body .main_diary_box {
    padding: 22px 20px 19px;
  }

  .responsive .top_page_body .main_news_box li a,
  .responsive .top_page_body .main_diary_box li a {
    grid-template-columns: 68px minmax(0, 1fr);
  }

  .responsive .top_page_body #contents::after {
    padding: 42px 18px;
    font-size: 15px;
  }

  .responsive .detail_item_data h1,
  .responsive .detail_item_data .item_name {
    font-size: 27px;
  }
}


/* ================================================================
   AirKeeper official trademark logo + compact search 2026-09-06
   ================================================================ */
.responsive #header .shoplogo {
  display: block;
  width: 236px;
  min-width: 236px;
  height: 72px;
  margin: 0;
  overflow: hidden;
}

.responsive #header .shoplogo > a {
  display: block;
  width: 236px;
  height: 72px;
  overflow: hidden;
}

.responsive #header .shoplogo img,
.responsive #header .folding_header .shoplogo img {
  content: url("https://www.com-wrap.com/data/com-wrap/image/Airkeeperlogo.png");
  display: block;
  width: 236px !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  transform: translateY(-20px);
}

.responsive #header .shoplogo::after {
  display: none !important;
  content: none !important;
}

/* 通常時は虫眼鏡だけを表示し、クリック時に標準検索欄を開く */
.responsive #header .header_search_bar.hidden_search_bar {
  display: none !important;
}

.responsive .header_global_nav .g_search {
  display: flex !important;
  min-width: 48px !important;
}

.responsive .header_global_nav .g_search .nav_btn {
  width: 48px;
  min-width: 48px;
  padding: 0;
  border-radius: 50%;
}

.responsive .header_global_nav .g_search .menu_nav_icon {
  display: block !important;
  margin: 0 !important;
  color: var(--ak-navy);
  font-size: 20px !important;
}

.responsive .header_global_nav .g_search .nav_label {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.responsive #header .header_search_bar:not(.hidden_search_bar) {
  display: block !important;
  width: min(420px, calc(100% - 32px)) !important;
  right: 16px !important;
}

@media screen and (max-width: 800px) {
  .responsive #header .shoplogo {
    width: 180px;
    min-width: 180px;
    height: 60px;
  }

  .responsive #header .shoplogo > a {
    width: 180px;
    height: 60px;
  }

  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    width: 180px !important;
    transform: translateY(-14px);
  }
}

@media screen and (max-width: 520px) {
  .responsive #header .shoplogo {
    width: 154px;
    min-width: 154px;
    height: 52px;
  }

  .responsive #header .shoplogo > a {
    width: 154px;
    height: 52px;
  }

  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    width: 154px !important;
    transform: translateY(-12px);
  }
}


/* Search icon intrinsic-size fix */
.responsive .header_global_nav .g_search .nav_text {
  display: flex !important;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
}

.responsive .header_global_nav .g_search .menu_nav_icon {
  width: 20px !important;
  height: 20px !important;
  line-height: 20px !important;
}


/* Search glyph visibility fix */
.responsive .header_global_nav .g_search .menu_nav_icon::before {
  display: inline-block !important;
}


/* Keep desktop search overlay out of the mobile header */
@media screen and (max-width: 800px) {
  .responsive #header .header_search_bar,
  .responsive #header .header_search_bar:not(.hidden_search_bar) {
    display: none !important;
  }
}


/* AirKeeper: header search panel fix */
@media screen and (min-width: 801px) {
  .responsive #header .header_search_bar:not(.hidden_search_bar) {
    display: block !important;
    position: absolute !important;
    box-sizing: border-box !important;
    width: 330px !important;
    min-height: 52px !important;
    top: 28px !important;
    right: 170px !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    padding: 0 40px 0 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--ak-line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(8, 43, 91, .14) !important;
    z-index: 120 !important;
  }
  .responsive #header .header_search_bar .inner_search_bar {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    height: 50px !important;
    padding: 0 !important;
  }
  .responsive #header .header_search_bar .search {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 50px !important;
    padding: 0 !important;
    background: transparent !important;
  }
  .responsive #header .header_search_bar .search_form {
    display: flex !important;
    width: 100% !important;
    height: 50px !important;
    align-items: stretch !important;
  }
  .responsive #header .header_search_bar .search_box {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 11px 0 0 11px !important;
    color: var(--ak-ink) !important;
    background: #fff !important;
    outline: 0 !important;
  }
  .responsive #header .header_search_bar .global_btn {
    display: block !important;
    flex: 0 0 50px !important;
    width: 50px !important;
    height: 50px !important;
  }
  .responsive #header .header_search_bar button.searchinput {
    display: flex !important;
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #fff !important;
    background: var(--ak-blue) !important;
    box-shadow: none !important;
  }
  .responsive #header .header_search_bar button.searchinput::before {
    width: auto !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }
  .responsive #header .header_search_bar button.searchinput .button_text,
  .responsive #header .header_search_bar button.searchinput .button_head_space,
  .responsive #header .header_search_bar button.searchinput .button_end_space {
    display: none !important;
  }
  .responsive #header .header_search_bar .close_btn_box {
    display: flex !important;
    position: absolute !important;
    top: 0 !important;
    right: -40px !important;
    width: 40px !important;
    height: 50px !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .responsive #header .header_search_bar .search_close {
    display: flex !important;
    width: 30px !important;
    height: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 50% !important;
    color: var(--ak-navy) !important;
    background: var(--ak-cloud) !important;
  }
}


/* AirKeeper: search dropdown final positioning */
@media screen and (min-width: 801px) {
  .responsive #header .header_search_bar:not(.hidden_search_bar) {
    top: 82px !important;
    right: auto !important;
    left: calc(50% + 185px) !important;
    transform: translateX(-50%) !important;
  }
  .responsive #header .header_search_bar .search_box {
    color: var(--ak-ink) !important;
    background: #f5f8fb !important;
    font-size: 14px !important;
  }
  .responsive #header .header_search_bar .search_box::placeholder {
    color: #738397 !important;
    opacity: 1 !important;
  }
}


/* AirKeeper: com-wrap + official AirKeeper dual logo */
.responsive #header .shoplogo {
  width: 330px !important;
  min-width: 330px !important;
  height: 72px !important;
}
.responsive #header .shoplogo > a {
  display: flex !important;
  width: 330px !important;
  height: 72px !important;
  align-items: center !important;
  gap: 10px !important;
  overflow: hidden !important;
}
.responsive #header .shoplogo > a::before {
  content: "" !important;
  display: block !important;
  flex: 0 0 80px !important;
  width: 80px !important;
  height: 58px !important;
  background: #fff url("https://www.com-wrap.com/data/com-wrap/image/20260521_8d0bc0.jpg") center center / contain no-repeat !important;
}
.responsive #header .shoplogo img,
.responsive #header .folding_header .shoplogo img {
  flex: 0 0 236px !important;
  width: 236px !important;
}
@media screen and (max-width: 800px) {
  .responsive #header .shoplogo {
    width: 248px !important;
    min-width: 248px !important;
    height: 60px !important;
  }
  .responsive #header .shoplogo > a {
    width: 248px !important;
    height: 60px !important;
    gap: 8px !important;
  }
  .responsive #header .shoplogo > a::before {
    flex-basis: 60px !important;
    width: 60px !important;
    height: 46px !important;
  }
  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    flex-basis: 180px !important;
    width: 180px !important;
  }
}
@media screen and (max-width: 520px) {
  .responsive #header .shoplogo {
    width: 210px !important;
    min-width: 210px !important;
    height: 52px !important;
  }
  .responsive #header .shoplogo > a {
    width: 210px !important;
    height: 52px !important;
    gap: 8px !important;
  }
  .responsive #header .shoplogo > a::before {
    flex-basis: 48px !important;
    width: 48px !important;
    height: 38px !important;
  }
  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    flex-basis: 154px !important;
    width: 154px !important;
  }
}


/* AirKeeper: dual logo narrow mobile fit */
@media screen and (max-width: 400px) {
  .responsive #header .shoplogo {
    width: 170px !important;
    min-width: 170px !important;
  }
  .responsive #header .shoplogo > a {
    width: 170px !important;
    gap: 5px !important;
  }
  .responsive #header .shoplogo > a::before {
    flex-basis: 36px !important;
    width: 36px !important;
    height: 32px !important;
  }
  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    flex-basis: 129px !important;
    width: 129px !important;
    transform: translateY(-10px) !important;
  }
}


/* AirKeeper: dual logo iPhone SE final fit */
@media screen and (max-width: 400px) {
  .responsive #header .shoplogo,
  .responsive #header .shoplogo > a {
    width: 145px !important;
    min-width: 145px !important;
  }
  .responsive #header .shoplogo > a::before {
    flex-basis: 31px !important;
    width: 31px !important;
    height: 29px !important;
  }
  .responsive #header .shoplogo img,
  .responsive #header .folding_header .shoplogo img {
    flex-basis: 109px !important;
    width: 109px !important;
    transform: translateY(-8px) !important;
  }
}


/* AirKeeper: mobile side menu visibility fix */
@media screen and (max-width: 839px) {
  .responsive.open_side_col #left_side_col,
  .responsive.open_side_col #right_side_col {
    display: block !important;
  }
}


/* AirKeeper: com-wrap logo only - pending confirmation */
.responsive #header .shoplogo,
.responsive #header .shoplogo > a {
  width: 80px !important;
  min-width: 80px !important;
}
.responsive #header .shoplogo > a {
  gap: 0 !important;
}
.responsive #header .shoplogo img,
.responsive #header .folding_header .shoplogo img {
  display: none !important;
}
@media screen and (max-width: 800px) {
  .responsive #header .shoplogo,
  .responsive #header .shoplogo > a {
    width: 60px !important;
    min-width: 60px !important;
  }
}
@media screen and (max-width: 520px) {
  .responsive #header .shoplogo,
  .responsive #header .shoplogo > a {
    width: 48px !important;
    min-width: 48px !important;
  }
}
@media screen and (max-width: 400px) {
  .responsive #header .shoplogo,
  .responsive #header .shoplogo > a {
    width: 31px !important;
    min-width: 31px !important;
  }
}
