@charset "utf-8";
/* CSS Document */

/********************************************************************/

/* HTMLタグ要素 */

/********************************************************************/

body {
    padding: 0px;
    margin: 0px;
    background-color: #FFFFFF;
    color: #333333;
}

body:has(.has_min_nav) {
	background-color: #FFFFFF;
}

.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;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.use_folding_header #inner_contents,
	.single_layout #inner_contents,
	.single_layout_with_side_menu #inner_contents  {
		padding: 0 15px;
	}
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
	.ocnk028.responsive.single_layout #container:not(.has_min_nav) .fix_center,
	.ocnk028.responsive.wide_layout #container:not(.has_min_nav) .fix_center,
	.ocnk028.responsive.wide_layout .layout_2_col #inner_contents {
		width: 100%;
		max-width: 100%;
	}
}


/********************************************************************/

/* トップページコンテンツ間余白 */

/********************************************************************/

.main_box {
    margin-bottom: 50px;
}

.module_box .main_box {
	margin-top: 1px;
    margin-bottom: 1px;
}

.side_box {
    margin-bottom: 50px;
}


/********************************************************************/

/* キャッチフレーズ欄 */

/********************************************************************/

/* キャッチフレーズ */
.responsive .copy {
    max-width: 100%!important;
    text-align: left;
    min-height: 18px;
    padding: 5px 8px 0px;
    font-size: 85%;
}

.copy A {
    text-decoration: underline;
}

.use_hover .copy A:hover {
    text-decoration: none;
}


/********************************************************************/

/* ヘッダー */

/********************************************************************/

#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: 0px 10px;
		min-height: 60px;
    }
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
    .responsive #inner_header {
	    padding: 10px;
    }
}

/********************************************************************/

/* ショップ名 */

/********************************************************************/

/* ショップ名ロゴ */
.shoplogo {
    padding: 5px 0px;
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
    .shoplogo {
		padding: 0px 0px 0px 10px;
    }
	
	.min_header .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: #F5F5F5;
}

.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: #F5F5F5;
	}
	
	.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: 0px;
	padding-bottom: 8px;
}

/* 各ナビゲーション */
.responsive .inner_global_nav .nav_btn,
.responsive .column6 .inner_global_nav .nav_btn {
	position: relative;
	border-right: none;
	border-bottom: 1px solid transparent;
	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 #F2F0EA;
  }
	
	.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: 280px;
  }

	#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 #E0DFE3;
	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 #E0DFE3;
    }
}

.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: #F5F5F5;
}

.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: #F5F5F5;
    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: #F5F5F5;
    color: #000000;
}

.use_hover .freepage_nav .inner_freepage_nav .nav_btn:hover {
    background-color: #E8E8E8;
    color: #333333;
}

.main_box .inner_side_nav .nav_btn,
.main_box .inner_main_nav .nav_btn,
.main_box .freepage_nav .inner_freepage_nav .nav_btn {
    background-color: #FFFFFF;
}

.use_hover .inner_side_nav .nav_btn:hover,
.use_hover .inner_main_nav .nav_btn:hover,
.use_hover .freepage_nav .inner_freepage_nav .nav_btn:hover {
	background-color: #F5F5F5;
}


/********************************************************************/

/* カテゴリ、特集ナビゲーション */

/********************************************************************/

.itemlist_nav {
    margin-top: 15px;
}

.lower_link_box .itemlist_nav {
	margin: 5px 0px 15px;
}

/* 各ナビゲーション */
.inner_itemlist_nav .nav_btn {
    background-color: #FFFFFF;
    border-bottom: 1px solid #E0DFE3;
	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: #F5F5F5;
}

.use_hover .inner_itemlist_nav .nav_btn:hover {
    background-color: #F5F5F5;
    color: #000000;
}

.responsive .related_group_list .inner_itemlist_nav .nav_btn,
.responsive .article_side_col .inner_itemlist_nav .nav_btn,
.responsive .lower_link_box .inner_itemlist_nav .nav_btn {
	background-color: transparent;
	border-bottom: 1px solid #E1DFD9;
}

.responsive .article_side_col .toggle_menu_list .itemlist_nav_item.has_sub_menu .nav_btn.close_sub_menu_link {
    background-color: #E5E2DB;
}

.use_hover.responsive .related_group_list .inner_itemlist_nav .nav_btn:hover,
.use_hover.responsive .article_side_col .inner_itemlist_nav .nav_btn:hover {
	background-color: transparent;
	border-bottom: 1px solid #000000;
}


/********************************************************************/

/* サイドメニュー */

/********************************************************************/

/* サイドメニュー枠 */
.ocnk038 .side_col,
.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 {
	width: calc(100% - 10px);
	background-color: transparent;
	border: none;
	margin-left: 5px;
	margin-right: 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 #E0DFE3;
	font-weight: 400;
}

/* マウスオーバーでサブカテゴリを開く */
/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.side_sub_menu_hover .sub_menu_link_list {
		background-color: #F5F5F5;
		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: #FFFFFF;
}

.responsive .footer_nav {
	padding-top: 30px;
}

/* 各ナビゲーション */
.footer_nav_item .nav_btn {
	border-bottom: 1px solid #E1DFD9;
	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-size: 20px;
    font-weight: 600;
}

.lower_link_box .main_box .section_title h2 {
	background-color: #E5E2DB;
	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-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 {
	background-color: #E5E2DB;
    padding: 10px;
    color: #000000;
}

.has_min_nav .page_box .section_title h2 {
	background-color: #F5F5F5;
}

.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: #E5E2DB;
    border: none;
    border-radius: 0;
    padding: 10px;
	margin-bottom: 10px;
}

.page_box.shoppingcart .section_title h3,
.page_box.mypage .section_title h3,
.page_box.mypage_history_detail .section_title h3,
.page_box.recipient_list .section_title h3,
.page_box.mypage_recipient_form .section_title h3 {
    background-color: #F5F5F5;
}

.page_box .contents_box .page_title_right_edge h3, 
.page_box .contents_box .section_title_right_edge h3 {
    padding-right: 100px;
}

/* レスポンシブ横幅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 #E1DFD9;
}

.page_box .page_contents .search_result_title h3 {
    margin-top: 10px;
}


/********************************************************************/

/* 第二階層小項目タイトル */

/********************************************************************/

.contents_title {
    padding: 10px;
	background-color: #E5E2DB;
    font-weight: 500;
    font-size: 108%;
    color: #333333;
}

.rules_title {
    font-weight: bold;
}


/********************************************************************/

/* フォームタイトル */

/********************************************************************/

.form_title {
    border-bottom: 1px solid #E1DFD9;
    padding: 10px 3px 5px;
    font-weight: 700;
    font-size: 116%;
    color: #333333;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.shoppingcart_contents #cart_recipient .form_title {
		font-weight: 500;
	}
}

.form_data .form_title.radio_selection_box,
.form_data .form_inner_title.radio_selection_box {
	padding: 10px;
	font-weight: 500;
}

.shoppingcart_contents .form_title {
	font-size: 108%;
}

.shoppingcart_page_body .page_box .form_area .form_title {
	border-bottom: 1px solid #E1DFD9;
}

.form_inner_title {
    border-bottom: 1px solid #E1DFD9;
    font-weight: 500;
    color: #000000;
}


/********************************************************************/

/* タイトル文字サイズ */

/********************************************************************/

.page_title h1,
.page_title h2,
.section_title h1,
.section_title h2 {
    font-size: 131%;
	font-weight: bold;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.page_title h1,
    .page_title h2,
    .section_title h1,
    .section_title h2 {
        font-size: 161.6%;
    }
}

.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: 500;
}

.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: 180px;
	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: #FBFBF9;
	border: none;
	padding: 12px 15px 10px;
	font-weight: 400;
	display: block;
	border-radius: 5px;
	line-height: 100%;
	color: #333333;
}

#container .more_item .general_btn .fa {
	color: #333333;
}

.use_hover .more_item .general_btn:hover {
	border: none;
	background-color: #E5E2DB;
	color: #333333;
}

/* 写真のみ文字サイズ */
.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 #E1DFD9;
    padding: 15px 5px 15px 10px;
}

.has_min_nav .layout_column_text .list_item_box,
.has_min_nav .layout_text .not_link {
    border-bottom: 1px solid #E0DFE3;
}

.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: #F5F5F5;
    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: #E5E2DB;
	border: 1px solid #E5E2DB;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	color: #BCB9B2;
}

.ocnk016.responsive.use_hover .ranking_navigation.anchor_nav_area .nav_btn:hover {
	background-color: #FBFBF9;
	border: 1px solid #FBFBF9;
	border-bottom: 1px solid #FBFBF9;
}

.ocnk016.responsive .ranking_navigation.anchor_nav_area .nav_btn.nav_on {
	background-color: #FBFBF9;
	border: 1px solid #FBFBF9;
	border-bottom: 1px solid #FBFBF9;
	color: #333333;
}


/*--------------------------------------*/

/* 記事一覧  */

/*--------------------------------------*/

/* タイトル */
.list_subject {
    padding: 5px 0px;
}

/* 日付 */
.date {
    color: #000000;
    font-size: 93%;
    font-weight: normal;
}


/*--------------------------------------*/

/* ソート */

/*--------------------------------------*/

.ocnk023.responsive #container:not(.has_min_nav) .sort {
	background-color: #E5E2DB;
}

.ocnk023.responsive #container:not(.has_min_nav) .sort_item {
	background-color: #FFFFFF;
}

.ocnk023.responsive #container:not(.has_min_nav) .sort_toggle .toggle_open {
	background-color: #D7D5CE;
}

.sort_box {
    padding: 5px;
    margin: 3px;
    border-bottom: 1px solid #E1DFD9;
}

.has_min_nav .sort_box {
	border-color: #E0DFE3;
}

.sort_item .global_btn {
    padding: 5px;
    text-align: center;
}

/* 件数 */
.item_count {
	padding: 10px 10px 0;
    font-size: 93%;
}


/********************************************************************/

/* 写真 */

/********************************************************************/

#photo {
    padding: 0px;
	position: relative;
}

#photo .fix_center {
    max-width: 100%;
}

.ocnk007.responsive #photo .item_image_box img {
    width: 100%;
    height: 100svh;
    object-fit: cover;
}

.ocnk007.responsive.wide_layout #inner_container {
	max-width: 100%;
}


/********************************************************************/

/* スライド */

/********************************************************************/

/* スライド送りボタン */
#photo .slider_controller.lower_slider_controller {
	padding-bottom: 0px;
}

.slider_box .swiper-pagination-bullet,
.swipe_list .pointer span {
    background-color: #D2CFC9;
}

#photo .slider_box .swiper-pagination-bullet,
#photo .swipe_list .pointer span {
    background-color: #D2CFC9;
}

/* 現スライド */
.slider_box .swiper-pagination-bullet-active,
.swipe_list .pointer span.current {
    background-color: #333333;
}

#photo .swiper-pagination {
	bottom: 20px;
}

#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: #FFFFFF;
}

/* 前へ、次へアイコン */
.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: #E1DFD9;
}

.use_hover .slider_box .swiper-button-disabled:hover {
    background-color: #F5F5F5;
}

/* 前へアイコン画像 */
.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 {
    border: 1px solid #E1DFD9;
    padding: 10px;
}


/********************************************************************/

/* 商品詳細 */

/********************************************************************/

/* 商品情報　各ブロック */
.detail_section,
.detail_block_stock .detail_section {
    border-bottom: 1px solid #E1DFD9;
	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;
	}
}

/* 商品詳細　価格エリア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 #E1DFD9;
}

.order_label {
	padding: 5px 0px;
}

.ordermade .bottompos {
    border-bottom: none;
}

/* バリエーション在庫選択中背景 */
.variation_stock_list .data_table .selected_item {
    background-color: #F9F8F5;
    color: #983E56;
}

.variation_stock_list .data_table .selected_data {
    background-color: #F9F8F5;
}
	

/*--------------------------------------*/
/* バリエーション選択のポップアップ */

/* ポップアップ枠 */
.popup_variation,
.popup_area {
    background-color: #FFFFFF;
    border: 1px solid #E1DFD9;
}

.popup_variation_selection,
.popup_section {
    border-bottom: 1px solid #E1DFD9;
}

/* バリエーション項目ボタン */
.popup_variation_button,
.item_selection_button {
    background-color: #F5F5F5;
    border: 2px solid #CCCCCC;
}

/* 選択中 */
.selected_option .popup_variation_button,
.selected_option .item_selection_button {
    background-color: #F9F8F5;
    border: 2px solid #000000;
    color: #000000;
}

/* 変更、選択してくださいボタン */
.popup_variation_edit_button,
.popup_variation_select_button,
.item_select_operation_button {
    background-color: #E1DFD9;
    color: #000000;
}

.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: #FFFFFF;
    color: #000000;
}

.validation_selection_selected_all .variation_selection_msg_text {
    background-color: #333333;
    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: #E1DFD9;
}

.review_register_page_body .review_post_stars img[src$="star_empty_x2.png"] {
    background-color: #E1DFD9;
}

/* 文字の色 */
.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: #FFFFFF;
	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 #E1DFD9;
}

/* ショップオーナーヘッダー */
.owner_header {
    font-size: 93%;
	font-weight: 700;
    color: #7D7565;
}

/* ショップオーナー登録日 */
.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;
}


/********************************************************************/

/* ログイン */

/********************************************************************/

/* 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 #E1DFD9;
    font-size: 116%;
    font-weight: bold;
}

.signin_box .password .global_link {
    font-size: 85%;
}

/* 新規登録枠 */
#register_form {
    padding-top: 20px;
    border-top: 1px solid #E1DFD9;
}


/********************************************************************/

/* カート */

/********************************************************************/

#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;
}

/* 各項目枠 */
.cart_section {
    border-top: 1px solid #E0DFE3;
    padding: 10px 0px;
}

/* 区切り線 */
.top_separator {
    border-top: 1px solid #E0DFE3;
}

.bottom_separator {
    border-bottom: 1px solid #E0DFE3;
}

/* 各項目ラベル */
.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 #333333;
    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 #E1DFD9;
	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: #F9F8F5;
}

.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 #E1DFD9;
    padding: 10px;
}

/* リピータ向け決済機能用 */
.inner_global_info {
    background-color: #FFFFFF;
    border: 1px solid #E1DFD9;
}

/* クーポン/ポイント枠 */
.toggle_box .cart_point,
.toggle_box .box_padding,
.toggle_box .cart_point_notice {
    margin: 1px;
}

/* クーポン/ポイント変更時の金額を更新ボタン欄、強調表示背景 */
.notice_box .form_btn_spad {
    background-color: #F9F8F5;
}

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: #F5F5F5;
    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: #E5E2DB;
}

/* ステップ表 文字 */
.step_data span {
    color: #666666;
}

/* ステップ表 ステップ数 */
.step_data .step_number {
    font-weight: 400;
	font-size: 9px;
}

/* ステップ表 現ページ文字 */
.step_check .step_data span {
    color: #333333;
	font-weight: 700;
}


/********************************************************************/

/* 最新情報、店長日記 */

/********************************************************************/

.ocnk028.responsive.single_layout :is(.whatnew_page_body, .whatnew_detail_page_body) #container #inner_contents,
.ocnk028.responsive.single_layout :is(.diary_page_body, .diary_detail_page_body) #container #inner_contents,
.ocnk028.responsive.single_layout :is(.article_page_body, .article_detail_page_body) #container #inner_contents,
.ocnk028.responsive.wide_layout :is(.whatnew_page_body, .whatnew_detail_page_body) #container #inner_contents,
.ocnk028.responsive.wide_layout :is(.diary_page_body, .diary_detail_page_body) #container #inner_contents,
.ocnk028.responsive.wide_layout :is(.article_page_body, .article_detail_page_body) #container #inner_contents {
	max-width: 1400px;
}

/* 日付 */
.article_date {
    border-bottom: 1px solid #E1DFD9;
    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 #D7D5CE;
	font-size: 93%;
}

.use_hover .anchor_nav_area .nav_btn:hover {
    background-color: #F9F8F5;
	border: 1px solid #D7D5CE;
}

/* レスポンシブ横幅1200px以上指定 */
@media (min-width: 1200px) {
    .wide_layout .layout_2_col .help_navigation.anchor_nav_area .flex_wrap .wrapped_item {
        width: auto;
		flex: 1;
    }
}

/* 各ブロック */
.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: #E5E2DB;
}


/********************************************************************/

/* 特定商取引法 */

/********************************************************************/

/* 各欄枠 */
.contents_desc {
    padding: 10px 5px;
    margin: 5px 0px;
}

.legal_shop_name h1 {
	font-size: 123.1%;
}


/********************************************************************/

/* メールマガジン */

/********************************************************************/

/* 登録、解除タイトル */
.mailmagazine_box .mailmagazine_subscribe_title,
.mailmagazine_box .mailmagazine_unsubscribe_title {
    border-bottom: 1px solid #E1DFD9;
    margin-bottom: 10px;
    font-size: 116%;
    font-weight: bold;
}


/********************************************************************/

/* マイページ */

/********************************************************************/

/* ポイント */
.member_contents .point_number {
    font-size: 138.5%;
    font-weight: bold;
    color: #983E56;
}

.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 #E1DFD9;
    border-bottom: 1px solid #E1DFD9;
}

.favorite_contents .price {
	font-size: 93%;
}

/* メモ */
.item_memo_text {
	padding: 10px;
    background-color: #F5F5F5;
    color: #000000;
}


/*************************************************************/

/* 複数選択 */

/*************************************************************/

/* 複数削除 */
.bulk_btn {
    padding-top: 5px;
    padding-bottom: 5px;
}

/* 複数選択 */
.inner_bulk_check_box {
    background-color: #F5F5F5;
}

.layout_column_text .inner_bulk_check_box,
.layout_text .inner_bulk_check_box {
    background-color: #F5F5F5;
}

.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: #F5F5F5;
    border-top: 1px solid #E1DFD9;
}

/* 数量表示バッジ */
.badge {
    background-color: #C45875;
    font-family: Arial, Helvetica, sans-serif;
    color: #FFFFFF;
}


/*************************************************************/

/* 掲示板 */

/*************************************************************/

.bbs_page_body #maincol {
	max-width: 1400px;
	margin: auto;
}

.page_box #bbs_post .section_title h3 {
	margin: 15px 10px 10px;
	padding: 10px 5px;
}

/* 記事枠 */
.post_box {
    margin-bottom: 15px;
	background-color: #F9F8F5;
}

/* 記事枠レス */
.post_box_res {
    padding-left: 20px;
}

/* 記事ヘッダー */
.post_box .data_table .cell_header,
.post_box .data_table .cell_data {
    background-color: #E1DFD9;
    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: #E1DFD9;
	margin-bottom: 10px;
}

/* 検索文字強調 */
.result_emphasis {
    background-color: #FFFF73;
}

/* 検索前に戻る */
.bbs_search .global_link {
    margin-left: 10px;
}

/* 記事開閉 
#bbs_toggle {
}*/

/* 記事投稿欄 */
.bbs_post_form {
    background-color: #FFFFFF;
    border: 1px solid #E1DFD9;
}

.bbs_contents #pagerbottom {
	background-color: transparent;
}


/*************************************************************/

/* 関連ページ */

/*************************************************************/

/* 内容 */
.link_desc_box {
    border-top: 1px solid #E1DFD9;
}


/*************************************************************/

/* 私が店長です */

/*************************************************************/

/* スタッフ画像 */
.staff_photo,
.pstaff_photo {
    text-align: center;
    margin-top: 10px;
}

/* プロフィール項目 */
.staff_contents dt,
.pstaff_contents dt {
    border-top: 1px solid #E1DFD9;
    font-weight: bold;
}

/* プロフィール内容 */
.staff_contents dd,
.pstaff_contents dd {
    border-top: 1px solid #E1DFD9;
}

.staff_profile_desc {
    background-color: #FFFFFF;
    border: 1px solid #E1DFD9;
}


/********************************************************************/

/* カレンダー */

/********************************************************************/

/* カレンダーヘッダー */
.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 #E1DFD9;
}

/* カレンダー曜日セル */
.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 #E1DFD9;
}

/* イベント内容 */
.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 #E1DFD9;
    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 #F2F0EA;
}

/* thタグ */
.data_table .cell_header,
.data_table_header {
    background-color: #E9E6E0;
    color: #000000;
}

.data_table tbody .cell_header {
    background-color: #FFFFFF;
}

/* 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: #F5F5F5;
}


/********************************************************************/

/* 入力エリア */

/********************************************************************/

/* 標準 */
.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.empty_nav_label .fa.icon-ocnk-barsla {
	font-size: 23px;
}

/* レスポンシブ横幅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: 23px;
	}
}

.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;
}

/* フッター下部ボタン */
.responsive.wide_layout .fixed_corner_box .fixed_corner_button {
	right: 15px;
}

.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: #333333;
}

.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 #E1DFD9;
    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 #E1DFD9;
    background-color: #F5F5F5;
}

/* +-開閉ボタン枠 */
.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 #E1DFD9;
    background-color: #F5F5F5;
    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 #E1DFD9;
    background-color: #F0F0F0;
}

.standard_btn {
    padding: 10px 20px;
    border: solid 1px #E1DFD9;
    background-color: #F9F9F9;
    border-radius: 5px;
    display: inline-block;
	box-shadow: none;
}

.use_hover .standard_btn:hover {
    border: 1px solid #E1DFD9;
    background-color: #F0F0F0;
}

.has_min_nav .general_btn,
.has_min_nav .standard_btn {
	border-color: #E0DFE3;
}

.use_hover .has_min_nav .general_btn:hover,
.use_hover .has_min_nav .standard_btn:hover {
    border: 1px solid #E0DFE3;
    background-color: #E0DFE3;
}

/* 右端ボタン */
.page_title_right_edge .general_btn,
.section_title_right_edge .general_btn {
    background-color: #FFFFFF;
    border: 1px solid #E1DFD9;
    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: #F5F5F5;
    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: #F5F5F5D4;
}

#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 #E1DFD9;
}

/* ログインページ新規登録余白調整 */
#register_form .form_btn {
    padding: 0px;
}

/* Aタグボタン */
.global_btn A {
    font-weight: normal;
}

/* 外部決済ボタン */
.outside_btn_box {
    background-color: #FFFFFF;
    border: 1px solid #E1DFD9;
}

/* 楽天決済用 */
.payment_method_desc {
    margin-bottom:10px;
}


/*--------------------------------------*/

/* ボタン色 */

/*--------------------------------------*/
/* 色通常 */
/* フォームボタン全般 */
.btn_color_common {
    background-color: #FBFBF9;
	border: none;
    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: #FBFBF9;
	border: none;
    background-image: none;
    border-radius: 5px;
    color: #333333;
    font-weight: 400;
    box-shadow: none;
}

.has_min_nav .btn_color_common,
.has_min_nav A.btn_color_common:link,
.has_min_nav A.btn_color_common:visited,
.has_min_nav A.btn_color_common:hover,
.has_min_nav A.btn_color_common:active,
.overlay_area .btn_color_common,
.overlay_area A.btn_color_common:link,
.overlay_area A.btn_color_common:visited,
.overlay_area A.btn_color_common:hover,
.overlay_area A.btn_color_common:active {
    background-color: #F9F9F9;
	border: 1px solid #E0DFE3;
}

.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: #333333;
	border: none;
    color: #FFFFFF;
}

.use_hover .btn_color_common:hover {
	background-color: #E1DFD9;
    color: #333333;
}

.use_hover .has_min_nav .btn_color_common:hover,
.use_hover .overlay_area .btn_color_common:hover {
	background-color: #E0DFE3;
	border: 1px solid #E0DFE3;
    color: #333333;
}

.use_hover .sort_item .btn_color_common:hover {
	background-color: #555555;
    color: #FFFFFF;
}

/* 色強調 */
.btn_color_emphasis {
    background-color: #333333;
    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: #333333;
    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 {
	border-top: 1px solid #E1DFD9;
	padding: 0;
}

.responsive .has_min_nav .breadcrumb_area {
	border-color: #E0DFE3;
}
	
.breadcrumb_list {
	max-width: 1200px;
	margin: auto;
	padding: 10px;
	font-size: 77%;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .breadcrumb_list {
	    padding: 15px;
    }
}

.breadcrumb_list A {
	text-decoration: underline; 
}
	
.ocnk028.responsive .breadcrumb_list {
	max-width: 100%;
}
	
.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: #E5E2DB;
}

.article_data + #pagerbottom {
	background-color: transparent;
	border-top: 1px solid #E1DFD9;
}

/* 現ページ */
.pager strong {
    min-width: 20px;
    min-height: 20px;
	line-height: 20px;
    padding: 3px;
    margin: 0px 1px;
    border: 1px solid #333333;
    background-color: #333333;
	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 #E1DFD9;
    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 #333333;
    background-color: #333333;
    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 #E1DFD9;
}

/* 各リンク文字 */
.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: #F5F5F5;
	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: #F5F5F5;
    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: #FFFFFF;
}

#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: #F5F5F5;
}

/********************************************************************/

/*お客様の声*/
.line-bc {
    padding: 20px 10px;
    max-width: 80%;
    margin: 15px auto;
    text-align: right;
    font-size: 14px;
    background: #7da4cd;

}

/*以下、②左側のコメント*/
.balloon6 {
    width: 100%;
    margin: 10px 0;
    overflow: hidden;
}

.balloon6 .faceicon {
    float: left;
    margin-right: -50px;
    width: 40px;
}

.balloon6 .faceicon img {
    width: 100%;
    height: auto;
    border-radius: 0%;
}

.balloon6 .chatting {
    width: 100%;
    text-align: left;
}

.says {
    display: inline-block;
    position: relative;
    margin: 0 0 0 50px;
    padding: 10px;
    max-width: 70%;
    border-radius: 12px;
    background: #edf1ee;
    color: #323232;
}

.says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 3px;
    left: -19px;
    border: 8px solid transparent;
    border-right: 18px solid #edf1ee;
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
}

.says p {
    margin: 0;
    padding: 0;
}

/*以下、③右側の緑コメント*/
.mycomment {
    margin: 10px 0;
    color: #ffffff;
}

.mycomment p {
    display: inline-block;
    position: relative;
    margin: 0 10px 0 0;
    padding: 8px;
    max-width: 300px;
    border-radius: 12px;
    background: #8fc31f;
    font-size: 15px;
    text-align: left;
}

.mycomment p:after {
    content: "";
    position: absolute;
    bottom: 10px;
    right: -19px;
    border: 8px solid transparent;
    border-left: 18px solid #8fc31f;
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
}

.come {
    font-weight: lighter;
}
/********************************************************************/
/*横並びの商品*/

.itembox{
    width: 147px;
    height: auto;
    margin-right: 5px;
    margin-bottom: 5px;
}

.container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .box002 {
    border-radius: 10px;
    background-color:#595c5e;
    width: 100%;
    color: #ffffff;
    margin: 0;
    font-size: small;
    text-align: center;
  }

  .box003 {
    font-size: small;
    text-align: left;
    margin: 0;
}

.goods_name01 {
  font-weight: bold;
  text-align: center;
  border-bottom: solid 2px #ffffff; 
}

.goods_name02 {
  text-align: center;
}

.mini_title {
  font-size: small;
  font-weight: bold;
  color: #379ec7;
  text-align: left;
}
.yokonarabi{
    display:flex;
}

  .yokonarabi li{
    list-style: none;
}
.yokonarabi>div{
    width:50%;
}
@media(max-width:750px){
    .yokonarabi{
        flex-wrap: wrap;
    }
    .yokonarabi>div{
        width: 50%;
    }
}

/********************************************************************/
/*詳細ページテキストボックス*/
.tex-box
{width:90%;
text-align:left;
margin:30px auto;
font-size:18px;
line-height:2rem;}
.tex-box p
{text-align:left;
font-size:17px;
line-height:2rem;}
.tex-box h2
{font-size:28px;
 font-weight:900;
padding-bottom:20px;
    line-height:2.5rem;
color:#379ec7;}
.tex-box li{padding-bottom:15px;}
.tex-box img{margin: 30px auto;}

/* 文字をボックスで囲む  */
.box13 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #FFF;
    background: #6eb7ff;
    border-bottom: solid 6px #3f87ce;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
    border-radius: 9px;
}
.box13 p {
    margin: 0; 
    padding: 0;
}
/* 以下追記　フリーページのh2吹き出し */
h2.yellowH2 {
    position: relative;
    display: inline-block;
    margin: 1.5em 0;
     padding: 15px 5px;
  width: 100%;
  color: #2d2d2d;
  font-size: 180%;
  background: #ffdc00;
}
h2.yellowH2:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #ffdc00;
}
h2.yellowH2 p {
    margin: 0;
    padding: 0;
  }
h3.yellowH3 {
    position: relative;
    display: inline-block;
    margin: 0 5px;
    padding: 5px 10px;
    width: 50%;
    color: #2d2d2d;
    font-size: 100%;
    border-radius:35px;
    background: #ffdc00;
}
.subText p {
    font-size: 150%;
    font-weight: bold;
    text-decoration:underline;
    text-decoration-color: #ffdc00;
    text-align: center;
}
span.bobo {
    font-weight: bold;
    text-decoration:underline;
    text-decoration-color: #66a2ec;
}
/* テーブルの装飾 */
table.cuTbl{
  border-collapse:separate;
  border-spacing: 5px;
  width: 100%;
}

table.cuTbl th,table.cuTbl td{
  border-radius: 5px;
  text-align: center;
  padding: 10px 0;
}

table.cuTbl th{
  background-color: #b0c4de;
  color: white;
}

table.cuTbl td{
  background-color: #f8f8ff;
}
/*横並び*/
.flexright {
    display: flex;
    list-style: none;
    margin: 0px;
    padding: 10px 0px;
    text-align: center;
}
.flexright li {
    flex: auto;
    width: 20%;
}
.flexright3 {
    display: flex;
    list-style: none;
    margin: 0px;
    padding: 10px 0px;
    text-align: center;
}
.flexright3 li {
    flex: auto;
    width: 33.3%;
}

/*横並び*/
ul {
    list-style: none;
    margin: 0px;
    padding: 10px 0px;
  }
  .li1 {
    background-color: #fff;
    padding: 20px 5px 20px 5px;
  }
  /* .flex-listに、displayプロパティを指定 */
  .flex-list {
    display: flex;
    flex-wrap: wrap;
  }
  .flex-list li {
    flex: auto;
    width: 20%;
  }
  .flex-list2 {
    display: flex;
    flex-wrap: wrap;
  }
  .flex-list2 li {
    flex: auto;
    width: 20%;
  }
  .flex-list3 {
    display: flex;
    flex-wrap: wrap;
  }
@media (max-width: 950px) {
    .flex-list {
        flex-wrap: wrap;
    }
    .flex-list li {
        width: 50%;
    }
}
/*トップページPC横並び2列*/
.flex-listTwin {
    display: flex;
    flex-wrap: wrap;
  }
.flex-listTwin li {
    flex: auto;
    width: 50%;
}
/*スマホ向けレイアウト*/
@media (max-width: 670px) {
    .flex-list {
        flex-direction: column;
    }
    .flex-list li {
        margin: 0 auto;
        width: 100%;
    }
    .flex-listTwin {
        flex-direction: column;
    }
    .flex-listTwin li {
        margin: 0 auto;
        width: 100%;
    }
    .flex-list .box002 {
        border-radius: 10px;
        background-color:#595c5e;
        width: 100%;
        color: #ffffff;
        margin: 0 auto;
        font-size: small;
        text-align: center;
      }
}
/*トップページメイン画像の切り替え*/
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}
ol {
    font-size: 120%;
}
h1.freePageTitle {
    background-color: #F5F5F5;
    border: 1px solid #D6D6D6;
    border-radius: 5px;
    padding: 12px 10px;
    color: #000000;
}
/* テーブルの装飾 ハンガーページ*/
table.cuTbl2{
    border-collapse:separate;
    border-spacing: 5px;
    width: 100%;
  }
  
  table.cuTbl2 th,table.cuTbl2 td{
    border-radius: 5px;
    text-align: center;
    padding: 10px 0;
    border: 1px solid #b0c4de;
    width: 25%;
  }
  
  table.cuTbl2 th{
    background-color: #b0c4de;
    color: white;
  }
  
  table.cuTbl2 td{
    background-color: #ffffff;
  }

  p.notoserif {
    font-family: 'Noto Serif JP', serif;
    font-family: 'Zen Old Mincho', serif;
    font-weight: bold;
  }
  h2.notoserif {
    font-family: 'Noto Serif JP', serif;
    font-family: 'Zen Old Mincho', serif;
    margin-top: 30px;
    font-size: 200%;
    border-bottom: 10px solid #379ec7;
	border-image: linear-gradient(to right, #379ec7, #ffffff) 1;
  }
 p {
    margin: 10px;
 }
/*カートの下のコメント記入欄*/
.rounded-box {
            width: auto; /* ボックスの幅 */
            padding: 20px; /* 内側の余白 */
            background-color: #ffefef; /* ボックスの背景色 */
            border-radius: 15px; /* 角の丸み */
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 影をつける */
            text-align: center; /* 文字を中央揃え */
            margin: 20px auto; /* 上下に余白をつけ、中央揃え */
        }

#left_side_col{
  padding: 0 20px;
}
/*後悔させない頑丈さバナー*/
.cs-stronger-banner {
  width: 100%;
  margin: 0 auto;

  padding: 0;
  gap: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;

  overflow: hidden;
}

/* =========================
   左画像：4
========================= */

.cs-stronger-banner__image {
  flex: 0 1 40%;
  min-width: 0;
}

.cs-stronger-banner__image img {
  width: 100%;
  height: auto;
  display: block;
}

/* =========================
   右テキスト：6
========================= */

.cs-stronger-banner__content {
  flex: 0 1 60%;
  min-width: 0;
  padding-left: clamp(24px, 3vw, 48px);
  box-sizing: border-box;
}

/* =========================
   キャッチ
========================= */

.cs-stronger-banner__catch {
  margin: 0 0 0.15em;

  font-size: clamp(34px, 4vw, 72px);
  font-weight: 700;
  line-height: 1.1;

  text-shadow:
    0 2px 6px rgba(0,0,0,0.25);

  color: #222;

  white-space: nowrap;
}

/* =========================
   問題提起
========================= */

.cs-stronger-banner__problem {
  margin: 0 0 28px;

  font-size: clamp(16px, 1.6vw, 32px);
  font-weight: 700;
  line-height: 1.35;

  color: #222;
}

.cs-stronger-banner__problem strong {
  color: #c40000;
}

/* =========================
   青帯
========================= */

.cs-stronger-banner__blue-wrap {
  position: relative;
  width: 100%;
}

.cs-stronger-banner__blue {
  width: 100%;

  background: #555555;

  padding:
    clamp(18px, 2vw, 30px)
    clamp(18px, 2.5vw, 40px)
    clamp(8px, 1vw, 14px);

  text-align: center;

  color: #fff;

  box-sizing: border-box;
}

.cs-stronger-banner__blue p {
  margin: 0;

  font-size: clamp(14px, 1.2vw, 24px);
  font-weight: 700;
  line-height: 1.2;

  white-space: nowrap;
}

/* 真ん中 */

.cs-stronger-banner__sub {
  font-size: clamp(20px, 2vw, 40px) !important;
  line-height: 0.95;

  white-space: nowrap;
}

/* 商品名 */

.cs-stronger-banner__blue h2 {
  margin: 0;

  font-size: clamp(26px, 3vw, 56px);
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  line-height: 0.95;
  color: #fff;

  white-space: nowrap;
}

/* 「と」「を」 */

.cs-stronger-banner__sub .mini{
  font-size: 0.55em;
  position: relative;
  top: -0.05em;
}

/* =========================
   バッジ
========================= */

.cs-stronger-banner__badge {
  position: absolute;

  left: -18px;
  bottom: -14px;

  width: 84px;
  height: 84px;

  border-radius: 50%;

  background:
    radial-gradient(circle at 30% 30%, #ffe89c, #d9a020);

  border: 3px solid #f7d768;

  color: #b40000;

  font-size: 13px;
  font-weight: 700;
  line-height: 1.1;

  display: flex;
  align-items: center;
  justify-content: center;

  text-align: center;

  z-index: 2;
}

.cs-stronger-banner__badge span {
  font-size: 24px;
}

/* =========================
   SP
========================= */

@media (max-width: 768px) {

  .cs-stronger-banner {
    flex-direction: column;

    gap: 20px;

    padding: 28px 18px;
  }

  .cs-stronger-banner__image,
  .cs-stronger-banner__content {
    width: 100%;
  }

  .cs-stronger-banner__image {
    max-width: 420px;
  }

  .cs-stronger-banner__content{
    overflow-x: hidden;
  }

  .cs-stronger-banner__catch{
    text-align: center;
  }

  .cs-stronger-banner__problem{
    text-align: center;
  }

  .cs-stronger-banner__badge {
    width: 72px;
    height: 72px;

    left: -10px;
    bottom: -10px;

    font-size: 12px;
  }

  .cs-stronger-banner__badge span {
    font-size: 20px;
  }

}

.cs-stronger-hero{
  position: relative;
  width: 100%;

  overflow: hidden;
}

.cs-stronger-hero__bg{
  width: 100%;
  height: auto;
  display: block;
}

/* テキスト全体 */

.cs-stronger-hero__content{
  position: absolute;

  top: 50%;
  right: 5%;

  transform: translateY(-50%);

  width: min(42vw, 760px);

  z-index: 2;
}

/* キャッチ */

.cs-stronger-banner__catch{
  margin: 0 0 0.15em;

  font-size: clamp(34px, 4vw, 72px);
  font-weight: 700;
  line-height: 1.1;

  color: #222;

  text-shadow:
    0 2px 6px rgba(255,255,255,0.35);

  white-space: nowrap;
}

/* 問題提起 */

.cs-stronger-banner__problem{
  margin: 0 0 1.2em;

  font-size: clamp(16px, 1.6vw, 30px);
  font-weight: 700;
  line-height: 1.35;

  color: #222;
}

.cs-stronger-banner__problem strong{
  color: #c40000;
}

/* 青帯 */

.cs-stronger-banner__blue{
  background: rgba(103,181,208,0.92);

  padding:
    clamp(14px, 1.6vw, 24px)
    clamp(18px, 2vw, 34px)
    clamp(10px, 1vw, 18px);

  text-align: center;

  color: #fff;

  box-sizing: border-box;

  backdrop-filter: blur(2px);
}

.cs-stronger-banner__blue p{
  margin: 0;

  font-weight: 700;

  white-space: nowrap;
}

.cs-stronger-banner__blue > p{
  font-size: clamp(14px, 1.1vw, 22px);
  line-height: 1.2;
}

.cs-stronger-banner__sub{
  font-size: clamp(20px, 1.9vw, 38px);
  line-height: 0.95;
}

.cs-stronger-banner__sub .mini{
  font-size: 0.55em;
  position: relative;
  top: -0.05em;
}

.cs-stronger-banner__blue h2{
  margin: 0;

  font-size: clamp(28px, 3vw, 60px);
  font-weight: 700;
  line-height: 0.95;

  color: #fff;
}

/* SP */

@media (max-width: 768px){

  .cs-stronger-hero__content{
    position: absolute;

    left: 50%;
    right: auto;
    bottom: 4vw;
    top: auto;

    transform: translateX(-50%);

    width: 92%;
  }

  .cs-stronger-banner__catch{
    text-align: center;
  }

  .cs-stronger-banner__problem{
    text-align: center;

    font-size: clamp(14px, 3.8vw, 22px);
  }

}

.cs-achievement-banner{
  width: 100%;

  overflow: hidden;

  box-sizing: border-box;

  border: 1px solid #d8d8d8;

  background: #fff;
}

/* 上帯 */

.cs-achievement-banner__head{
  background:
    repeating-linear-gradient(
      -45deg,
      #a40000 0px,
      #a40000 6px,
      #b80000 6px,
      #b80000 12px
    );

  padding:
    clamp(14px, 2vw, 26px)
    2vw;

  text-align: center;
}

.cs-achievement-banner__head h2{
  margin: 0;

  font-size: clamp(34px, 5vw, 72px);
  font-weight: 900;
  line-height: 1;

  color: #f5e7b0;

  letter-spacing: 0.04em;

  text-shadow:
    0 1px 0 #fff8d6,
    0 2px 0 #d0b15f,
    0 4px 6px rgba(0,0,0,0.35);
}

/* 下本文 */

.cs-achievement-banner__body{
  padding:
    clamp(18px, 2.2vw, 36px)
    clamp(16px, 2vw, 30px);

  text-align: center;
}

.cs-achievement-banner__lead{
  margin: 0 0 0.5em;

  font-size: clamp(14px, 1.5vw, 24px);
  font-weight: 700;
  line-height: 1.5;

  color: #222;
}

.cs-achievement-banner__text{
  margin: 0;

  font-size: clamp(18px, 2.1vw, 40px);
  font-weight: 900;
  line-height: 1.45;

  color: #222;
}

.cs-achievement-banner__text span{
  color: #c40000;
}

/* SP */

@media (max-width: 768px){

  .cs-achievement-banner__text br{
    display: none;
  }

  .cs-achievement-banner__text{
    line-height: 1.6;
  }

}

.cs-safe-copy{
  width: 100%;
  text-align: center;
  padding: clamp(18px, 3vw, 40px) 16px;
  box-sizing: border-box;
}

.cs-safe-copy p{
  display: inline;
  margin: 0;

  font-size: clamp(24px, 4vw, 54px);
  font-weight: 900;
  line-height: 1.45;

  color: #222;

  background:
    linear-gradient(
      transparent 62%,
      #d8f3fb 62%,
      #d8f3fb 82%,
      transparent 82%
    );

  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.cs-stronger-feature{
  width: 100%;
  display: flex;
  align-items: stretch;
  border: 1px solid #d9d2c8;
  background: #fff;
  box-sizing: border-box;
  overflow: hidden;
}

.cs-stronger-feature__image{
  width: 50%;
}

.cs-stronger-feature__image img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.cs-stronger-feature__list{
  width: 50%;
  display: flex;
  flex-direction: column;
}

.cs-stronger-feature__item{
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;

  gap: 0.2em;

  text-align: center;

  padding:
    clamp(14px, 1.6vw, 28px)
    clamp(10px, 1.4vw, 22px);

  font-size: clamp(15px, 1.45vw, 28px);
  font-weight: 700;
  line-height: 1.35;

  color: #333;

  background: #f4f1eb;
  border-bottom: 1px solid #d9d2c8;

  box-sizing: border-box;
}

.cs-stronger-feature__item:nth-child(even){
  background: #ece7df;
}

.cs-stronger-feature__item:last-child{
  border-bottom: none;
}

.cs-stronger-feature__item span{
  color: #d10000;
  font-weight: 900;
  white-space: nowrap;
}

.cs-stronger-feature__item small{
  margin-left: 0.35em;
  font-size: 0.42em;
  color: #666;
  white-space: nowrap;
}

@media (max-width: 768px){
  .cs-stronger-feature{
    flex-direction: column;
  }

  .cs-stronger-feature__image,
  .cs-stronger-feature__list{
    width: 100%;
  }

  .cs-stronger-feature__item{
    font-size: clamp(15px, 4vw, 22px);
  }
}

/* カテゴリページ　ここから */

.cs-stronger-page{
  width:100%;
  max-width:100%;
  font-family:sans-serif;
  color:#1a1a1a;
  line-height:1.8;
  background:#fff;
}

.cs-stronger-page *{
  box-sizing:border-box;
}

.cs-stronger-page img{
  max-width:100%;
  height:auto;
  display:block;
}

/* COMMON */

.cs-stronger-page .cs-section{
  padding:0;
}

.cs-stronger-page .cs-white-wrap,
.cs-stronger-page .cs-gray-wrap{
  padding:clamp(28px,4vw,56px) 20px;
}

.cs-stronger-page .cs-white-wrap{
  background:#fff;
}

.cs-stronger-page .cs-gray-wrap{
  background:#eeeeee;
}

.cs-stronger-page .cs-inner{
  max-width:1120px;
  margin:0 auto;
  padding:0;
}

.cs-stronger-page .cs-eyebrow{
  font-size:13px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#888;
  margin:0 0 18px;
}

.cs-stronger-page .cs-title{
  font-size:clamp(26px,3.5vw,42px);
  line-height:1.35;
  margin:0 0 24px;
  font-weight:700;
}

.cs-stronger-page .cs-lead{
  font-size:17px;
  max-width:860px;
}

.cs-stronger-page .cs-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(28px,5vw,64px);
  align-items:center;
}

.cs-stronger-page .cs-image-placeholder{
  min-height:320px;
  border:1px solid #ccc;
  background:#f3f3f3;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#555;
  text-align:center;
  padding:20px;
}

/* HERO */

.cs-stronger-page .cs-hero{
  width:100%;
  background:#111;
}

.cs-stronger-page .cs-hero__frame{
  position:relative;
  width:100%;
  overflow:hidden;
}

.cs-stronger-page .cs-hero__image{
  width:100%;
}

.cs-stronger-page .cs-hero__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.38) 45%,rgba(0,0,0,.08));
  pointer-events:none;
}

.cs-stronger-page .cs-hero__inner{
  position:absolute;
  z-index:2;
  left:clamp(24px,6vw,72px);
  top:50%;
  transform:translateY(-50%);
  width:min(62%,760px);
  color:#fff;
}

.cs-stronger-page .cs-hero .cs-eyebrow{
  color:rgba(255,255,255,.72);
}

.cs-stronger-page .cs-hero h1{
  white-space: nowrap;
  font-size: clamp(14px, 4vw, 48px);
  margin:0;
  font-size:clamp(28px,5vw,72px);
  line-height:1.08;
  color:#fff;
}

.cs-stronger-page .cs-hero__lead{
  margin-top:28px;
  max-width:680px;
  font-size:clamp(13px,1.35vw,18px);
  line-height:1.9;
  color:rgba(255,255,255,.92);
}

.cs-stronger-page .cs-hero__badges,
.cs-stronger-page .cs-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.cs-stronger-page .cs-hero__badges{margin-top:30px;}
.cs-stronger-page .cs-buttons{margin-top:34px;}

.cs-stronger-page .cs-badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.32);
  background:rgba(255,255,255,.10);
  font-size:12px;
  color:#fff;
}

.cs-stronger-page .cs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:200px;
  min-height:54px;
  padding:0 24px;
  text-decoration:none;
  font-weight:700;
}

.cs-stronger-page .cs-btn--primary{background:#fff;color:#111;}
.cs-stronger-page .cs-btn--secondary{border:1px solid rgba(255,255,255,.45);color:#fff;}

/* GRIDS */

.cs-stronger-page .cs-trust-grid,
.cs-stronger-page .cs-feature-grid,
.cs-stronger-page .cs-sustain-grid,
.cs-stronger-page .cs-product-grid,
.cs-stronger-page .cs-use-grid,
.cs-stronger-page .cs-journal-grid{
  display:grid;
  gap:22px;
}

/* TRUST */

.cs-stronger-page .cs-trust{
  text-align:center;
}

.cs-stronger-page .cs-trust-title{
  font-size:clamp(34px,6vw,72px);
  line-height:1.15;
  margin:0 0 48px;
}

.cs-stronger-page .cs-trust-grid{
  grid-template-columns:repeat(3,1fr);
  max-width:900px;
  margin:0 auto;
}

.cs-stronger-page .cs-trust-item,
.cs-stronger-page .cs-use,
.cs-stronger-page .cs-product-card,
.cs-stronger-page .cs-journal-card{
  border:1px solid #ddd;
  background:#fff;
}

.cs-stronger-page .cs-trust-item,
.cs-stronger-page .cs-use,
.cs-stronger-page .cs-journal-card{
  padding:24px;
}

/* FEATURES / PRODUCTS / USE / JOURNAL */

.cs-stronger-page .cs-feature-grid,
.cs-stronger-page .cs-product-grid,
.cs-stronger-page .cs-use-grid,
.cs-stronger-page .cs-journal-grid{
  margin-top:36px;
}

.cs-stronger-page .cs-feature-grid,
.cs-stronger-page .cs-product-grid,
.cs-stronger-page .cs-journal-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.cs-stronger-page .cs-use-grid{
  grid-template-columns:repeat(4,1fr);
}

.cs-stronger-page .cs-feature{
  border-top:2px solid #111;
  padding-top:18px;
}

.cs-stronger-page .cs-feature h3,
.cs-stronger-page .cs-use h3,
.cs-stronger-page .cs-journal-card h3{
  margin:0 0 10px;
  font-size:18px;
}

.cs-stronger-page .cs-feature p,
.cs-stronger-page .cs-use p,
.cs-stronger-page .cs-journal-card p{
  margin:0;
  font-size:15px;
}

.cs-stronger-page .cs-product-card__body{
  padding:20px;
}

.cs-stronger-page .cs-product-card h3{
  font-size:20px;
  margin:0 0 10px;
}

.cs-stronger-page .cs-product-card p{
  font-size:15px;
  margin:0 0 16px;
}

.cs-stronger-page .cs-product-card a{
  color:#111;
  font-weight:700;
}

.cs-product-card a{
  color: inherit;
  text-decoration: none;
}

.cs-product-card p{
  font-weight: 400;
}

.cs-product-card:hover h3{
  text-decoration: underline;
}
/* SUSTAINABLE */

.cs-stronger-page .cs-sustain-wrap{
  background:#111;
  color:#fff;
  padding:clamp(48px,7vw,96px) 20px;
}

.cs-stronger-page .cs-sustain-wrap .cs-title{color:#fff;}
.cs-stronger-page .cs-sustain-wrap .cs-lead{color:#ddd;margin-bottom:56px;}

.cs-stronger-page .cs-sustain-grid{
  grid-template-columns:repeat(3,1fr);
}

.cs-stronger-page .cs-sustain-card{
  background:#fff;
  color:#111;
  overflow:hidden;
}

.cs-stronger-page .cs-sustain-image{
  min-height:220px;
  background:#f3f3f3;
}

.cs-stronger-page .cs-sustain-body{
  padding:28px;
}

/* TABLE */

.cs-stronger-page .cs-table-wrap{
  overflow-x:auto;
  margin-top:32px;
}

.cs-stronger-page .cs-table{
  width:100%;
  min-width:760px;
  border-collapse:collapse;
}

.cs-stronger-page .cs-table th,
.cs-stronger-page .cs-table td{
  border:1px solid #ddd;
  padding:15px;
  text-align:left;
}

.cs-stronger-page .cs-table th{
  background:#111;
  color:#fff;
}

/* JOURNAL */

.cs-stronger-page .cs-journal-card{
  position:relative;
  transition:.25s;
}

.cs-stronger-page .cs-journal-card__link{
  position:absolute;
  inset:0;
  z-index:1;
}

.cs-stronger-page .cs-journal-card h3,
.cs-stronger-page .cs-journal-card p{
  position:relative;
  z-index:2;
  pointer-events:none;
  color:#111;
}

/* JOURNAL 関連コンテンツ hover */

.cs-stronger-page .cs-journal-card{
  cursor:pointer;
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease,
    background-color .25s ease;
}

.cs-stronger-page .cs-journal-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  border-color:#bbb;
  background:#fff;
}

.cs-stronger-page .cs-journal-card:hover h3{
  text-decoration:underline;
  text-underline-offset:4px;
}

/* FAQ */

.cs-stronger-page .cs-faq{
  max-width:900px;
  margin-top:32px;
}

.cs-stronger-page .cs-faq-item{
  border-top:1px solid #ddd;
}

.cs-stronger-page .cs-faq-item:last-child{
  border-bottom:1px solid #ddd;
}

.cs-stronger-page .cs-faq-toggle{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.cs-stronger-page .cs-faq-question{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:22px 0;
  cursor:pointer;
  font-size:17px;
  font-weight:700;
  color:#111;
}

.cs-stronger-page .cs-faq-question span{
  position:relative;
  width:18px;
  height:18px;
  flex:0 0 18px;
}

.cs-stronger-page .cs-faq-question span::before,
.cs-stronger-page .cs-faq-question span::after{
  content:"";
  position:absolute;
  background:#111;
}

.cs-stronger-page .cs-faq-question span::before{
  top:8px;
  width:18px;
  height:2px;
}

.cs-stronger-page .cs-faq-question span::after{
  left:8px;
  width:2px;
  height:18px;
}

.cs-stronger-page .cs-faq-toggle:checked + .cs-faq-question span::after{
  opacity:0;
}

.cs-stronger-page .cs-faq-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.cs-stronger-page .cs-faq-toggle:checked + .cs-faq-question + .cs-faq-answer{
  max-height:300px;
}

.cs-stronger-page .cs-faq-answer p{
  margin:0;
  padding:0 0 24px;
  font-size:15px;
  line-height:1.9;
}

/* FINAL CTA */

.cs-stronger-page .cs-final-cta-wrap{
  background:#111;
  color:#fff;
  text-align:center;
  padding:clamp(48px,7vw,96px) 20px;
}

.cs-stronger-page .cs-final-cta-wrap .cs-title{color:#fff;}
.cs-stronger-page .cs-final-cta-wrap p{max-width:720px;margin:0 auto 30px;}

/* RESPONSIVE */

@media (max-width:900px){
  .cs-stronger-page .cs-grid-2,
  .cs-stronger-page .cs-feature-grid,
  .cs-stronger-page .cs-product-grid,
  .cs-stronger-page .cs-use-grid,
  .cs-stronger-page .cs-journal-grid,
  .cs-stronger-page .cs-trust-grid,
  .cs-stronger-page .cs-sustain-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:768px){
  .cs-stronger-page .cs-hero__inner{
    left:22px;
    right:22px;
    width:auto;
  }

  .cs-stronger-page .cs-buttons{
    flex-direction:column;
  }

  .cs-stronger-page .cs-btn{
    width:100%;
  }
}

@media (max-width:640px){
  .cs-stronger-page .cs-grid-2,
  .cs-stronger-page .cs-feature-grid,
  .cs-stronger-page .cs-product-grid,
  .cs-stronger-page .cs-use-grid,
  .cs-stronger-page .cs-journal-grid,
  .cs-stronger-page .cs-trust-grid,
  .cs-stronger-page .cs-sustain-grid{
    grid-template-columns:1fr;
  }

  .cs-stronger-page .cs-hero__badges{
    display:none;
  }
}

.cs-stronger-page .cs-use-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.cs-stronger-page .cs-use-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-width:72px;
  min-height:72px;
  padding:10px;

  border:1px solid #ddd;
  border-radius:14px;

  background:#fff;

  text-decoration:none;
  color:#111;

  font-size:14px;
  font-weight:700;

  transition:.2s;
}

.cs-stronger-page .cs-use-link:hover{
  background:#111;
  color:#fff;
}

/* カテゴリページ　ここまで */

/* JOURNAL ここから */

/* =========================
   WRAP
========================= */

div.cs-journal{
  width:100% !important;
  max-width:920px !important;

  margin:0 auto !important;
  padding:32px 20px 72px !important;

  color:#222 !important;

  font-size:16px !important;
  line-height:2 !important;
  letter-spacing:.03em !important;

  box-sizing:border-box !important;
}

div.cs-journal *{
  box-sizing:border-box !important;
}

/* =========================
   RESET
========================= */

div.cs-journal p,
div.cs-journal ul,
div.cs-journal li,
div.cs-journal h1,
div.cs-journal h2,
div.cs-journal h3{
  margin-top:0 !important;
}

/* =========================
   HERO
========================= */

div.cs-journal__hero{
  margin:0 0 72px !important;
  padding:0 0 40px !important;

  border-bottom:1px solid #ddd !important;
}

div.cs-journal__eyebrow{
  margin:0 0 18px !important;

  color:#777 !important;

  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}

div.cs-journal__hero h1{
  margin:0 0 28px !important;

  color:#111 !important;

  font-size:clamp(34px,5vw,56px) !important;
  line-height:1.28 !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
}

div.cs-journal__lead{
  max-width:760px !important;

  color:#444 !important;

  font-size:18px !important;
  line-height:2 !important;
}

/* =========================
   BODY
========================= */

div.cs-journal__body{
  margin:0 !important;
}

/* =========================
   H2
========================= */

div.cs-journal__body h2{
  margin:72px 0 22px !important;
  padding:0 0 14px !important;

  color:#111 !important;

  font-size:clamp(28px,3vw,42px) !important;
  line-height:1.45 !important;
  font-weight:700 !important;

  border-bottom:2px solid #111 !important;
}

div.cs-journal__body h2:first-child{
  margin-top:0 !important;
}

/* =========================
   H3
========================= */

div.cs-journal__body h3{
  margin:42px 0 16px !important;
  padding-left:14px !important;

  color:#111 !important;

  font-size:clamp(20px,2vw,28px) !important;
  line-height:1.5 !important;
  font-weight:700 !important;

  border-left:4px solid #111 !important;
}

/* =========================
   P
========================= */

div.cs-journal__body p{
  margin:0 0 1.2em !important;
  padding:0 !important;

  font-size:16px !important;
  line-height:2.1 !important;
}

/* =========================
   UL
========================= */

div.cs-journal__body ul{
  list-style:none !important;

  margin:24px 0 32px !important;
  padding:22px 26px !important;

  background:#f7f7f7 !important;
  border-radius:10px !important;
}

/* =========================
   LI
========================= */

div.cs-journal__body li{
  position:relative !important;

  margin:0 0 10px !important;
  padding:0 0 0 1.4em !important;

  line-height:1.9 !important;
}

div.cs-journal__body li:last-child{
  margin-bottom:0 !important;
}

div.cs-journal__body li::before{
  content:"" !important;

  position:absolute !important;
  left:0 !important;
  top:.82em !important;

  width:6px !important;
  height:6px !important;

  background:#111 !important;
  border-radius:50% !important;
}

/* =========================
   TABLE
========================= */

div.cs-journal__tableWrap{
  overflow-x:auto !important;

  margin:32px 0 40px !important;
}

table.cs-journal__table{
  width:100% !important;
  min-width:720px !important;

  border-collapse:collapse !important;

  background:#fff !important;
}

table.cs-journal__table th,
table.cs-journal__table td{
  padding:16px 18px !important;

  border:1px solid #ddd !important;

  text-align:left !important;
  vertical-align:top !important;

  font-size:15px !important;
  line-height:1.8 !important;
}

table.cs-journal__table th{
  background:#111 !important;
  color:#fff !important;

  font-weight:700 !important;
}

/* =========================
   RELATED
========================= */

div.cs-journal__related{
  margin:96px 0 0 !important;
  padding:56px 0 0 !important;

  border-top:1px solid #ddd !important;
}

div.cs-journal__related h2{
  margin:0 0 28px !important;

  color:#111 !important;

  font-size:clamp(26px,3vw,40px) !important;
  line-height:1.4 !important;
}

div.cs-journal__cards{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
}

a.cs-journal__card{
  display:block !important;

  padding:24px !important;

  border:1px solid #ddd !important;
  border-radius:10px !important;

  background:#fff !important;

  color:#111 !important;
  text-decoration:none !important;

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease !important;
}

a.cs-journal__card:hover{
  transform:translateY(-4px) !important;

  border-color:#111 !important;

  box-shadow:
    0 10px 24px rgba(0,0,0,.08) !important;
}

a.cs-journal__card h3{
  margin:0 0 12px !important;
  padding:0 !important;

  border:none !important;

  font-size:20px !important;
  line-height:1.5 !important;

  color:#111 !important;
}

a.cs-journal__card p{
  margin:0 !important;

  color:#555 !important;

  font-size:14px !important;
  line-height:1.9 !important;
}

/* =========================
   SP
========================= */

@media screen and (max-width:768px){

  div.cs-journal{
    padding:24px 16px 56px !important;

    font-size:15px !important;
    line-height:1.95 !important;
  }

  div.cs-journal__hero{
    margin-bottom:56px !important;
    padding-bottom:32px !important;
  }

  div.cs-journal__hero h1{
    margin-bottom:22px !important;

    font-size:36px !important;
    line-height:1.35 !important;
  }

  div.cs-journal__lead{
    font-size:16px !important;
    line-height:2 !important;
  }

  div.cs-journal__body h2{
    margin:56px 0 18px !important;

    font-size:30px !important;
  }

  div.cs-journal__body h3{
    margin:34px 0 14px !important;

    font-size:22px !important;
  }

  div.cs-journal__body p{
    font-size:15px !important;
    line-height:2 !important;
  }

  div.cs-journal__body ul{
    padding:18px 20px !important;
  }

  div.cs-journal__cards{
    grid-template-columns:1fr !important;
  }

  a.cs-journal__card{
    padding:20px !important;
  }

}
/* JOURNAL ここまで */
/* 関連商材 ここから */
.related-product {
  display: block;
  overflow: hidden;
}

.related-product__image {
  margin: 0 0 1em;
}

.related-product__image img {
  width: 100%;
  height: auto;
  display: block;
}

.related-product__body {
  padding: 0;
}
/* 関連商材 ここまで */
/* 商品横並び5列 ここから */
.cs-size-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(160px, 1fr));
  gap: 18px;
  margin: 40px 0;
  padding: 0;
  list-style: none;
}

.cs-size-grid--1{
  grid-template-columns:minmax(320px,700px);
  justify-content:center;
}

.cs-size-grid--2{
  grid-template-columns:repeat(2,minmax(160px,1fr));
}

.cs-size-grid--3{
  grid-template-columns:repeat(3,minmax(160px,1fr));
}

.cs-size-grid--4{
  grid-template-columns:repeat(4,minmax(160px,1fr));
}

.cs-size-grid--5{
  grid-template-columns:repeat(5,minmax(160px,1fr));
}

.cs-size-item {
  margin: 0;
  min-width: 0;
}

.cs-size-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 18px;
  background: #fff;
  text-decoration: none;
  color: #222;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  transition: 0.25s ease;
}

.cs-size-item a:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.12);
}

.cs-size-item img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 18px;
}

.cs-size-storage {
  margin-bottom: 18px;
  padding: 14px 10px;
  border-radius: 5px;
  background: #66696d;
  text-align: center;
  color: #fff;
}

.cs-size-storage__title {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 700;
}

.cs-size-storage__text {
  display: block;
  font-size: 15px;
  line-height: 1.8;
  font-weight: 700;
}

.cs-size-item h4 {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.4;
  color: #4da3d9;
  font-weight: 700;
}

.cs-size-item p {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
}

.cs-size-item img{
  width:100%;
  max-width:180px;
  aspect-ratio:1/1;
  object-fit:contain;
  margin:0 auto 18px;
}

/* スマホでも5個横並び。画面幅が足りない場合は横スクロール */
@media (max-width: 768px) {
  .cs-size-grid {
    grid-template-columns: repeat(5, 150px);
    overflow-x: auto;
    gap: 12px;
    padding-bottom: 12px;
    -webkit-overflow-scrolling: touch;
  }

  .cs-size-item a {
    padding: 12px;
  }

  .cs-size-storage {
    padding: 10px 6px;
  }

  .cs-size-storage__title {
    font-size: 12px;
  }

  .cs-size-storage__text {
    font-size: 13px;
  }

  .cs-size-item h3 {
    font-size: 14px;
  }

  .cs-size-item p {
    font-size: 12px;
    line-height: 1.7;
  }

.cs-size-grid--1{
    grid-template-columns:minmax(0, 320px);
    justify-content:center;
    overflow-x:visible;
  }

  .cs-size-grid--2{
  grid-template-columns:repeat(2,1fr);
}

.cs-size-grid--3{
  grid-template-columns:repeat(3,150px);
  overflow-x:auto;
}

.cs-size-grid--4{
  grid-template-columns:repeat(4,150px);
  overflow-x:auto;
}

.cs-size-grid--5{
  grid-template-columns:repeat(5,150px);
  overflow-x:auto;
}
}
/* 商品横並び5列 ここまで */
.shoplogo img,
.folding_header .shoplogo img {
    width: 180px;
    max-width: 180px;
}

@media screen and (min-width: 600px) {
    .shoplogo img,
    .folding_header .shoplogo img {
        width: auto;
        max-width: 260px;
        max-height: 80px;
    }
}
/* カテゴリページ　ここから */

.cs-stronger-page{
  width:100%;
  max-width:100%;
  font-family:sans-serif;
  color:#1a1a1a;
  line-height:1.8;
  background:#fff;
}

.cs-stronger-page *{
  box-sizing:border-box;
}

.cs-stronger-page img{
  max-width:100%;
  height:auto;
  display:block;
}

/* COMMON */

.cs-stronger-page .cs-section{
  padding:0;
}

.cs-stronger-page .cs-white-wrap,
.cs-stronger-page .cs-gray-wrap{
  padding:clamp(28px,4vw,56px) 20px;
}

.cs-stronger-page .cs-white-wrap{
  background:#fff;
}

.cs-stronger-page .cs-gray-wrap{
  background:#eeeeee;
}

.cs-stronger-page .cs-inner{
  max-width:1120px;
  margin:0 auto;
  padding:0;
}

.cs-stronger-page .cs-eyebrow{
  font-size:13px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#888;
  margin:0 0 18px;
}

.cs-stronger-page .cs-title{
  font-size:clamp(26px,3.5vw,42px);
  line-height:1.35;
  margin:0 0 24px;
  font-weight:700;
}

.cs-stronger-page .cs-lead{
  font-size:17px;
  max-width:860px;
}

.cs-stronger-page .cs-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(28px,5vw,64px);
  align-items:center;
}

.cs-stronger-page .cs-image-placeholder{
  min-height:320px;
  border:1px solid #ccc;
  background:#f3f3f3;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#555;
  text-align:center;
  padding:20px;
}

/* HERO */

.cs-stronger-page .cs-hero{
  width:100%;
  background:#111;
}

.cs-stronger-page .cs-hero__frame{
  position:relative;
  width:100%;
  overflow:hidden;
}

.cs-stronger-page .cs-hero__image{
  width:100%;
}

.cs-stronger-page .cs-hero__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.38) 45%,rgba(0,0,0,.08));
  pointer-events:none;
}

.cs-stronger-page .cs-hero__inner{
  position:absolute;
  z-index:2;
  left:clamp(24px,6vw,72px);
  top:50%;
  transform:translateY(-50%);
  width:min(62%,760px);
  color:#fff;
}

.cs-stronger-page .cs-hero .cs-eyebrow{
  color:rgba(255,255,255,.72);
}

.cs-stronger-page .cs-hero h1{
  white-space: nowrap;
  font-size: clamp(14px, 4vw, 48px);
  margin:0;
  font-size:clamp(28px,5vw,72px);
  line-height:1.08;
  color:#fff;
}

.cs-stronger-page .cs-hero__lead{
  margin-top:28px;
  max-width:680px;
  font-size:clamp(13px,1.35vw,18px);
  line-height:1.9;
  color:rgba(255,255,255,.92);
}

.cs-stronger-page .cs-hero__badges,
.cs-stronger-page .cs-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.cs-stronger-page .cs-hero__badges{margin-top:30px;}
.cs-stronger-page .cs-buttons{margin-top:34px;}

.cs-stronger-page .cs-badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.32);
  background:rgba(255,255,255,.10);
  font-size:12px;
  color:#fff;
}

.cs-stronger-page .cs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:200px;
  min-height:54px;
  padding:0 24px;
  text-decoration:none;
  font-weight:700;
}

.cs-stronger-page .cs-btn--primary{background:#fff;color:#111;}
.cs-stronger-page .cs-btn--secondary{border:1px solid rgba(255,255,255,.45);color:#fff;}

/* GRIDS */

.cs-stronger-page .cs-trust-grid,
.cs-stronger-page .cs-feature-grid,
.cs-stronger-page .cs-sustain-grid,
.cs-stronger-page .cs-product-grid,
.cs-stronger-page .cs-use-grid,
.cs-stronger-page .cs-journal-grid{
  display:grid;
  gap:22px;
}

/* TRUST */

.cs-stronger-page .cs-trust{
  text-align:center;
}

.cs-stronger-page .cs-trust-title{
  font-size:clamp(34px,6vw,72px);
  line-height:1.15;
  margin:0 0 48px;
}

.cs-stronger-page .cs-trust-grid{
  grid-template-columns:repeat(3,1fr);
  max-width:900px;
  margin:0 auto;
}

.cs-stronger-page .cs-trust-item,
.cs-stronger-page .cs-use,
.cs-stronger-page .cs-product-card,
.cs-stronger-page .cs-journal-card{
  border:1px solid #ddd;
  background:#fff;
}

.cs-stronger-page .cs-trust-item,
.cs-stronger-page .cs-use,
.cs-stronger-page .cs-journal-card{
  padding:24px;
}

/* FEATURES / PRODUCTS / USE / JOURNAL */

.cs-stronger-page .cs-feature-grid,
.cs-stronger-page .cs-product-grid,
.cs-stronger-page .cs-use-grid,
.cs-stronger-page .cs-journal-grid{
  margin-top:36px;
}

.cs-stronger-page .cs-feature-grid,
.cs-stronger-page .cs-product-grid,
.cs-stronger-page .cs-journal-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.cs-stronger-page .cs-use-grid{
  grid-template-columns:repeat(4,1fr);
}

.cs-stronger-page .cs-feature{
  border-top:2px solid #111;
  padding-top:18px;
}

.cs-stronger-page .cs-feature h3,
.cs-stronger-page .cs-use h3,
.cs-stronger-page .cs-journal-card h3{
  margin:0 0 10px;
  font-size:18px;
}

.cs-stronger-page .cs-feature p,
.cs-stronger-page .cs-use p,
.cs-stronger-page .cs-journal-card p{
  margin:0;
  font-size:15px;
}

.cs-stronger-page .cs-product-card__body{
  padding:20px;
}

.cs-stronger-page .cs-product-card h3{
  font-size:20px;
  margin:0 0 10px;
}

.cs-stronger-page .cs-product-card p{
  font-size:15px;
  margin:0 0 16px;
}

.cs-stronger-page .cs-product-card a{
  color:#111;
  font-weight:700;
}
.cs-product-card a{
  color: inherit;
  text-decoration: none;
}

.cs-product-card p{
  font-weight: 400;
}

.cs-product-card:hover h3{
  text-decoration: underline;
}
/* SUSTAINABLE */

.cs-stronger-page .cs-sustain-wrap{
  background:#111;
  color:#fff;
  padding:clamp(48px,7vw,96px) 20px;
}

.cs-stronger-page .cs-sustain-wrap .cs-title{color:#fff;}
.cs-stronger-page .cs-sustain-wrap .cs-lead{color:#ddd;margin-bottom:56px;}

.cs-stronger-page .cs-sustain-grid{
  grid-template-columns:repeat(3,1fr);
}

.cs-stronger-page .cs-sustain-card{
  background:#fff;
  color:#111;
  overflow:hidden;
}

.cs-stronger-page .cs-sustain-image{
  min-height:220px;
  background:#f3f3f3;
}

.cs-stronger-page .cs-sustain-body{
  padding:28px;
}

/* TABLE */

.cs-stronger-page .cs-table-wrap{
  overflow-x:auto;
  margin-top:32px;
}

.cs-stronger-page .cs-table{
  width:100%;
  min-width:760px;
  border-collapse:collapse;
}

.cs-stronger-page .cs-table th,
.cs-stronger-page .cs-table td{
  border:1px solid #ddd;
  padding:15px;
  text-align:left;
}

.cs-stronger-page .cs-table th{
  background:#111;
  color:#fff;
}

/* JOURNAL */

.cs-stronger-page .cs-journal-card{
  position:relative;
  transition:.25s;
}

.cs-stronger-page .cs-journal-card__link{
  position:absolute;
  inset:0;
  z-index:1;
}

.cs-stronger-page .cs-journal-card h3,
.cs-stronger-page .cs-journal-card p{
  position:relative;
  z-index:2;
  pointer-events:none;
  color:#111;
}

/* FAQ */

.cs-stronger-page .cs-faq{
  max-width:900px;
  margin-top:32px;
}

.cs-stronger-page .cs-faq-item{
  border-top:1px solid #ddd;
}

.cs-stronger-page .cs-faq-item:last-child{
  border-bottom:1px solid #ddd;
}

.cs-stronger-page .cs-faq-toggle{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.cs-stronger-page .cs-faq-question{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:22px 0;
  cursor:pointer;
  font-size:17px;
  font-weight:700;
  color:#111;
}

.cs-stronger-page .cs-faq-question span{
  position:relative;
  width:18px;
  height:18px;
  flex:0 0 18px;
}

.cs-stronger-page .cs-faq-question span::before,
.cs-stronger-page .cs-faq-question span::after{
  content:"";
  position:absolute;
  background:#111;
}

.cs-stronger-page .cs-faq-question span::before{
  top:8px;
  width:18px;
  height:2px;
}

.cs-stronger-page .cs-faq-question span::after{
  left:8px;
  width:2px;
  height:18px;
}

.cs-stronger-page .cs-faq-toggle:checked + .cs-faq-question span::after{
  opacity:0;
}

.cs-stronger-page .cs-faq-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.cs-stronger-page .cs-faq-toggle:checked + .cs-faq-question + .cs-faq-answer{
  max-height:300px;
}

.cs-stronger-page .cs-faq-answer p{
  margin:0;
  padding:0 0 24px;
  font-size:15px;
  line-height:1.9;
}

/* FINAL CTA */

.cs-stronger-page .cs-final-cta-wrap{
  background:#111;
  color:#fff;
  text-align:center;
  padding:clamp(48px,7vw,96px) 20px;
}

.cs-stronger-page .cs-final-cta-wrap .cs-title{color:#fff;}
.cs-stronger-page .cs-final-cta-wrap p{max-width:720px;margin:0 auto 30px;}

/* RESPONSIVE */

@media (max-width:900px){
  .cs-stronger-page .cs-grid-2,
  .cs-stronger-page .cs-feature-grid,
  .cs-stronger-page .cs-product-grid,
  .cs-stronger-page .cs-use-grid,
  .cs-stronger-page .cs-journal-grid,
  .cs-stronger-page .cs-trust-grid,
  .cs-stronger-page .cs-sustain-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:768px){
  .cs-stronger-page .cs-hero__inner{
    left:22px;
    right:22px;
    width:auto;
  }

  .cs-stronger-page .cs-buttons{
    flex-direction:column;
  }

  .cs-stronger-page .cs-btn{
    width:100%;
  }
}

@media (max-width:640px){
  .cs-stronger-page .cs-grid-2,
  .cs-stronger-page .cs-feature-grid,
  .cs-stronger-page .cs-product-grid,
  .cs-stronger-page .cs-use-grid,
  .cs-stronger-page .cs-journal-grid,
  .cs-stronger-page .cs-trust-grid,
  .cs-stronger-page .cs-sustain-grid{
    grid-template-columns:1fr;
  }

  .cs-stronger-page .cs-hero__badges{
    display:none;
  }
}

.cs-stronger-page .cs-use-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.cs-stronger-page .cs-use-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-width:72px;
  min-height:72px;
  padding:10px;

  border:1px solid #ddd;
  border-radius:14px;

  background:#fff;

  text-decoration:none;
  color:#111;

  font-size:14px;
  font-weight:700;

  transition:.2s;
}

.cs-stronger-page .cs-use-link:hover{
  background:#111;
  color:#fff;
}

/* カテゴリページ　ここまで */

/* =========================
   JOURNAL ARTICLE STYLE
========================= */

/* =========================================
   OCHANOKO JOURNAL RESET
   本体CSSを強制上書き
========================================= */

/* ラッパー */
div.cs-journal{
  width:100% !important;
  max-width:880px !important;
  margin:0 auto !important;
  padding:24px 20px 56px !important;

  color:#222 !important;
  font-size:16px !important;
  line-height:2 !important;
  letter-spacing:.03em !important;
}

/* 全要素 */
div.cs-journal *{
  box-sizing:border-box !important;
}

/* -----------------
   本体側の余白リセット
------------------ */

div.cs-journal p,
div.cs-journal ul,
div.cs-journal li,
div.cs-journal h2,
div.cs-journal h3{
  margin-top:0 !important;
}

/* -----------------
   P
------------------ */

div.cs-journal p{
  margin:0 0 1em !important;
  padding:0 !important;

  font-size:16px !important;
  line-height:2 !important;
}

/* -----------------
   H2
------------------ */

div.cs-journal h2{
  margin:48px 0 18px !important;
  padding:0 0 12px !important;

  font-size:clamp(26px,3vw,40px) !important;
  line-height:1.45 !important;
  font-weight:700 !important;

  border-bottom:2px solid #111 !important;
}

div.cs-journal h2:first-child{
  margin-top:0 !important;
}

/* -----------------
   H3
------------------ */

div.cs-journal h3{
  margin:28px 0 12px !important;
  padding-left:14px !important;

  font-size:clamp(20px,2vw,28px) !important;
  line-height:1.5 !important;
  font-weight:700 !important;

  border-left:4px solid #111 !important;
}

/* -----------------
   LEAD
------------------ */

div.cs-journal .lead{
  margin:0 0 36px !important;
  padding:22px 26px !important;

  background:#f5f5f5 !important;
  border-left:4px solid #111 !important;
  border-radius:6px !important;
}

div.cs-journal .lead p:last-child{
  margin-bottom:0 !important;
}

/* -----------------
   UL
------------------ */

div.cs-journal ul{
  list-style:none !important;

  margin:18px 0 24px !important;
  padding:18px 22px !important;

  background:#f7f7f7 !important;
  border-radius:8px !important;
}

/* -----------------
   LI
------------------ */

div.cs-journal li{
  position:relative !important;

  margin:0 0 8px !important;
  padding:0 0 0 1.3em !important;

  line-height:1.8 !important;
}

div.cs-journal li:last-child{
  margin-bottom:0 !important;
}

/* 黒丸 */

div.cs-journal li::before{
  content:"" !important;

  position:absolute !important;
  left:0 !important;
  top:.78em !important;

  width:6px !important;
  height:6px !important;

  background:#111 !important;
  border-radius:50% !important;
}

/* -----------------
   SUMMARY
------------------ */

div.cs-journal .summary-box{
  margin-top:42px !important;
  padding:28px !important;

  background:#111 !important;
  color:#fff !important;

  border-radius:10px !important;
}

div.cs-journal .summary-box h2{
  color:#fff !important;
  border-bottom:1px solid rgba(255,255,255,.25) !important;
}

div.cs-journal .summary-box ul{
  background:rgba(255,255,255,.08) !important;
}

div.cs-journal .summary-box li::before{
  background:#fff !important;
}

/* -----------------
   SP
------------------ */

@media screen and (max-width:768px){

  div.cs-journal{
    padding:18px 16px 42px !important;

    font-size:15px !important;
    line-height:1.9 !important;
  }

  div.cs-journal p{
    font-size:15px !important;
  }

  div.cs-journal h2{
    margin:38px 0 14px !important;
    font-size:30px !important;
  }

  div.cs-journal h3{
    margin:24px 0 10px !important;
    font-size:21px !important;
  }

  div.cs-journal .lead{
    margin-bottom:28px !important;
    padding:18px !important;
  }

  div.cs-journal ul{
    padding:16px 18px !important;
  }

  div.cs-journal .summary-box{
    padding:22px 18px !important;
  }

}

.cs-journal {
  max-width: 880px;
  margin: 0 auto;
  padding: 28px 20px 56px;
  color: #222;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.03em;
}

.cs-journal * {
  box-sizing: border-box;
}

/* -------------------------
   Heading
------------------------- */

.cs-journal h2 {
  margin: 52px 0 18px;
  padding: 0 0 12px;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.45;
  font-weight: 700;
  border-bottom: 2px solid #111;
}

.cs-journal h2:first-child {
  margin-top: 0;
}

.cs-journal h3 {
  margin: 34px 0 14px;
  padding-left: 14px;
  font-size: clamp(19px, 2.2vw, 24px);
  line-height: 1.5;
  font-weight: 700;
  border-left: 4px solid #111;
}

/* -------------------------
   Paragraph
------------------------- */

.cs-journal p {
  margin: 0 0 1em;
}

/* -------------------------
   Lead
------------------------- */

.cs-journal .lead {
  margin: 0 0 36px;
  padding: 22px 24px;
  background: #f5f5f5;
  border-left: 4px solid #111;
  border-radius: 6px;
}

.cs-journal .lead p:last-child {
  margin-bottom: 0;
}

/* -------------------------
   List
------------------------- */

.cs-journal ul {
  list-style: none;
  margin: 18px 0 24px !important;
  padding: 18px 22px !important;
  background: #f7f7f7;
  border-radius: 8px;
}

.cs-journal li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 1.3em;
  line-height: 1.8;
}

.cs-journal li:last-child {
  margin-bottom: 0;
}

.cs-journal li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.78em;
  width: 6px;
  height: 6px;
  background: #111;
  border-radius: 50%;
}

/* -------------------------
   Summary Box
------------------------- */

.cs-journal .summary-box {
  margin-top: 48px;
  padding: 28px;
  background: #111;
  color: #fff;
  border-radius: 10px;
}

.cs-journal .summary-box h2 {
  margin-top: 0;
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,0.25);
}

.cs-journal .summary-box ul {
  background: rgba(255,255,255,0.08);
}

.cs-journal .summary-box li::before {
  background: #fff;
}

/* -------------------------
   Responsive
------------------------- */

@media screen and (max-width: 768px) {

  .cs-journal {
    padding: 22px 16px 48px;
    font-size: 15px;
    line-height: 1.9;
  }

  .cs-journal h2 {
    margin: 42px 0 16px;
  }

  .cs-journal h3 {
    margin: 28px 0 12px;
    font-size: 20px;
  }

  .cs-journal .lead {
    margin-bottom: 28px;
    padding: 18px 18px;
  }

  .cs-journal ul {
    margin: 16px 0 22px !important;
    padding: 16px 18px !important;
  }

  .cs-journal .summary-box {
    padding: 22px 18px;
  }

}

/* JOURNAL 関連コンテンツ hover */

.cs-stronger-page .cs-journal-card{
  cursor:pointer;
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease,
    background-color .25s ease;
}

.cs-stronger-page .cs-journal-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  border-color:#bbb;
  background:#fff;
}

.cs-stronger-page .cs-journal-card:hover h3{
  text-decoration:underline;
  text-underline-offset:4px;
}
/* =========================
   JOURNAL contents style　ここまで
========================= */

/* 頑丈な業務用～　ここから */

.cs-home-use-block{
  align-items:center;
  gap:clamp(28px,5vw,64px);
}

.cs-home-use-head{
  margin-bottom:clamp(28px,4vw,48px);
  text-align:center;
}

.cs-home-use-title{
  margin:0;
  font-size:clamp(14px,4vw,48px);
  line-height:1.6;
  font-weight:800;
  letter-spacing:.04em;
  color:#222;
}

.cs-home-use-title span{
  display:inline;
  padding:0 .12em;
  background:
    linear-gradient(
      transparent 68%,
      #d9f3fb 68%
    );
  white-space:nowrap;
}

.cs-home-use-image img{
  width:100%;
  height:auto;
  display:block;
}

.cs-home-use-points{
  border:2px solid #d7d0c5;
  background:#fff;
}

.cs-home-use-point{
  display:flex;
  align-items:center;
  justify-content:center;

  min-height:118px;
  padding:22px 18px;

  text-align:center;

  border-bottom:1px solid #d7d0c5;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #f2eee7 100%
    );
}

.cs-home-use-point:last-child{
  border-bottom:none;
}

.cs-home-use-point p{
  margin:0;
  font-size:clamp(18px,2vw,30px);
  line-height:1.55;
  font-weight:800;
  letter-spacing:.02em;
  color:#222;
}

.cs-home-use-point strong{
  color:#c60018;
  font-weight:900;
}

.cs-home-use-note{
  display:block;
  margin-top:4px;

  font-size:clamp(12px,1vw,15px);
  line-height:1.4;
  font-weight:400;
  color:#555;
}

@media (max-width:768px){

  .cs-home-use-block{
    grid-template-columns:1fr !important;
  }

  .cs-home-use-head{
    margin-bottom:28px;
  }

  .cs-home-use-title{
    font-size:clamp(17px,4.8vw,26px);
    line-height:1.65;
    letter-spacing:.01em;
  }

  .cs-home-use-title span{
    white-space:nowrap;
  }

  .cs-home-use-point{
    min-height:auto;
    padding:18px 14px;
  }

  .cs-home-use-point p{
    font-size:clamp(17px,5vw,24px);
  }

}
/* 頑丈な業務用～　ここまで */
h2.notoserif {
    text-align: left;
    font-family: 'Noto Serif JP', serif;
    font-family: 'Zen Old Mincho', serif;
    margin-top: 30px;
    font-size: 200%;
    border-bottom: 10px solid #379ec7;
	border-image: linear-gradient(to right, #379ec7, #ffffff) 1;
  }

/* =========================
   POLICY BLOCK
========================= */

.cs-policy-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* 背景画像 */
.cs-policy-bg {
  display: block;
  width: 100%;
  height: auto;
}

/* ボックス */
.cs-policy-box {
  position: absolute;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  width: min(86%, 760px);
  padding: clamp(20px, 4vw, 40px);
  border-radius: 24px;
  background: rgba(255,255,255,0.78);
  backdrop-filter: blur(4px);
  box-sizing: border-box;
  text-align: center;
}

/* タイトル */
.cs-policy-box h2,h3 {
  margin: 0 0 28px;
  font-size: clamp(20px, 2.8vw, 34px);
  line-height: 1.5;
  font-weight: 700;
  text-align: left;
  color: #111;
}

/* 各項目 */
.cs-policy-item {
  margin-bottom: 24px;
}

.cs-policy-item:last-child {
  margin-bottom: 0;
}

/* ラベル */
.cs-policy-label {

  display: inline-block;

  min-width: 220px;

  padding: 10px 28px;

  border-radius: 999px;

  background: #2fa3c7;

  color: #fff;

  font-size: clamp(18px, 2.3vw, 28px);

  line-height: 1.2;

  font-weight: 700;
}

/* 説明文 */
.cs-policy-item p {

  margin: 14px 0 0;

  font-size: clamp(16px, 2vw, 28px);

  line-height: 1.7;

  font-weight: 700;

  color: #111;
}

/* SP */
@media (max-width: 768px) {

  .cs-policy-wrap {
    overflow: visible;
  }

  .cs-policy-box {
    position: static;
    transform: none;

    width: 100%;
    margin-top: 16px;
    padding: 18px 14px;

    background: #f5f5f5;
    border-radius: 18px;
  }

  .cs-policy-bg {
    width: 100%;
    height: auto;
  }

  .cs-policy-box h2 {
    margin-bottom: 16px;
    font-size: 17px;
    line-height: 1.5;
  }

  .cs-policy-item {
    margin-bottom: 16px;
  }

  .cs-policy-label {
    min-width: 130px;
    padding: 6px 12px;
    font-size: 16px;
  }

  .cs-policy-item p {
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.6;
  }
}

.cs-power-point {

  display: flex;
  align-items: center;
  gap: clamp(16px, 3vw, 40px);

  width: 100%;

  padding: clamp(18px, 3vw, 32px);

  background: #fff;

  box-sizing: border-box;
}

/* 赤丸 */
.cs-power-point__icon {
  flex: 0 0 auto;
  width: clamp(80px, 11vw, 170px);
  height: clamp(80px, 11vw, 170px);
  border-radius: 50%;
  background: #d5001c;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(52px, 7vw, 110px);
  font-weight: 900;
  line-height: 1;
}

/* テキスト */
.cs-power-point__text p {
  margin: 0;
  color: #111;
  font-size: clamp(18px,2.8vw,48px);
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: -0.02em;
}

/* =========================
   SP
========================= */

@media (max-width: 768px) {

  .cs-power-point {

    gap: 14px;

    padding: 14px 0;
  }

  .cs-power-point__icon {

    width: 72px;
    height: 72px;

    font-size: 48px;
  }

  .cs-power-point__text p {

    font-size: 20px;

    line-height: 1.45;
  }

}

.cs-note-box {

  width: 100%;
  max-width: 1060px;

  margin: 32px auto;

  padding: clamp(18px, 3vw, 36px)
           clamp(20px, 4vw, 56px);

  border: 2px solid #777;

  background: #fff;

  box-sizing: border-box;
}

.cs-note-box p {

  margin: 0;

  color: #333;

  font-size: clamp(16px, 2.2vw, 34px);

  line-height: 1.7;

  font-weight: 500;

  letter-spacing: .04em;
}
.cs-height-catch {
  width: 100%;
  margin: 32px auto;
  padding: clamp(18px, 3vw, 32px) clamp(8px, 3vw, 40px);
  background: #fff;
  box-sizing: border-box;
  text-align: center;
  overflow: visible;
}

.cs-height-catch img{
  display:block;
  width:100%;
  margin-top:32px;
}

.cs-height-catch p {
  margin: 0;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.04em;
  white-space: nowrap;
  color: #222;
  text-shadow:
    2px 2px 0 #fff,
    -2px 2px 0 #fff,
    2px -2px 0 #fff,
    -2px -2px 0 #fff,
    4px 4px 4px rgba(0,0,0,.28);
}

.cs-height-catch__sub {
  margin-bottom: .18em !important;
  font-size: clamp(20px, 4vw, 56px);
}

.cs-height-catch__main {
  font-size: clamp(22px, 5.4vw, 86px);
}

.cs-height-catch__red {
  color: #c9001b;
}

.cs-height-catch__black {
  color: #222;
}

/* =========================
   FUNCTION GRID
========================= */

.cs-stronger-page .cs-function-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  margin-top:36px;
}
.cs-stronger-page .cs-function-card{
  display:block;
  background:#fff;
  border:1px solid #ddd;
  overflow:hidden;
}
.cs-stronger-page .cs-function-card__body{
  display:block;
  padding:20px;
  background:#fff;
  color:#111;
}
.cs-stronger-page .cs-function-card__body h3{
  display:block;
  margin:0 0 10px;
  padding:0;
  font-size:20px;
  line-height:1.4;
  font-weight:700;
  color:#111;
}
.cs-stronger-page .cs-function-card__body p{
  display:block;
  margin:0;
  padding:0;
  font-size:15px;
  line-height:1.8;
  font-weight:400;
  color:#444;
}
.cs-stronger-page .cs-function-card__image{
  width:100%;
  height:220px;
  overflow:hidden;
  background:#f3f3f3;
}
.cs-stronger-page .cs-function-card__image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.cs-stronger-page .cs-function-card__body{
  display:block;
  padding:20px;
  background:#fff;
  color:#111;
  position:relative;
  z-index:1;
}

/* SP */
@media (max-width:768px){
  .cs-stronger-page .cs-function-grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .cs-stronger-page .cs-function-card__body{
    padding:16px;
  }

  .cs-stronger-page .cs-function-card__body h3{
    font-size:18px;
  }
}

/*見た目は強そうなのに　ココから*/
.cs-comment{
  display:flex;
  align-items:center;
  gap:24px;
  margin:40px 0;
}

.cs-comment__person{
  flex:0 0 clamp(72px, 12vw, 150px);
}

.cs-comment__person img{
  width:100%;
  height:auto;
  display:block;
}

.cs-comment__bubble{
  position:relative;
  flex:1;
  background:#67a9d5;
  color:#fff;
  border-radius:32px;
  padding:clamp(18px, 3vw, 34px) clamp(22px, 4vw, 48px);
}

.cs-comment__bubble::before{
  content:"";
  position:absolute;
  left:-24px;
  top:50%;
  transform:translateY(-50%);
  border-top:18px solid transparent;
  border-bottom:18px solid transparent;
  border-right:24px solid #67a9d5;
}

.cs-comment__bubble h3{
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(24px, 3vw, 44px);
  line-height:1.35;
  font-weight:700;
}

.cs-comment__bubble p{
  margin:0;
  color:#fff;
  font-size:clamp(16px, 2vw, 30px);
  line-height:1.65;
  font-weight:400;
}

@media(max-width:768px){
  .cs-comment{
    gap:14px;
    align-items:flex-start;
  }

  .cs-comment__person{
    flex-basis:64px;
  }

  .cs-comment__bubble{
    border-radius:20px;
    padding:16px 18px;
  }

  .cs-comment__bubble::before{
    left:-14px;
    top:42px;
    transform:none;
    border-top:10px solid transparent;
    border-bottom:10px solid transparent;
    border-right:14px solid #67a9d5;
  }
}
.cs-answer{
  margin:50px 0 20px;
  text-align:center;
}

.cs-answer p{
  margin:0;
  font-weight:900;
  line-height:1.25;
  letter-spacing:-0.03em;
}

.cs-answer__line1{
  font-size:clamp(34px,4vw,68px);
}

.cs-answer__line2{
  margin-top:10px !important;
  font-size:clamp(28px,3.2vw,60px);
}

.cs-answer__black{
  color:#222;
}

.cs-answer__red{
  color:#c9001b;
}

@media (max-width:768px){

  .cs-answer{
    margin:36px 0 10px;
  }

  .cs-answer__line1{
    font-size:clamp(24px,7vw,42px);
  }

  .cs-answer__line2{
    font-size:clamp(20px,5.8vw,36px);
    line-height:1.4;
  }

}
.cs-thickness-message{
  margin:40px 0 0;
  padding:24px 28px;
  border:2px solid #d9d9d9;
  background:#fff;
}

.cs-thickness-message p{
  margin:0 0 1em;
  font-size:clamp(18px,1.6vw,24px);
  line-height:1.9;
  color:#222;
}

.cs-thickness-message p:last-child{
  margin-bottom:0;
}

.cs-red{
  color:#c9001b;
  font-weight:700;
}
/*見た目は強そうなのに　ココまで*/

/*品質基準　ココから*/
.cs-safety-detail{
  max-width:900px;
  margin:0 auto;
  padding:clamp(28px,4vw,52px);
  background:#fff;
  border:1px solid #ddd;
  box-shadow:0 8px 28px rgba(0,0,0,.05);
}

.cs-safety-detail__label{
  margin:0 0 12px;
  color:#888;
  font-size:13px;
  font-weight:700;
  letter-spacing:.16em;
}

.cs-safety-detail__title{
  margin:0 0 24px;
  padding-bottom:14px;
  border-bottom:2px solid #111;
  color:#111;
  font-size:clamp(22px,2.4vw,32px);
  line-height:1.4;
  font-weight:900;
}

.cs-safety-detail__body p,
.cs-safety-detail__point p{
  margin:0 0 1.2em;
  color:#222;
  font-size:clamp(16px,1.4vw,19px);
  line-height:2;
}

.cs-safety-detail strong{
  color:#c9001b;
  font-weight:900;
}

.cs-safety-detail__point{
  margin-top:34px;
  padding:clamp(22px,3vw,34px);
  background:#f5f5f5;
  border-left:6px solid #c9001b;
}

.cs-safety-detail__point h3{
  margin:0 0 16px;
  color:#111;
  font-size:clamp(22px,2.4vw,32px);
  line-height:1.4;
  font-weight:900;
}

.cs-safety-detail__point p:last-child{
  margin-bottom:0;
}

@media(max-width:768px){
  .cs-safety-detail{
    padding:24px 18px;
  }

  .cs-safety-detail__point{
    padding:20px 16px;
  }
}
/*品質基準　ココまで*/

/*組立メリット　ココから*/
.cs-assembly{
  max-width:960px;
  margin:0 auto;
  padding:clamp(28px,4vw,56px);
  background:#fff;
  border:1px solid #ddd;
  box-shadow:0 8px 28px rgba(0,0,0,.05);
}

.cs-assembly__label{
  margin:0 0 12px;
  color:#888;
  font-size:13px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.cs-assembly__title{
  margin:0 0 30px;
  padding-bottom:18px;
  border-bottom:3px solid #111;
  color:#111;
  font-size:clamp(28px,3.5vw,44px);
  line-height:1.4;
  font-weight:900;
}

.cs-assembly__body p{
  margin:0 0 1.2em;
  color:#222;
  font-size:clamp(16px,1.4vw,19px);
  line-height:2;
}

.cs-assembly strong{
  color:#c9001b;
  font-weight:900;
}

.cs-assembly__point{
  margin:34px 0;
  padding:clamp(22px,3vw,34px);
  background:#f5f5f5;
  border-left:6px solid #c9001b;
}

.cs-assembly__point p{
  margin:0 0 1em;
  color:#222;
  font-size:clamp(17px,1.6vw,22px);
  line-height:1.9;
  font-weight:700;
}

.cs-assembly__point p:last-child{
  margin-bottom:0;
}

.cs-assembly__closing{
  margin:34px 0 0;
  padding-top:24px;
  border-top:1px solid #ddd;
  color:#111;
  font-size:clamp(20px,2.3vw,32px);
  line-height:1.6;
  font-weight:900;
  text-align:center;
}

@media(max-width:768px){
  .cs-assembly{
    padding:24px 18px;
  }

  .cs-assembly__point{
    padding:20px 16px;
  }

  .cs-assembly__closing{
    text-align:left;
  }
}
.cs-assembly__media-row{
  display:grid;
  grid-template-columns:3fr 7fr;
  gap:clamp(20px,3vw,36px);
  align-items:center;
  margin:32px 0;
  padding:24px;
  background:#f5f5f5;
}

.cs-assembly__media img{
  width:100%;
  max-width:220px;
  height:auto;
  display:block;
  margin:0 auto;
}

.cs-assembly__media-text p{
  margin:0;
  color:#222;
  font-size:clamp(16px,1.4vw,19px);
  line-height:2;
}

@media(max-width:768px){
  .cs-assembly__media-row{
    grid-template-columns:1fr;
    gap:16px;
    padding:20px 16px;
    text-align:left;
  }

  .cs-assembly__media img{
    max-width:140px;
  }
}
.cs-assembly__package{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(24px,3vw,40px);
  align-items:center;
  margin:32px 0;
}

.cs-assembly__package-image img{
  display:block;
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
  border-radius:6px;
}

.cs-assembly__package-text p{
  margin:0 0 1.2em;
  color:#222;
  font-size:clamp(16px,1.4vw,19px);
  line-height:2;
}

.cs-assembly__package-text p:last-child{
  margin-bottom:0;
}

@media(max-width:768px){

  .cs-assembly__package{
    grid-template-columns:1fr;
    gap:20px;
  }

}
/*組立メリット　ココまで*/

/* 商品横並び5列 ここから */
.cs-size-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(160px, 1fr));
  gap: 18px;
  margin: 40px 0;
  padding: 0;
  list-style: none;
}

.cs-size-grid--1{
  grid-template-columns:minmax(320px,700px);
  justify-content:center;
}

.cs-size-grid--2{
  grid-template-columns:repeat(2,minmax(160px,1fr));
}

.cs-size-grid--3{
  grid-template-columns:repeat(3,minmax(160px,1fr));
}

.cs-size-grid--4{
  grid-template-columns:repeat(4,minmax(160px,1fr));
}

.cs-size-grid--5{
  grid-template-columns:repeat(5,minmax(160px,1fr));
}

.cs-size-item {
  margin: 0;
  min-width: 0;
}

.cs-size-item a {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 18px;
  background: #fff;
  text-decoration: none;
  color: #222;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  transition: 0.25s ease;
}

.cs-size-item a:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.12);
}

.cs-size-item img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 18px;
}

.cs-size-storage {
  margin-bottom: 18px;
  padding: 14px 10px;
  border-radius: 5px;
  background: #66696d;
  text-align: center;
  color: #fff;
}

.cs-size-storage__title {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 700;
}

.cs-size-storage__text {
  display: block;
  font-size: 15px;
  line-height: 1.8;
  font-weight: 700;
}

.cs-size-item h4 {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.4;
  color: #4da3d9;
  font-weight: 700;
}

.cs-size-item p {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
}

.cs-size-item img{
  width:100%;
  max-width:180px;
  aspect-ratio:1/1;
  object-fit:contain;
  margin:0 auto 18px;
}

/* スマホでも5個横並び。画面幅が足りない場合は横スクロール */
@media (max-width: 768px) {
  .cs-size-grid {
    grid-template-columns: repeat(5, 150px);
    overflow-x: auto;
    gap: 12px;
    padding-bottom: 12px;
    -webkit-overflow-scrolling: touch;
  }

  .cs-size-item a {
    padding: 12px;
  }

  .cs-size-storage {
    padding: 10px 6px;
  }

  .cs-size-storage__title {
    font-size: 12px;
  }

  .cs-size-storage__text {
    font-size: 13px;
  }

  .cs-size-item h3 {
    font-size: 14px;
  }

  .cs-size-item p {
    font-size: 12px;
    line-height: 1.7;
  }

.cs-size-grid--1{
    grid-template-columns:minmax(0, 320px);
    justify-content:center;
    overflow-x:visible;
  }

  .cs-size-grid--2{
  grid-template-columns:repeat(2,1fr);
}

.cs-size-grid--3{
  grid-template-columns:repeat(3,150px);
  overflow-x:auto;
}

.cs-size-grid--4{
  grid-template-columns:repeat(4,150px);
  overflow-x:auto;
}

.cs-size-grid--5{
  grid-template-columns:repeat(5,150px);
  overflow-x:auto;
}
}
/* 商品横並び5列 ここまで */

/* PROFESSIONAL USE ここから */

.cs-stronger-page .cs-trust{
  text-align:center;
}

.cs-stronger-page .cs-trust-title{
  margin:12px 0 24px;
  font-size:clamp(38px,5vw,72px);
  line-height:1.2;
  font-weight:900;
}

.cs-stronger-page .cs-trust-lead{
  max-width:860px;
  margin:0 auto 46px;
  font-size:clamp(16px,1.4vw,20px);
  line-height:2;
  color:#333;
}

.cs-stronger-page .cs-trust-grid{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:0 auto;
}

.cs-stronger-page .cs-trust-card{
  display:flex;
  align-items:center;
  gap:20px;
  min-height:170px;
  padding:26px 24px;
  background:#fff;
  border:1px solid #e6e6e6;
  box-sizing:border-box;
}

.cs-stronger-page .cs-trust-icon{
  flex:0 0 112px;
  width:112px;
  height:112px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.cs-stronger-page .cs-trust-icon img{
  width:112px;
  height:112px;
  max-width:none;
  object-fit:contain;
  display:block;
}

.cs-stronger-page .cs-trust-content{
  flex:1;
  min-width:0;
  text-align:left;
}

.cs-stronger-page .cs-trust-content h3{
  margin:0 0 8px;
  padding:0;
  border:none;
  color:#111;
  font-size:20px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:0;
}

.cs-stronger-page .cs-trust-content p{
  margin:0;
  color:#333;
  font-size:14px;
  line-height:1.75;
  letter-spacing:0;
}

/* tablet */
@media(max-width:1100px){
  .cs-stronger-page .cs-trust-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .cs-stronger-page .cs-trust-card{
    min-height:160px;
  }
}

/* smartphone */
@media(max-width:768px){
  .cs-stronger-page .cs-trust-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .cs-stronger-page .cs-trust-card{
    gap:18px;
    min-height:auto;
    padding:20px 18px;
  }

  .cs-stronger-page .cs-trust-icon{
    flex:0 0 86px;
    width:86px;
    height:86px;
  }

  .cs-stronger-page .cs-trust-icon img{
    width:86px;
    height:86px;
  }

  .cs-stronger-page .cs-trust-content h3{
    font-size:20px;
  }

  .cs-stronger-page .cs-trust-content p{
    font-size:14px;
    line-height:1.7;
  }
}

/* PROFESSIONAL USE ここまで */

/* 簡単組立 ココから*/
.cs-easy-assembly{
  background:#fff;
  border:1px solid #ddd;
  overflow:hidden;
}

.cs-easy-assembly__top{
  margin:0;
  padding:14px 20px;
  background:#5ba4c8;
  color:#fff;
  text-align:center;
  font-size:clamp(20px,2.4vw,34px);
  line-height:1.4;
  font-weight:900;
}

.cs-easy-assembly__grid{
  display:grid;
  grid-template-columns:42% 58%;
  gap:clamp(24px,4vw,54px);
  align-items:center;
  padding:clamp(24px,4vw,48px);
}

.cs-easy-assembly__text{
  position:relative;
}

.cs-easy-assembly__text h2,h3{
  margin:0 0 28px;
  color:#222;
  font-size:clamp(38px,5vw,72px);
  line-height:1.25;
  font-weight:900;
  letter-spacing:-0.04em;
}

.cs-easy-assembly__text h2,h3 span{
  color:#c9001b;
}

.cs-easy-assembly__time{
  display:inline-block;
  margin:0 0 24px;
  padding:8px 18px;
  background:#67a9d5;
  color:#fff;
  border-radius:12px;
  font-size:clamp(22px,2.5vw,36px);
  font-weight:900;
  transform:rotate(15deg);
}

.cs-easy-assembly__points{
  display:grid;
  gap:16px;
}

.cs-easy-assembly__point{
  padding:18px 20px;
  border:1px solid #ddd;
  background:#f8f8f8;
}

.cs-easy-assembly__point strong{
  display:block;
  margin-bottom:6px;
  color:#c9001b;
  font-size:clamp(18px,1.8vw,26px);
  line-height:1.4;
  font-weight:900;
}

.cs-easy-assembly__point p{
  margin:0;
  color:#333;
  font-size:15px;
  line-height:1.8;
}

.cs-easy-assembly__image img{
  width:100%;
  height:auto;
  display:block;
}

@media(max-width:768px){
  .cs-easy-assembly__grid{
    grid-template-columns:1fr;
    padding:22px 16px;
  }

  .cs-easy-assembly__text h2{
    font-size:clamp(34px,10vw,52px);
  }

  .cs-easy-assembly__time{
    transform:none;
  }
}
/* 簡単組立 ココまで */
/* テキストリンク ココから */
.cs-stronger-page p a,
.cs-stronger-page li a{
  color:#222;
  text-decoration:none;
  font-weight:600;
}

.cs-stronger-page p a::after,
.cs-stronger-page li a::after{
  content:" ↗";
  font-size:.85em;
  opacity:.5;
  transition:.2s;
}

.cs-stronger-page p a:hover::after,
.cs-stronger-page li a:hover::after{
  opacity:1;
}
/* テキストリンク ココまで */
/* ABOUT CHROME STYLE ココから*/
/* =========================================
   MAKER SECTION
========================================= */

/* OUR EXPERIENCEカード */

.cs-maker-card h3{
  margin:0 0 16px;
  font-size:clamp(26px,2.6vw,42px);
  line-height:1.25;
  font-weight:900;
  letter-spacing:-0.03em;
  color:#222;
}

.cs-maker-number{
  margin:0 0 8px;
  color:#777;
  font-size:18px;
  font-weight:700;
}

/* PRODUCT POLICY */

.cs-maker-message{
  margin:80px 0;
  padding:48px;
  background:#f7f7f7;
  border-radius:12px;
}

.cs-maker-message__label{
  margin:0 0 12px;
  font-size:14px;
  font-weight:700;
  color:#666;
  letter-spacing:.08em;
}

.cs-maker-message h3{
  margin:0 0 24px;
  font-size:clamp(34px,3.4vw,52px);
  line-height:1.25;
  font-weight:900;
  letter-spacing:-0.03em;
  color:#222;
}

.cs-maker-message p{
  margin:0 0 1.2em;
  font-size:17px;
  line-height:2;
}

.cs-maker-message p:last-child{
  margin-bottom:0;
}

/* ABOUT CHROME STYLE */

.cs-maker-profile{
  margin-top:80px;
}

.cs-maker-profile__content h3{
  margin:0 0 20px;
  font-size:clamp(30px,2.8vw,42px);
  line-height:1.3;
  font-weight:900;
  letter-spacing:-0.03em;
  color:#222;
}

.cs-maker-profile__content p{
  margin:0 0 1.2em;
  font-size:17px;
  line-height:2;
}

/* テキストリンク */

.cs-text-link{
  display:inline-block;
  margin-top:10px;
  color:#222;
  font-weight:700;
  text-decoration:none;
}

.cs-text-link:hover{
  text-decoration:underline;
}

/* ロゴ */

.cs-maker-logo{
  display:block;
  width:fit-content;
  margin:28px auto 0;
}

.cs-maker-logo img{
  display:block;
  width:min(320px,80vw);
  height:auto;
}

@media (max-width:768px){

  .cs-maker-message{
    margin:56px 0;
    padding:28px 20px;
  }

  .cs-maker-card h3{
    font-size:30px;
    line-height:1.3;
  }

  .cs-maker-message h3{
    font-size:34px;
    line-height:1.3;
  }

  .cs-maker-profile__content h3{
    font-size:30px;
    line-height:1.3;
  }

  .cs-maker-profile__content p,
  .cs-maker-message p{
    font-size:16px;
    line-height:1.9;
  }

}
/* ABOUT CHROME STYLE ココまで*/