@charset "utf-8";
/* CSS Document */

/********************************************************************/

/* HTMLタグ要素 */

/********************************************************************/

body {
    padding: 0px;
    margin: 0px;
    background-color: #FFFFFF;
    color: #333333;
}

.responsive body,
.responsive select,
.responsive input,
.responsive button,
.responsive textarea,
.responsive button {
	font-family: 'Local Roboto', 'Roboto', 'Local Noto Sans JP', 'Noto Sans JP', sans-serif;
}

.responsive body .inner_global_nav .nav_btn,
.responsive body .inner_global_nav .header_nav_item {
	letter-spacing: 0;
}

A,
A:link,
A:visited, 
A:hover,
A:active {
    color: #333333;
    text-decoration: none;
    font-weight: bold;
    outline: none;
}

.use_hover A:hover {
    color: #666666;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    margin-bottom: 5px;
}

h1 {
    font-size: 161.6%;
}

h2 {
    font-size: 146.5%;
}

h3 {
    font-size: 131%;
}

h4 {
    font-size: 123.1%;
}

h5 {
    font-size: 116%;
}

h6 {
    font-size: 108%;
}


/********************************************************************/

/* 大外 */

/********************************************************************/

#container {
    font-size: 108%;
}

.single_layout.responsive .fix_center {
	max-width: 1200px;
}

.responsive .has_min_nav .fix_center {
	max-width: 980px;
}


/********************************************************************/

/* トップページコンテンツ間余白 */

/********************************************************************/

.main_box {
    margin-bottom: 50px;
}

.module_box .toggle_opened {
	margin: 0px;
}

.side_box {
    margin-bottom: 50px;
}


/********************************************************************/

/* キャッチフレーズ欄 */

/********************************************************************/

/* キャッチフレーズ */
.responsive .copy {
    max-width: 100%!important;
    text-align: center;
    min-height: 18px;
    padding: 5px;
    font-size: 85%;
    background-color: #000000;
	color: #FFFFFF;
}

/* レスポンシブ横幅400px以上指定 */
@media screen and (min-width: 400px) {
	.responsive #header_wrapper:not(.folding_header) .fix_center.copy {
		margin-bottom: 10px;
	}
}

.copy A {
    color: #FFFFFF;
    text-decoration: underline;
}

.use_hover .copy A:hover {
    color: #CCCCCC;
    text-decoration: underline;
}


/********************************************************************/

/* ヘッダー */

/********************************************************************/

#header_wrapper:not(.folding_header, .min_header) {
	background-color: #FFFFFF;
}

#header {
    position: relative;
	background-color: #FFFFFF;
}

.responsive #inner_header {
	align-items: center;
}

.folding_header {
    background-color: #FFFFFF;
}

.folding_header .global_nav_item .nav_btn, .folding_header .popup_nav_item .nav_btn {
	font-weight: normal;
}

.responsive #inner_header {
	padding: 5px 0px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive #inner_header {
		padding: 10px;
	}
}


/********************************************************************/

/* ショップ名 */

/********************************************************************/

/* ショップ名ロゴ */
.shoplogo {
    padding: 5px 0px;
}

.single_layout .shoplogo {
	  padding-left: 5px;
}

.shoplogo img {
	width: 120px;
    max-width: 120px;
}

/* レスポンシブ横幅400px以上指定 */
@media screen and (min-width: 400px) {
    .shoplogo img {
		width: 160px;
		max-width: 160px;
    }
}

.use_hover .shoplogo A:hover img {
    opacity: 0.8;
}

/* ショップ名テキスト */
.shoptext {
    padding: 5px 0px;
    min-height: 40px;
    margin-right: auto;
}

.shoptext A {
    font-size: 116%;
    margin: 0px;
}


/********************************************************************/

/* 文字サイズ */

/********************************************************************/

.font_setting {
    padding: 5px 5px 10px;
    text-align: center;
}

.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 {
	font-size: 13px;
}

/* 普通サイズボタン */
.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%;
}

.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 {
	font-size: 10px;
	padding-top: 5px;
}

.header_right {
	display: flex;
	align-items: center;
	justify-content: center;
}


/*************************************************************/

/* 検索 */

/*************************************************************/


/*************************************************************/

/* グローバルナビゲーション */

/*************************************************************/

.global_nav {
    background-color: #FFFFFF;
}

#header_wrapper:not(.folding_header) .inner_global_nav {
	padding-top: 8px;
	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 #FFFFFF;
	background-color: #FFFFFF;
	color: #000000;
	font-weight: 500;
	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;
}

/* 各ナビゲーション区切り線 */
#container:not(.use_folding_header) .inner_global_nav .global_nav_item:not(:last-child) > .nav_btn::after {
	content: "";
	width: 1px;
	height: 25px;
	background-color: #E0DFE3;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.ocnk005 #container:not(.use_folding_header) .inner_global_nav .global_nav_item:not(:last-child) > .nav_btn::after {
	height: 15px;
}

.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) {
	.responsive .inner_global_nav A.nav_btn {
		padding: 10px;
		font-size: 108%;
	}
	
	.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: 131%;
	}

	.global_nav_item:first-child .nav_btn {
		border-left: none;
	}

	#container:not(.use_folding_header) .inner_global_nav .global_nav_item:not(:last-child) > .nav_btn::after,
	#container.use_folding_header .inner_global_nav .global_nav_item:not(:last-child) > .nav_btn::after,
	.ocnk005 .inner_global_nav .global_nav_item:not(:last-child) > .nav_btn::after {
		content: "";
		width: 1px;
		height: 15px;
		background-color: #E0DFE3;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	#container:not(.use_folding_header) .inner_global_nav .global_nav_item:has( + .g_search:last-child) > .nav_btn::after {
		display: none;
	}
}

/* レスポンシブ横幅1200px以上指定 */
@media screen and (min-width: 1200px) {
	#header_wrapper:not(.folding_header) .inner_global_nav {
		padding: 5px;
  }
}


/********************************************************************/

/* 開閉ナビゲーション */

/********************************************************************/

.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: 500;
}

.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;
}


/********************************************************************/

/* カテゴリ、特集ナビゲーション */

/********************************************************************/

.itemlist_nav {
    margin-top: 15px;
}

/* 各ナビゲーション */
.inner_itemlist_nav .nav_btn {
    background-color: #FFFFFF;
    border-bottom: 1px solid #E0DFE3;
	padding: 15px 10px 15px 25px;
    color: #000000;
    font-weight: 500;
}

.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;
}


/********************************************************************/

/* サイドメニュー */

/********************************************************************/

/* サイドメニュー枠 */
.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;
	margin-top: -8px;
}

.nav_btn .fa-chevron-down.right_side_nav_icon {
	right: 12px;
}

.nav_btn .fa-chevron-right.right_side_nav_icon {
	left: 10px;
	right: auto;
}

.title_toggle_link .right_side_nav_icon {
	right: 12px;
}

/* サイドカテゴリ一覧 */
.side_itemlist_nav {
    padding: 0px 1px;
}

/* サブカテゴリ　第二階層 */
.side_itemlist_nav .sub_menu_link {
    padding: 10px 10px 10px 24px;
}

.side_box:not(:where(.side_sub_menu_hover)) .side_itemlist_nav .sub_menu_link {
	background-color: transparent;
	border: none;
	margin-left: 5px;
	padding: 8px 10px 8px 25px;
}

.side_box:not(.side_sub_menu_hover) .side_itemlist_nav .sub_menu_link_list {
    margin-top: 8px;
	margin-bottom: 8px;
}

/* サブカテゴリ背景 */
.side_itemlist_nav .sub_menu_link {
    background-color: #F9F9F9;
    border-top: none;
    border-bottom: 1px solid #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: #F5F5F5;
}

.responsive .footer_nav {
	padding-top: 30px;
}

/* 各ナビゲーション */
.footer_nav_item .nav_btn {
    border-bottom: 1px solid #E0DFE3;
	padding: 10px 10px 10px 25px;
}

.use_hover .footer_area .nav_btn:hover {
    border-bottom: 1px solid #666666;
}


/********************************************************************/

/* タイトル */

/********************************************************************/

.page_title h1,
.page_title h2,
.main_box h2 {
    background-color: transparent;
}

.page_title h1 .title_text,
.page_title h2 .title_text,
.main_box h2 .title_text {
    display: inline-block;
	position: relative;
	z-index: 1;	
}

.page_title h1.detail_page_title .title_text {
    padding-left: 0px;
	padding-right: 0px;	
}

.lower_link_box .main_box .section_title h2 .title_text {
    display: inline;
	background-color: transparent;
	padding: 0px;
}

.side_box h2,
.main_box h2 {
    padding: 10px;
    margin-bottom: 10px;
    color: #000000;
    font-size: 20px;
    font-weight: 600;
}

.lower_link_box .main_box .section_title h2 {
	background-color: #F5F5F5;
	padding: 10px;
	margin-top: 0px;
	margin-bottom: 0px;
	text-align: left;
	font-size: 123.1%;
}

.main_desc {
    margin-bottom: 10px;
}

.main_desc li {
    text-align: left;
}


/********************************************************************/

/* 第二階層タイトル */

/********************************************************************/

/* 第二階層各ページタイトル */
.page_box .page_title h1,
.page_box .page_title h2,
.page_box .recently .section_title h2,
.page_box .use_emphasis_title .section_title h2 {
    padding: 10px;
    margin-bottom: 10px;
	color: #000000;
}

.has_min_nav .page_title h2 {
	  text-align: center;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.has_min_nav .page_title h2 {
		margin-top: 20px;
		margin-bottom: 20px;
	}
}

/* 商品詳細ページタイトル */
.itemdetail .page_title h1 {
    background-color: transparent;
	text-align: left;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.has_left_side_menu:not(:has(.hidden_specified_side_menu)) .itemdetail .page_title h1 {
		padding-left: 0px;;
	}
}

/* 記事ページタイトル */
.pwhatnew .page_title h1,
.pdiary .page_title h1 {
    margin-bottom: 0px;
}


/********************************************************************/

/* 第二階層サブタイトル */

/********************************************************************/

/* 各ページサブタイトル */
.page_box .section_title h2,
.page_box .section_title h3 {
    border-bottom: 1px solid #E0DFE3;
    padding: 10px;
    color: #000000;
}

.page_box .recently .section_title h2 {
	border: none;
}

.page_box .use_emphasis_title .section_title h2 {
    background-color: transparent;
	padding: 10px 0px;	
}

.page_box.shoppingcart .section_title h3,
.page_box.mypage .section_title h3,
.page_box.help .section_title h3,
.page_box.recipient_list .section_title h3,
.page_box.mypage_recipient_form .section_title h3 {
    background-color: #F5F5F5;
    border: none;
    border-radius: 0;
    padding: 10px;
	margin-bottom: 10px;
}

.page_box .contents_box .page_title_right_edge h3, 
.page_box .contents_box .section_title_right_edge h3 {
    padding-right: 100px;
}

.page_box #cart_preview .section_title h3 {
    background-color: #F5F5F5;
    border: none;
    border-radius: 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.page_box.shoppingcart .section_title h3,
	.page_box.help .section_title h3,
	.page_box #cart_preview .section_title h3,
	.page_box.recipient_list .section_title h3,
	.page_box.mypage_recipient_form .section_title h3 {
		padding: 12px;
	}
}

.page_box .help_contents .section_title h4 {
    margin-top: 10px;
}

.page_box .section_title h4 {
    padding: 10px 5px;
	border-bottom: 1px solid #E0DFE3;
}

.page_box .page_contents .search_result_title h3 {
    margin-top: 10px;
}


/********************************************************************/

/* 第二階層小項目タイトル */

/********************************************************************/

.contents_title {
    padding: 10px;
	background-color: #F5F5F5;
    font-weight: 500;
    font-size: 108%;
    color: #000000;
}

.rules_title {
    font-weight: bold;
}


/********************************************************************/

/* フォームタイトル */

/********************************************************************/

.form_title {
    border-bottom: 1px solid #E0DFE3;
    padding: 10px 3px 5px;
    font-weight: 700;
    font-size: 116%;
    color: #000000;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.shoppingcart_contents #cart_recipient .form_title {
		font-weight: 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 #E0DFE3;
}

.form_inner_title {
    border-bottom: 1px solid #E0DFE3;
    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: 150px;
	min-width: max-content;
    border-top: none;
    margin: 30px auto;
    text-align: center;
}

.layout_column_text .more_item {
    margin-top: 30px;
}

.more_item .general_btn {
	background-color: #FFFFFF;
	padding: 10px;
	font-weight: 500;
	display: block;
	border-radius: 5px;
	line-height: 100%;
}

/* 写真のみ文字サイズ */
.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 #E0DFE3;
    padding: 15px 5px 15px 10px;
}

.itemlist_box.layout_column_text .list_item_box {
	align-items: flex-start;
}

.itemlist_box.layout_column_text .list_item_link:not(.flex_column) .list_item_data {
	min-height: 100%;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.layout_column_text .list_item_box,
	.layout_text .not_link {
		padding: 15px 0px;
	}
}

.list_item_data p.item_desc {
    color: #000000;
}


/*--------------------------------------*/

/* 商品一覧  */

/*--------------------------------------*/

/* 商品、記事一覧マウスオーバー */
.use_hover .item_list .item_data_link:hover,
.use_hover .item_list .list_item_link:hover {
    opacity: 0.7;
}

/* 商品名 */
.item_name {
    font-weight: 600;
}

.list_item_data p.item_name {
    margin-bottom: 3px;
}

/* 販売価格 */
.price {
    padding: 2px 0px;
    color: #000000;
    font-weight: 700;
}

.price .selling_price,
.price .regular_price {
    padding: 2px 0px;
}

.selling_price .tax_label {
    font-weight: 400;
	margin-left: 1px;
}

/* 通常販売価格 */
.price .regular_price {
    color: #000000;
    font-weight: normal;
    display: block;
}

.item_box .text_layout .regular_price {
    display: inline;
}

/* 希望小売価格、税込価格 */
.item_box .retail_price,
.item_box .tax_incl_price {
	font-size: 93%;
    color: #555555;
    font-weight: normal;
    word-break: normal;
}

.item_box .retail_price {
	margin-top: 5px;
}

.retail_price .price_label:empty {
	display: none;
}

/* 在庫あり */
.stock {
    color: #555555;
    font-size: 90%;
}

/* 在庫僅か */
.lowstock {
    color: #D43B55;
}

/* 在庫なし */
.soldout,
.variation_stock_list .data_table .soldout {
    color: #777777;
}

/* 商品一覧ランキング */
.rankno {
    display: block;
    width: 40px;
    min-width: auto;
    margin: auto;
    background-color: #F5F5F5;
    color: #000000;
    font-size: 10px;
}

.rankno1 {
    background-color: #BBB447;
    color: #FFFFFF;
}

.rankno2 {
    background-color: #A7A7A7;
	color: #FFFFFF;
}

.rankno3 {
    background-color: #B4643A;
	color: #FFFFFF;
}


/*--------------------------------------*/

/* 記事一覧  */

/*--------------------------------------*/

/* タイトル */
.list_subject {
    padding: 5px 0px;
}

/* 日付 */
.date {
    color: #000000;
    font-size: 93%;
    font-weight: normal;
}


/*--------------------------------------*/

/* ソート */

/*--------------------------------------*/

.sort_box {
    padding: 5px;
    margin: 3px;
    border-bottom: 1px solid #E0DFE3;
}

.sort_item .global_btn {
    padding: 5px;
    text-align: center;
}

/* 件数 */
.item_count {
	padding: 10px 10px 0;
    font-size: 93%;
}


/********************************************************************/

/* 写真 */

/********************************************************************/

#photo {
    padding: 10px 10px 0;
}

.use_folding_header #photo {
	padding: 0 10px;
}

#photo .fix_center {
    max-width: 100%;
}

#photo .item_image_box img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	#photo {
		padding: 15px 15px 0px;
	}

	.use_folding_header #photo {
		padding: 0 15px;
	}

	#photo .item_image_box img {
		height: 500px;
	}
}


/********************************************************************/

/* スライド */

/********************************************************************/

/* スライド送りボタン */
.slider_box .swiper-pagination-bullet,
.swipe_list .pointer span {
    border: 1px solid #E0DFE3;
}

/* 現スライド */
.slider_box .swiper-pagination-bullet-active,
.swipe_list .pointer span.current {
    background-color: #000000;
    border: 1px solid #000000;
}

#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;
}

/* 前へ、次へアイコン */
.swipe_list .pointer_box span.pointer_prev,
.swipe_list .pointer_box span.pointer_next,
.swiper-button-prev,
.swiper-button-next {
    width: 25px;
    height: 25px;
    background-color: #FFFFFF;
    border-radius: 50%;
    display: inline-block;
    cursor: pointer;
}

.use_hover .swiper-button-prev:hover,
.use_hover .swiper-button-next:hover {
    background-color: #E0DFE3;
}

.use_hover .slider_box .swiper-button-disabled:hover {
    background-color: #F5F5F5;
}

/* 前へアイコン画像 */
.swipe_list .pointer_box span.pointer_prev,
.swiper-button-prev {
    background-image: url(img/icon_prev.gif);
    -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.gif);
    -webkit-background-size: 25px 25px;
    background-size: 25px 25px;
}


/********************************************************************/

/* 第二階層 */

/********************************************************************/

.page_box {
    color: #000000;
}

.has_min_nav .inner_page_contents,
.legal_page_body .tablayout_navigation,
.help_page_body .inner_page_contents,
.review_page_body .inner_page_contents {
	padding: 0px 8px;
}

/* 共通説明 */
.page_desc {
    padding: 10px;
}

/* 共通ボックス */
.global_info {
    background-color: #F9F9F9;
    padding: 10px;
}


/********************************************************************/

/* 商品詳細 */

/********************************************************************/

/* 商品情報　各ブロック */
.detail_section,
.detail_block_stock .detail_section {
    border-bottom: 1px solid #E0DFE3;
	padding: 10px;
}

.detail_block_price .detail_section:not(.option_point) {
	padding: 5px;
}

.detail_inner_box.custom_toggle_box,
.custom_toggle_box .detail_inner_box {
	transition: .3s;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.detail_section,
	.detail_block_stock .detail_section {
		padding: 15px;
	}
	
	.detail_block_price .detail_section:not(.option_point) {
		padding: 0px;
	}
}

.detail_section.add_cart {
	border-bottom: none;
	text-align: center;
	margin: 10px 0px;
}

/* 商品情報　商品名 */
.detail_item_data h1,
.detail_item_data .item_name {
	font-size: 131%;
	font-weight: bold;
	padding: 0 10px;
	margin-top: 20px;
	margin-bottom: 10px;
}

.itemdetail .section_title h2 {
	font-size: 116%;
}

.itemdetail .custom_toggle_box .section_title h2 {
	padding: 15px 25px 15px 10px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.detail_item_data h1,
	.detail_item_data .item_name {
		font-size: 146.5%;
		margin-top: 10px;
	}

	.itemdetail .section_title h2 {
		font-size: 131%;
		padding-left: 5px;
	}

	.itemdetail .custom_toggle_box .section_title h2 {
		padding: 10px 5px;
	}
}

/* 商品詳細　価格エリアdivタグ間余白 */
.detail_item_data .section_box {
    margin-bottom: 10px;
}

/* 商品詳細　価格エリア項目間余白 */
.detail_item_data .section_box p {
    margin-bottom: 5px;
}

/* 商品詳細　販売価格 */
.detail_item_data .selling_price {
    font-size: 123.1%;
    word-break: normal;
}

/* 商品詳細　販売価格金額 */
.detail_item_data .selling_price .figure {
    font-weight: bold;
}

/* 商品詳細　通常販売価格 */
.detail_item_data .regular_price {
    font-size: 85%;
}

/* 商品詳細　希望小売価格、税込価格 */
.detail_item_data .retail_price,
.detail_item_data .tax_incl_price {
    color: #666666;
    font-weight: normal;
}

/* 商品詳細　販売価格ラベル */
.detail_item_data .selling_price {
    font-weight: normal;
}

/* 商品詳細　在庫 */
.detail_item_data .stock {
    font-size: 108%;
    font-weight: bold;
}

/* 商品情報　商品説明 */
.item_desc {
	padding: 15px;
    margin: 0px;
}

/* 価格変動注意書き */
.price_desc {
    font-size: 77%;
}

/* 商品仕様 */
.detail_spec_data {
	padding: 10px;
    margin: 0px;
}

/* 他の写真枠 */
.other_item_data {
    margin: 0px;
}

.other_item_data .global_photo {
    text-align: center;
}

/* 他の写真説明 */
.other_photo_desc {
    margin: 0px;
}

/* バリエーション在庫表 */
.variation_stock_list {
    margin-bottom: 5px;
}

.variation_stock_list .stocklist_label {
	font-size: 93%;
}

.side_box.diary_category_nav_box h2 {
    background-color: transparent;
}

/* バリエーション、オーダーメイド項目間余白 */
.variation_item,
.order_item {
    padding-top: 10px;
    padding-bottom: 10px;
}

/* オーダーメイド項目 */
.order_item {
    border-bottom: 1px solid #E0DFE3;
}

.order_label {
	padding: 5px 0px;
}

.ordermade .bottompos {
    border-bottom: none;
}

/* バリエーション在庫選択中背景 */
.variation_stock_list .data_table .selected_item {
    background-color: #EFF8FA;
    color: #3484B9;
}

.variation_stock_list .data_table .selected_data {
    background-color: #EFF8FA;
}

.popup_variation_title {
	font-weight: 400;
}


/*--------------------------------------*/
/* バリエーション選択のポップアップ */

/* ポップアップ枠 */
.popup_variation,
.popup_area {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}

.popup_variation_selection,
.popup_section {
    border-bottom: 1px solid #E0DFE3;
}

/* バリエーション項目ボタン */
.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: #EFF8FA;
    border: 2px solid #000000;
    color: #000000;
}

/* 変更、選択してくださいボタン */
.popup_variation_edit_button,
.popup_variation_select_button,
.item_select_operation_button {
    background-color: #E0DFE3;
    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: #EFF8FA;
    color: #000000;
}

.validation_selection_selected_all .variation_selection_msg_text {
    background-color: #666666;
    color: #FFFFFF;
}


/*--------------------------------------*/
/* バリエーション画像 */

.variation_image {
	margin-right: 8px;
}


/*--------------------------------------*/
/* サムネイル写真 */

.thumbnail {
    margin-top: 5px;
}

/* サムネイル写真 */
.thumbnail .thumbnail_btn {
    border: 1px solid #FFFFFF;
}

/* サムネイル写真枠サイズ */
.thumbnail_listbox {
    width: 60px;
}


/*************************************************************/

/* レビュー */

/*************************************************************/

/* レビュー件数 */
.item_info .review_number {
    color: #000000;
}

.large_rating_icon .star_empty,
.large_rating_icon .star_full,
.large_rating_icon .star_half,
.medium_rating_icon .star_empty,
.medium_rating_icon .star_full,
.medium_rating_icon .star_half,
.small_rating_icon .star_empty,
.small_rating_icon .star_full,
.small_rating_icon .star_half {
    background-image: none;
}

.star_icon {
    display: inline-block;
    margin-top: 4px;
    font: normal normal normal 14px/1 FontAwesome;
}

.star_full::before {
    content: "\f005";
}

.star_half {
	position: relative;
}

.star_half::before,
.star_half::after {
	position: absolute;
}

.star_half::before {
    content: "\f005";
}

.star_half::after {
    content: "\f089";
}

.star_empty::before {
    content: "\f005";
}

/* 星の大きさ */
.large_rating_icon .star_icon::before,
.large_rating_icon .star_icon::after {
    font-size: 22px;
}

.large_rating_icon .star_icon {
	width: 25px;
    height: 25px;
}

.medium_rating_icon .star_icon::before,
.medium_rating_icon .star_icon::after {
    font-size: 18px;
}

.medium_rating_icon .star_icon {
	width: 20px;
	height: 20px;
}

.small_rating_icon .star_icon::before,
.small_rating_icon .star_icon::after {
    font-size: 14px;
}

/* 星の色 */
.star_icon::before,
.star_half::after {
    color: #FFC607;
}

.review_register_page_body .review_post_stars img[src$="star_full_x2.png"] {
    background-color: #FFC607;
}

.star_icon.star_empty::before,
.star_half::before {
    color: #E0DFE3;
}

.review_register_page_body .review_post_stars img[src$="star_empty_x2.png"] {
    background-color: #E0DFE3;
}

/* 文字の色 */
.rating_point {
    color: #333333;
	line-height: 100%;
}

.large_rating_icon .rating_point {
    font-size: 153.9%;
}

.medium_rating_icon .rating_point {
    font-size: 138.5%;
}

/* 星ポイント */
.rating_point {
    margin-left: 5px;
    color: #333333;
}

/* レビュー数 */
.review_number:not(.no_review) {
    margin-left: 7px;
}

/* グラフ */
.bar_graph {
    background-color: #FFC607;
}

/* 年代 */
.rating_age {
    font-size: 93%;
}

/* 分析レポート内レビュー数 */
.rating_number A {
    font-size: 93%;
}

/* レビュー一覧 */
.review_data {
    background-color: #F5F5F5;
	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-image: url(img/h2_bg.gif);
    background-repeat: repeat-x;
    background-position: left bottom;
    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 #E0DFE3;
}

/* ショップオーナーヘッダー */
.owner_header {
    font-size: 93%;
	font-weight: 700;
    color: #47ABC5;
}

/* ショップオーナー登録日 */
.owner_postdate {
    display: inline-block;
    margin-left: 5px;
}

/* 参考 */
.review_consult {
	font-size: 85%;
}

/* 参考質問数字 */
.user_number {
    font-size: 123.9%;
    font-weight: bold;
    color: #333333;
}

/* 参考質問ボタン */
.review_vote_btn {
    display: inline-block;
    margin-top: 5px;
	margin-left: 5px;
}

/* 商品一覧レビュー数 */
.item_list .review_number {
    font-size: 85%;
    margin-left: 5px;
}

/* 商品詳細レビュー数 */
.review_list .review_number {
    font-size: 93%;
}

/* 商品詳細レビュー */
.inner_detail_review_area {
    padding: 10px;
}

/* 商品詳細ヘッダー */
.detail_review_header {
    padding-top: 15px;
	padding-bottom: 5px;
}

.detail_review_header .global_btn {
    text-align: center;
}

/* 全て見る */
.more_item .label_suffix {
	margin-top: 3px;
	font-size: 85%;
}

.more_item .label_suffix + .fa {
	vertical-align: middle;
}

/* レビュー一覧 */
.review_item_name {
	font-size: 116%;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.review_item_name {
		font-size: 123.1%;
	}
}

.inner_review_item_data,
.inner_review_list_product_box .add_cart {
	padding: 5px 10px;
}

.inner_review_item_data .large_rating_icon {
	padding: 8px 5px;
}

.product_review_info_area .rating_average,
.rating_average {
	margin: 20px 0px;
}

.inner_rating_average {
	margin: 0px 10px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.product_review_info_area .rating_average,
	.rating_average {
		margin: 0px;
	}

	.inner_rating_average {
		margin: 0px;
	}
}

/* マイページレビュー管理 */
.item_data.review_admin .inner_item_data {
	padding: 20px 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
    .item_data.review_admin .inner_item_data {
		padding: 30px 0;
    }
}

/* マイページレビュー管理ボタン */
.review_admin .global_btn {
    text-align: center;
}

.item_data.review_admin .inner_item_data .box_both_ends_space {
	padding: 5px 5px 0px;
}

.review_admin .review_item_name {
	margin: 5px 0;
	font-size: 108%;
}

.review_list .delete_box .delete_btn_box {
	top: 10px;
}

.review_post_product_box .review_item_data {
	padding-left: 15px;
}


/********************************************************************/

/* ログイン */

/********************************************************************/

.login_page_body #inner_contents,
.mail_auth_page_body #inner_contents {
	  max-width: 680px;
}

.login_page_body #inner_contents #signin_form,
.mail_auth_page_body #inner_contents #mail_auth_form {
	  padding: 0px 5px;
}

.signin_box .form_data .largesize,
#mail_auth_form .form_data .largesize {
	  width: 100%;
	  max-width: none;
}

@media screen and (min-width: 840px) {
	.ocnk009.responsive #shoppingcart_page_step1 #signin_form.contents_box,
	.ocnk009.responsive #shoppingcart_page_step1 #cartregister_form.contents_box {
		margin-bottom: 0px;
	}
}

/* ID、PW枠 */
.signin_box .id_box,
.signin_box .pass_box {
    margin: 0px;
}

/* ID、PWタイトル */
.signin_box .id_title,
.signin_box .pass_title {
    margin-bottom: 10px;
    border-bottom: 1px solid #E0DFE3;
    font-size: 116%;
    font-weight: bold;
}

.signin_box .password .global_link {
    font-size: 85%;
}

/* 新規登録枠 */
#register_form {
    padding-top: 20px;
    border-top: 1px solid #E0DFE3;
}


/********************************************************************/

/* カート */

/********************************************************************/

#shoppingcart_page_step1 .visitor:not(:has(#cart_step)) .shoppingcart_contents {
	max-width: 680px;
	margin: auto;
}

#shoppingcart_page_step1 .visitor:not(:has(#cart_step)) .shoppingcart_contents #signin_form,
#shoppingcart_page_step1 .visitor:not(:has(#cart_step)) .shoppingcart_contents #cartregister_form {
	padding: 0px 5px;
}

/* カートの中身各枠 */
.inner_cart_data {
	padding: 0px;
    margin-bottom: 10px;
    background-color: #FFFFFF;
}

/* 各項目枠 */
.cart_section {
    border-top: 1px solid #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 #000000;
    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: 5px;
    background-color: #F9F9F9;
	font-weight: 700;
}

/* ラジオボタン選択の強調表示 */
.cart_payment_row .form_element,
.ocnk009.responsive .shoppingcart_contents .cart_payment_row .form_element {
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.cart_payment_row .form_element,
    .ocnk009.responsive .shoppingcart_contents .cart_payment_row .form_element {
		padding: 10px 20px 20px;
    }
}

.checked_row,
.ocnk009.responsive .shoppingcart_contents .form_area .checked_row > .form_title,
.ocnk009.responsive .shoppingcart_contents .form_inner_area .checked_row > .form_inner_title,
.ocnk009.responsive .shoppingcart_contents #cart_payment .checked_row .form_title,
.ocnk009.responsive .shoppingcart_contents #cart_payment .cart_payment_row.checked_row,
.ocnk009.responsive .shoppingcart_contents .cart_shipping_row.checked_row {
    background-color: #F8F8F8;
}

.form_area .checked_row > .form_title,
.form_inner_area .checked_row > .form_inner_title {
    color: #000000;
	font-weight: 700;
}

.checked_row .global_info {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
    padding: 10px;
}

/* リピータ向け決済機能用 */
.inner_global_info {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}

/* クーポン/ポイント枠 */
.toggle_box .cart_point,
.toggle_box .box_padding,
.toggle_box .cart_point_notice {
    margin: 1px;
}

/* クーポン/ポイント変更時の金額を更新ボタン欄、強調表示背景 */
.notice_box .form_btn_spad {
    background-color: #EFF8FA;
}

A.edit_entered_card_link:link,
A.edit_entered_card_link:active,
A.edit_entered_card_link:visited {
	text-decoration: underline;
}

A.edit_entered_card_link:hover {
	text-decoration: none;
}


/*************************************************************/

/* ステップ表 */

/*************************************************************/

.step_list {
	width: 100%;
    margin: 10px 0px 15px;
    padding: 0px 2px;
}

/* ステップ表 各枠背景 */
.step_data {
    background-color: #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: #333333;
}

/* ステップ表 文字 */
.step_data span {
    color: #666666;
}

/* ステップ表 ステップ数 */
.step_data .step_number {
    font-weight: 500;
	font-size: 9px;
}

/* ステップ表 現ページ文字 */
.step_check .step_data span {
    color: #FFFFFF;
	font-weight: 700;
}


/********************************************************************/

/* 最新情報、店長日記 */

/********************************************************************/

/* 日付 */
.article_date {
    border-bottom: 1px solid #E0DFE3;
    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 #E0DFE3;
	font-size: 93%;
}

.use_hover .anchor_nav_area .nav_btn:hover {
    background-color: #F5F5F5;
	border: 1px solid #E0DFE3;
}

/* 各ブロック */
.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: #F5F5F5;
}


/********************************************************************/

/* 特定商取引法 */

/********************************************************************/

/* 各欄枠 */
.contents_desc {
    padding: 10px 5px;
    margin: 5px 0px;
}


/********************************************************************/

/* メールマガジン */

/********************************************************************/

.mailmagazine_page_body #inner_contents,
.mailmagazinestop_page_body #inner_contents {
	max-width: 680px;
}

.mailmagazine_box .form_data .largesize {
	width: 100%;
	max-width: none;
}

/* 登録、解除タイトル */
.mailmagazine_box .mailmagazine_subscribe_title,
.mailmagazine_box .mailmagazine_unsubscribe_title {
    border-bottom: 1px solid #E0DFE3;
    margin-bottom: 10px;
    font-size: 116%;
    font-weight: bold;
}


/********************************************************************/

/* マイページ */

/********************************************************************/

/* ポイント */
.member_contents .point_number {
    font-size: 138.5%;
    font-weight: bold;
    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: 500;
}


/*************************************************************/

/* 購入履歴 */

/*************************************************************/

/* 商品名 */
.history_data_list .item_name {
    font-weight: 500;
    color: #000000;
}


/*************************************************************/

/* 送り主、お届け先 */

/*************************************************************/

/* 住所 */
.recipient_data_list .user_address {
    font-weight: 500;
    color: #000000;
}


/*************************************************************/

/* お気に入り */

/*************************************************************/

/* 登録日、メモ */
.item_registration_date,
.item_memo {
    font-size: 93%;
}

/* 商品説明 */
.favorite_contents .item_desc {
    padding: 8px 3px;
    margin: 10px 0px;
    border-top: 1px solid #E0DFE3;
    border-bottom: 1px solid #E0DFE3;
}

.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 #E0DFE3;
}

/* 数量表示バッジ */
.badge {
    background-color: #FF0000;
    font-family: Arial, Helvetica, sans-serif;
    color: #FFFFFF;
}


/*************************************************************/

/* 掲示板 */

/*************************************************************/

/* 記事枠 */
.post_box {
    margin-bottom: 5px;
    border: 1px solid #E0DFE3;
}

/* 記事枠レス */
.post_box_res {
    padding-left: 20px;
}

/* 記事ヘッダー */
.post_box .data_table .cell_header,
.post_box .data_table .cell_data {
    background-color: #E9E9E9;
    font-weight: 500;
	border: none;
}

/* 記事ヘッダー下部余白 */
.post_box .data_table {
    margin-bottom: 5px;
}

/* 記事ヘッダー中央寄せ */
.post_box .res_cell,
.post_box .toggle_cell,
.post_box .replay_cell {
    text-align: center;
}

.post_title,
.post_user,
.post_day,
.post_number {
    padding: 2px 0px;
}

/* 記事タイトル */
.post_title {
    font-weight: bold;
    font-size: 14px;
}

/* 記事ユーザー */
.post_user {
    font-size: 11px;
}

/* 記事投稿日 */
.post_day {
    font-size: 11px;
}

/* 記事No */
.post_number {
    font-size: 13px;
}

/* URL */
.post_url {
    font-size: 13px;
}

/* 記事コメント */
.bbs_comments {
    background-color: #FFFFFF;
}

/* 記事検索 */
.bbs_search.form_data {
    background-color: #F5F5F5;
	margin-bottom: 10px;
}

/* 検索文字強調 */
.result_emphasis {
    background-color: #FFFF73;
}

/* 検索前に戻る */
.bbs_search .global_link {
    margin-left: 10px;
}

/* 記事開閉 */
#bbs_toggle {
    border-top: 1px solid #E0DFE3;
    border-bottom: 1px solid #E0DFE3;
}

/* 記事投稿欄 */
.bbs_post_form {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}


/*************************************************************/

/* 関連ページ */

/*************************************************************/

/* 内容 */
.link_desc_box {
    border-top: 1px solid #E0DFE3;
}


/*************************************************************/

/* 私が店長です */

/*************************************************************/

/* スタッフ画像 */
.staff_photo,
.pstaff_photo {
    text-align: center;
    margin-top: 10px;
}

/* プロフィール項目 */
.staff_contents dt,
.pstaff_contents dt {
    border-top: 1px solid #E0DFE3;
    font-weight: bold;
}

/* プロフィール内容 */
.staff_contents dd,
.pstaff_contents dd {
    border-top: 1px solid #E0DFE3;
}

.staff_profile_desc {
    background-color: #F5F5F5;
    border: 1px solid #E0DFE3;
}


/********************************************************************/

/* カレンダー */

/********************************************************************/

/* カレンダーヘッダー */
.calendar_data {
    padding: 15px 0px;
}

.cal_month {
    padding-bottom: 15px;
    text-align: center;
}

.cal_month .prev_month,
.cal_month .next_month,
.cal_month .this_month {
    padding: 0px 10px;
}

.cal_month span.prev_month,
.cal_month span.next_month {
    padding: 0px 5px;
    font-weight: bold;
    cursor: pointer;
}

/* 今月 */
.this_month {
    font-size: 123.1%;
    font-weight: bold;
}

.side_col .this_month {
    font-size: 14px;
    padding: 0px;
}

.side_col .next_month,
.side_col .prev_month {
    font-size: 13px;
    padding: 0px;
}

/* カレンダー枠線 */
.calendar_data .data_table th.cell_header,
.calendar_data .data_table td.cell_data {
    border: 1px solid #E0DFE3;
}

/* カレンダー曜日セル */
.calendar_data .cal_day_header {
    font-size: 85%;
}

/* カレンダー各セル */
.calendar_data .data_table .cal_day_cell {
    width: 14%;
    height: 60px;
    vertical-align: top;
}

/* 日曜日 */
.sun .cal_day {
    color: #D43B55;
}

/* 土曜日 */
.sat .cal_day {
    color: #47ABC5;
}

/* 今日 */
.calendar_data .today {
    font-weight: bold;
}

/* イベント一覧 */
.event_list li {
    border-bottom: 1px solid #E0DFE3;
}

/* イベント内容 */
.event_data {
    padding: 10px 0px;
}

/* イベント名 */
.event_name {
    font-weight: bold;
    line-height: normal;
}

/* アイコン画像 */
div.event_icon {
    text-align: center;
}

div.event_icon img {
    margin: 0px 1px;
}

span.event_icon {
    margin-right: 5px;
}

/* 定休日 */
.calendar_data .holiday,
.holiday_icon {
    background-color: #FFE9EE;
}

.holiday_icon {
    border: 1px solid #E0DFE3;
    display: inline-block;
    width: 15px;
    height: 15px;
}

/* イベント説明 */
.event_desc {
    font-size: 93%;
    padding: 5px;
}

/* 左右カラム */
.side_col .cal_day {
    font-size: 85%;
}

.side_col .data_table th.cell_header,
.side_col .data_table td.cell_data {
	padding: 2px;
}

.side_col .calendar_data .data_table .cal_day_cell {
	height: auto;
}


/********************************************************************/

/* table */

/********************************************************************/

/* thタグ、tdタグ */
.data_table .cell_header,
.data_table_header,
.data_table .cell_data {
    padding: 10px;
    border: 1px solid #E0DFE3;
}

/* thタグ */
.data_table .cell_header,
.data_table_header {
    background-color: #F5F5F5;
    color: #000000;
}

/* 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 .fa.icon-ocnk-barsla {
	font-size: 25px;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive .has_search_bar .inner_header_nav .header_nav_item:not(.empty_nav_label) {
		width: 60px;
	}
	
	.responsive .has_search_bar .inner_header_nav :is(.h_contact,.h_favorite,.h_help,.h_signout).header_nav_item {
		width: 80px;
	}
	
	.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 .nav_text .fa.icon-ocnk-barsla {
		font-size: 25px;
	}
}

.responsive .inner_header_nav .empty_nav_label .nav_btn .fa {
    transform: none;
}

/* グローバルナビ */
.inner_global_nav .fa {
    color: #000000;
}

.responsive .inner_global_nav A .fa {
	font-size: 16px;
}

.global_iconleft .fa {
    padding-right: 5px;
}

.itemlist_cartbutton .btn_size_icon .fa, .itemlist_cartbutton .global_iconleft .fa {
	font-size: 16px;
}

/* レスポンシブ横幅500px以上指定 */
@media screen and (min-width: 500px) {
	.global_iconleft .fa {
		padding-right: 8px;
	}

	.itemlist_cartbutton .btn_size_icon .fa, .itemlist_cartbutton .global_iconleft .fa {
		font-size: 18px;
	}
}

.global_iconright .fa {
    padding-left: 5px;
}

/* 検索ボタン */
.fa-search {
    font-family: "ocnkiconf";
}

.fa-search:before {
    content: "\e90f";
	font-weight: 700;
}

.ocnk020.responsive .search_bar:has(.global_btn .searchinput) .global_btn .searchinput:before {
	content: "\e90f";
	width: 1em;
	display: inline-block;
	font-family: "ocnkiconf";
	font-weight: 700;
}

/* 閉じる、削除ボタン */
.close_btn_box .fa,
.delete_btn_box .fa,
.nav_close_btn .fa {
    color: #000000;
}

.close_btn_box .fa {
	font-size: 18px;
	line-height: 18px;
}

/* フッター下部ボタン */
.fixed_corner_button .fa {
    font-size: 40px;
    color: #555555;
}

.use_hover .fixed_corner_button:hover .fa {
    color: #000000;
}

/* +-開閉ボタン */
.open_icon .fa,
.close_icon .fa {
    color: #000000;
}

.side_sub_menu_hover .has_sub_menu .fa {
    font-size: 14px;
    right: 10px;
}

.side_sub_menu_hover .has_sub_menu .fa.fa-chevron-down::before {
    content: "\e90a";
}

/* 説明付き一覧表示調整 */
.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: #000000;
}

.fa-chevron-right, .fa-chevron-left, .fa-chevron-down, .fa-times {
    font-family: 'ocnkiconf';
}

.fa-chevron-right:before {
    content: "\e909";
}

.nav_btn.has_image_nav_btn .fa-chevron-right.right_side_nav_icon::before {
    content: "";
}

.fa-chevron-left:before {
	content: "\e90b";
}

.fa-chevron-down:before,
.side_sub_menu_hover .has_sub_menu .fa.fa-chevron-down::before {
    content: "\e90a";
}

.close_sub_menu_link .fa-chevron-down:before,
.toggle_opened .title_toggle_link .fa-chevron-down:before {
    content: "\e908";
}

.fa-times:before {
    content: "\e92d";
}


/********************************************************************/

/* ボタン */

/********************************************************************/

/* アイコンボタン枠 */
.icon_btn {
    padding: 0px 3px;
    border: 1px solid #E0DFE3;
    background-color: #FFFFFF;
    border-radius: 5px;
}

.icon_btn.close_btn_box,
.icon_btn.search_close,
.site_list_dropdown .icon_btn {
	padding: 0 4px 1px;
}

.use_hover .icon_btn:hover {
    border: 1px solid #E0DFE3;
    background-color: #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 #E0DFE3;
    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 #E0DFE3;
    background-color: #F0F0F0;
}

.web_share_button.share_icon_button {
	border: none;
	background-color: #E0DFE3;
	border-radius: 3px;
}

.standard_btn {
    padding: 10px 20px;
    border: solid 1px #E0DFE3;
    background-color: #F9F9F9;
    border-radius: 5px;
    display: inline-block;
	box-shadow: none;
}

.use_hover .standard_btn:hover {
    border: 1px solid #E0DFE3;
    background-color: #F0F0F0;
}

/* 右端ボタン */
.page_title_right_edge .general_btn,
.section_title_right_edge .general_btn {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
    border-radius: 5px;
    color: #666666;
}

.use_hover .page_title_right_edge .general_btn:hover,
.use_hover .section_title_right_edge .general_btn:hover {
    background-color: #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%;
}

#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 #E0DFE3;
}

/* ログインページ新規登録余白調整 */
#register_form .form_btn {
    padding: 0px;
}

/* Aタグボタン */
.global_btn A {
    font-weight: normal;
}

/* 外部決済ボタン */
.outside_btn_box {
    background-color: #FFFFFF;
    border: 1px solid #E0DFE3;
}

/* 楽天決済用 */
.payment_method_desc {
    margin-bottom:10px;
}


/*--------------------------------------*/

/* ボタン色 */

/*--------------------------------------*/
/* 色通常 */
/* フォームボタン全般 */
.btn_color_common {
    background-color: #666666;
    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: #E0DFE3;
    background-image: none;
    border-radius: 3px;
    color: #333333;
    font-weight: 500;
    box-shadow: none;
}

.use_hover .btn_color_common:hover {
    color: #333333;
}

/* 色強調 */
.btn_color_emphasis {
    background-color: #000000;
    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: #000000;
    background-image: none;
    border-radius: 3px;
    color: #FFFFFF;
    font-weight: 500;
}

.use_hover .btn_color_emphasis:hover {
    color: #FFFFFF;
}


/*************************************************************/

/* パンくずリスト */

/*************************************************************/

.responsive .breadcrumb_area,
.ocnk028.responsive.wide_layout #container #contents .breadcrumb_area,
.ocnk028.responsive.single_layout #container #contents .breadcrumb_area {
	max-width: 100%;
}

.responsive .breadcrumb_area {
	background-color: #F5F5F5;
	padding: 0;
}

/* レスポンシブ横幅840px以上指定 */
@media screen and (min-width: 840px) {
	.responsive .breadcrumb_area {
		margin-bottom: 20px;
	}
}
	
.has_min_nav .breadcrumb_area {
	margin-bottom: 0px;
}
	
.breadcrumb_list {
	max-width: 1200px;
	margin: auto;
	padding: 10px;
	font-size: 77%;
}

.breadcrumb_list A {
	text-decoration: underline; 
}
	
.ocnk028.responsive .breadcrumb_list {
	max-width: 1400px;
}
	
.ocnk028.responsive .has_min_nav .breadcrumb_list,
.has_min_nav .breadcrumb_list {
	max-width: 980px;
}


/********************************************************************/

/* ポップアップ */

/********************************************************************/

/* ポップアップの背景 */
.overlay_area .modal_skin {
    background-color: #FFFFFF;
    border: 1px solid #CCCCCC;
}


/********************************************************************/

/* ロード、ページャー */

/********************************************************************/

/* 読み込み中アイコン画像 */
.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: #F5F5F5;
}

/* 現ページ */
.pager strong {
    min-width: 20px;
    min-height: 20px;
    padding: 3px;
    margin: 0px 1px;
    border: 1px solid #333333;
    background-color: #333333;
    color:#FFFFFF;
	font-size: 93%;
}

/* 各ページ */
.pager .pager_btn {
    min-width: 20px;
    min-height: 20px;
    margin: 0px 1px;
    padding: 3px;
    border: 1px solid #E0DFE3;
    background-color: #FFFFFF;
    text-decoration: none;
	font-size: 93%;
}

.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 #E0DFE3;
}

/* 各リンク文字 */
.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: #F5F5F5;
}

#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;
}

/********************************************************************/


/********************************************************************/
/* オリジナル */
/********************************************************************/

/* 会員限定ログインサイトの新規登録を隠す*/
	.login_page_only_for_member .register_link {display: none;}

/* マイペイジ内のログインサイトの新規登録を隠す*/
	.psignin .register_btn_box {display: none;}
	
/* 戻るボタン */
    .back-button {
      display: inline-block;
      padding: 5px 50px;
      margin: 10px;
      background-color: #D1D1D1;
      color: #000;
      text-decoration: none;
      border-radius: 6px;
      font-size: 16px;
      font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;
      font-weight: bold;
    }

    .back-button:hover {
      background-color: #848484;
    }

/********************************************************************/
/* ID */
/********************************************************************/

/* フォントサイズ */

	#font20 {font-size:20%;}
	#font30 {font-size:30%;}
	#font40 {font-size:40%;}
	#font50 {font-size:50%;}
	#font60 {font-size:60%;}
	#font70 {font-size:70%;}
	#font80 {font-size:80%;}
	#font90 {font-size:90%;}
	#font110 {font-size:110%;}
	#font120 {font-size:120%;}
	#font130 {font-size:130%;}
	#font140 {font-size:140%;}
	#font150 {font-size:150%;}
	#font160 {font-size:160%;}
	#font170 {font-size:170%;}
	#font180 {font-size:180%;}
	#font190 {font-size:190%;}
	#font200 {font-size:200%;}
	
/* フォントカラー */	
	#t01 {color:#339966;}/* 商品紹介タイトル緑*/	
		
	#ac_su {color:#531B93;}/* AC保証_サポート*/	
	#ac_en {color:#F42300;}/* AC保証_延長*/	
	#ac-bu {color:#F42300;}/* AC保証_物損*/	
	#ac-ka {color:#00A64E;}/* AC保証_貸出*/	
	#ac01 {color: #AB1500;font-size:70% ;line-height: 1.3;}/* AC保証_注意書き*/	
	
/* フォントカラー */
	#fw01 {color:#fff}
	#fp01 {color:#8F25AA}
	#fr01{color:#AB1500}
	#fo01{color:#ff4500}
	#fbu01{color:#4030F2}
	#fbu02{color:#0079F2}
	#fbu03{color:#0053AA}

/********************************************************************/
/* 商品紹介・フリーページ用 */
/********************************************************************/
	
/* 画像リサイズ */
	.resize img { max-width: 100%; height: auto; }
	
/* 要素の末尾でfloatクリア　*/	
	.f_clear:after {content: "";display: block;clear: both;}
	
/* 位置指定 */	
	.cen{text-align: center;}
	.cen img { max-width: 100%; height: auto; }
	
	.cenh300{text-align: center;}
	.cenh300 img { width: auto; max-height: 300px; }
	
	.rig{text-align:left;}
	.rig img { max-width: 100%; height: auto; }

	.lef img { max-width: 100%; height: auto; }
			
	/* 画像左・文字回り込み */	
	.wrap_lef{display: inline-block ;text-align: left;}
	.wrap_lef p{margin: 1em 0;}
	.wrap_lef img {float: left; margin: 0.5em ; vertical-align: bottom;}	
		
	/* 画像右・文字回り込み */	
	.wrap_rig{display: inline-block;text-align: left;}
	.wrap_rig p{margin: 0.5em 0;}
	.wrap_rig img {float: right; margin: 0.5em; vertical-align: bottom;}
	
	/* センター揃え横並び */
	.center01 {display:flex ; align-items:center ; justify-content: center; gap: 20px;} 
	.center01 img { max-width: 100%; height: auto; }
	.center01 figure {text-align: center;}
	
	/* センター揃え横並び 折り返しあり */
	.center02 {display:flex ;  flex-wrap: wrap; align-items:center ; justify-content: center;} 	
	.center02 img { max-width: 100%; height:auto}
	
	.m0p0{ margin: 0 ;padding: 0 ;}
	.m0p0cen{text-align: center; margin: 0 ;padding: 0 ;}	
	
	.m0p1{ margin: 0em ;padding: 1em ;}	
	.m1p0cen{text-align: center; margin: 0 1em ;padding: 0 ;}	

/* 全体を画面の80%にして中央寄せ */
    .photo-wrap80 {width: 80%; max-width: 1200px; margin: 0 auto;}
	
/* 画像下のコメント */
	.capt_c{height: 40px;display: flex;align-items: center;justify-content: center;font-size:0.8em ;}
	.capt_r{font-size:0.8em ;width: fit-content; margin-left: auto;}
	.ccapt_l{font-size:0.8em ;width: fit-content; margin-right: auto;}

/* 文字位置調整 */	
	.pcb{font-size: 1.5em;margin: 0.5px 0px 0px 0px;}
	.pc{margin: 0px 0px 0px 15px;padding:0px 0px 0px 60px;}
	.ptr{font-size: 1.2em;margin: 0px ;}
	
/* パソコンリスト紹介案内用文字位置調整 */	
	.pt{font-size: 1.5em;line-height: 0.8em;margin: 20px 0px 0px 90px;}

/* セット内容 */	
	.sett{font-size:1.2em;color:#F3A000;font-weight:bold;}
			
/********************************************************************/
/* Topスペック紹介用テーブル */	 
/********************************************************************/
/* サブタイトル */
.subtitle-gray {
  display: inline-block;
  background: #4c6473;
  color: #fff;
  margin: 0.5em 0;
  padding: 8px 50px 8px 24px; 
  font-weight: 700;
  font-size: 18px;
  position: relative;
  /* 右側だけ斜めカット */
  clip-path: polygon(
    0 0,                         
    calc(100% - 30px) 0,         
    100% 100%,                 
    0 100%                    
  );
}

/* スペックボックス用 グリッド */
.pc-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(300px, 1fr));
  gap: 12px;
}

/* 1100px以下 → 2列 */
@media (max-width: 1100px){
  .pc-grid{
    grid-template-columns: repeat(2, minmax(260px, 1fr));
  }
}

/* スマホ → 1列 */
@media (max-width: 560px){
  .pc-grid{
    grid-template-columns: 1fr;
  }
}

    .pc-grid .tv_box,
    .pc-grid .tm_box,
    .pc-grid .tn_box,
    .pc-grid .te_box,
    .pc-grid .tj_box,
    .pc-grid .ta_box{float: none;width: auto;height: auto; margin: 0;}

    .pc-grid .tv_spec,
    .pc-grid .tm_spec,
    .pc-grid .tn_spec,
    .pc-grid .te_spec,
    .pc-grid .ta_spec{width:100%;  max-width:300px;}

/* VAIO */	
    .tv_box{float: left; height:auto; width: 330px; padding:0 0 0.5em 0;margin: 0.1em;border: 3px double #0C1A3C;}
	.tv_box h2{ padding: 0.5em 0.2em; background-color:#0C1A3C; color:#FFF; text-align:center;}
	.tv_box p{margin-top:0 ;padding:0 1.5em}
	.tv_box img { margin: 20px auto ; display: block; max-width: 100%; height: 160px; }
		
 	.tv_spec{ border-spacing: 0; width:auto; margin:auto; text-align:center;}
 	.tv_spec th{background : #C3C8D5 ; width:6.5em;}
 	.tv_spec th,.tv_spec td{ border: 1px solid #0C1A3C; padding: 2px; }
 	
 /* NEC */	
	.tn_box{ float: left; height:auto; width: 330px; padding:0 0 0.5em 0 ; margin: 0.1em; border: 3px double #1414A0;}
	.tn_box h2{ padding: 0.5em 0.2em; background-color:#1414A0; color:#FFF; text-align:center;}
	.tn_box p{margin-top:0 ;padding:0 1.5em}
	.tn_box img { margin: auto; display: block; max-width: 100%; height: 200px; }
	
 	.tn_spec{ border-spacing: 0; width:auto ; margin:auto; text-align:center;}
 	.tn_spec th{background : #ccdaff ; width:6.5em;}
 	.tn_spec th,.tn_spec td{ border: 1px solid #1414A0; padding: 2px; }
 
 /* EPSON */
	.te_box{ float: left; height:auto; width: 330px; padding:0 0 0.5em 0 ; margin: 0.1em; border: 3px double #10218B;}
	.te_box h2{ padding: 0.5em 0.2em; background-color:#10218B; color:#FFF; text-align:center;}
	.te_box p{margin-top:0 ;padding:0 1.5em}
	.te_box img { margin: 20px auto ; display: block; max-width: 100%; height: 160px; }
	
 	.te_spec{ border-spacing: 0; width:auto ; margin:auto; text-align:center;}
 	.te_spec th{background : #C7D0F5 ; width:6.5em;}
 	.te_spec th,.te_spec td{ border: 1px solid #10218B; padding: 2px; }
 	 
 /* msi */	
	.tm_box{ float: left; height:auto; width: 330px; padding:0 0 0.5em 0 ; margin: 0.1em; border: 3px double #563600; }
	.tm_box h2{ padding: 0.5em 0.2em; background-color:#563600; color:#FFF; text-align:center;}
	.tm_box p{margin-top:0 ;padding:0 1.5em}
	.tm_box img { margin: 20px auto ; display: block; max-width: 100%; height: 160px; }
		
 	.tm_spec{ border-spacing: 0; width:auto ; margin:auto; text-align:center;}
 	.tm_spec th{background : #FFDDA9 ; width:6.5em;}
 	.tm_spec th,.tm_spec td{ border: 1px solid #563600; padding: 2px; }

/* apple */	
	.ta_box{ float: left; height:auto; width: 330px; padding:0 0 0.5em 0 ; margin: 0.1em; border: 3px double #000; }
	.ta_box h2{ padding: 0.5em 0.2em; background-color:#181B39; color:#FFF; text-align:center;}
	.ta_box p{margin-top:0 ;padding:0 1.5em}
	.ta_box img { margin: 20px auto ; display: block; max-width: 100%; height: 160px; }
		
 	.ta_spec{ border-spacing: 0; width:auto ; margin:auto; text-align:center;}
 	.ta_spec th{background : #B8B8B8 ; width:6.5em;}
 	.ta_spec th,.ta_spec td{ border: 1px solid #000; padding: 2px; }
 	
  /* 準備中 */	 
	.tj_box{ float: left; height:auto; width: 330px; padding:0 0 0.5em 0 ; margin: 0.1em; border: 3px double #000; }
	.tj_box h2{ padding: 0.5em 0.2em; background-color:#181B39; color:#FFF; text-align:center;}
	.tj_box p{margin-top:0 ;padding:0 1.5em}
	.tj_box img { margin: auto; display: block; max-width: 100%; height: 350px ; }
		
/********************************************************************/
/* 商品紹介・フリーページ用　タイトル向け */
/********************************************************************/
    
/********************************************************************/
/* クローズ用 */
/********************************************************************/
		
/* クローズで使用　テープ留めタイトル */		
	.tape-box{max-width:320px; position: relative; margin: 1em auto; padding: 1em; background-color: #ffffcc; box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.15);}
/* クローズで使用　テープ留部分 */	
	.tape{display: block; background-color: #ccb; opacity: 0.2; transform: rotate(3deg);  width: 40%;  height: 35px; margin: -2em auto 0 auto; border-left: 3px dotted rgba(0,0,0,.1); border-right: 3px dotted rgba(0,0,0,.1);}
	
/********************************************************************/
/* 学部ごとの商品紹介*/
/********************************************************************/
/* 背景色 */	
	.maker_back{color: #16160E; margin: 10px 0 ;padding: 3px ;background-color: #E6E6E6; text-align: center;text-shadow: 1px 1px 2px rgba(0,0,0,0.25);}

/* 上下にライン */	
	.headline{color: #16160E; margin: 0.5em 0em;padding: 0.2em 1em; border-top: solid 3px #333333; border-bottom: solid 3px #333333; }

/* 左画像 ＋ 中央テキスト ＋ 右画像 */	
.side-wrap {
  display: flex;
  align-items: center; 
  gap: 10px;  
  padding: 10px;
}

.side-img {
  width: 80px; 
  height: auto;
  flex-shrink: 0;
}

.side-text {
  flex: 1; 
  font-size: 16px;
  line-height: 1.6;
}

@media (max-width: 600px) {
  .side-wrap {
    flex-direction: column;
    text-align: center;
  }
  .side-img {
    width: 120px;
  }
}

/* 商品リスト*/
.pcbox {
  padding: 10px 20px;
  background: #F9F9F9;
  max-width: 600px;
  margin: 20px auto;
}

.pcbox ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pcbox ul li {
  margin: 6px 0;
}

.pcbox ul li a {
  display: block;
  padding: 8px 16px;
  background: #f5f5f5;
  text-decoration: none;
  color: #333;
  font-weight: 600;
  transition: all 0.2s ease;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  text-shadow: 1px 1px 2px rgba(0,0,0,0.18);
}

.pcbox ul li a:hover {
  background: #e0f0ff;
  border-color: #0079F2;
  color: #0079F2;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);

  /* ホバー時はシャドウ少し強め */
  text-shadow: 1px 1px 3px rgba(0,0,0,0.25); 
}

  /* 注意喚起 */
.notice-box {
  background: #fff8d6;
  border-left: 6px solid #f1c40f;
  padding: 15px 20px;
  margin: 20px 0;
  border-radius: 6px;
  color: #333;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.notice-box .icon {
  font-size: 24px;
  color: #e0a800;
  line-height: 1;
}

.notice-box p {
  margin: 0;
  line-height: 1.6;
  font-size: 15px;
}

  /* 注意喚起（納期） */
.notice-delivery {
  background: #fff3e0;  
  border-left: 6px solid #ff9800;
  padding: 15px 20px;
  margin: 20px 0;
  border-radius: 6px;
  color: #333;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.notice-delivery .icon {
  font-size: 24px;
  color: #ff9800;
  line-height: 1;
}

.notice-delivery p {
  margin: 0;
  line-height: 1.6;
  font-size: 14px;
}

  /* 注意喚起（購入案内） */
.guide-gray {
  background: #f2f4f7; 
  border-left: 6px solid #555555;
  padding: 15px 20px;
  margin: 20px 0;
  border-radius: 6px;
  color: #1a1a1a;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.guide-gray .icon {
  font-size: 22px;
  line-height: 1;
  color: #555555;  
}

.guide-gray p {
  margin: 0;
  line-height: 1.6;
}

/********************************************************************/
/* VAIO用 */
/********************************************************************/

/* 上下にライン */	
	.headline_v{color: #674598; margin: 0.5em 0em;padding: 0.2em 1em; border-top: solid 3px #674598; border-bottom: solid 3px #674598;}

/* 商品紹介タイトルVAIO用*/	
	#t_VAIO {color:#0C1A3C;}

/* 文字下グラデ_上が白に */		
	.underv {padding: 0em 0.5em 0.2em 0.5em ;margin: 0.5em 0em ;background:linear-gradient(to bottom, #FFF, #bcbace 80%);}

/* 文字下マーカー風 */	
	.underv1 {padding: 0em 0.5em 0.2em 0.5em ;background: linear-gradient(transparent 60%, #DED7FF 60%);}

/* タイトル保証案内_VAIO_左丸_文字左寄せ_グラデ朱色から黄金色 */	
	.t_hosyo_V{ position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF;font-weight: bold ; text-align: left; background: linear-gradient(to left, #F3A000, #F42300 100%);border-radius:  40px  0 0 40px;}
	
/* 最強のアカデミック保証_VAIO_左丸_文字左寄せ_グラデ勝色から白 */	
	.t_VAIO { position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF; text-align: left; background: linear-gradient(to left, #fff, #0C1A3C 100%);border-radius:  40px 0 0 40px;}

/* パソコンスペック用テーブル */	
	.spec_v {border-spacing: 0;margin: 0 auto; }
    .spec_v th{color: #000;background : #DEE2EB ;padding: 0em 0.5em ;text-align: center;}
    .spec_v td{color: #000;padding: 0em 0.5em}
    .spec_v th, .spec_v td {border: solid 1px #848484;}

/********************************************************************/
/* SOL用 */
/********************************************************************/

/* タイトル保証案内_SOL_左丸_文字左寄せ_グラデ金から黄金色 */	
	.t_hosyo_n{ position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF;font-weight: bold ; text-align: left; background: linear-gradient(to left, #F3A000, #F42300 100%);border-radius:  40px  0 0 40px;}
	
/* 商品紹介タイトルSOL用_紺瑠璃色*/	
	#t_sol {color:#164a84;}

/* 最強のアカデミック保証O_左丸_文字左寄せ_グラデ桔梗色から白 */	
	.t_sol { position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF; text-align: left; background: linear-gradient(to left, #fff, #483093 100%);border-radius:  40px 0 0 40px;}

/* SOLのバック */
	.sol_b{background: linear-gradient(to bottom, #BFA7DF, #A4C6E6 40%, #EBAFD0 80%, #FFD7EF 95%, #fff);border-radius:30px;}
	
	.sol{display:flex ; align-items:center ; justify-content: center;}
	.sol img {max-width: 90%; height: auto; }
	
	.sol_t{margin: 0.5em 0 ;padding: 0.5em 1em ; color:#364e96;background: #FFF;max-width:70% ;border-radius: 0 50px 50px 0; box-shadow: 10px 5px 5px #B8B8B8;}
	
	.sol_t2{margin: 1em 0em ;padding: 0em 2em ; color:#8F25AA;max-width:100% ;}	
	.sol_t2 h2 ,.sol_t2 p{ margin: 0em ;padding: 0em ;}

	.sol_t3{margin:1em 0em ;padding: 0em 2em ; color:#AB1E6F;max-width:100% ;}
	.sol_t3 h2 ,.sol_t3 p{ margin: 0em ;padding: 0em ;}

	.sol_t4{margin:1em 0em ;padding: 0em 2em ; color:#AB1500;max-width:100% ;}	
	.sol_t4 h2 ,.sol_t4 p{ margin: 0em ;padding: 0em ;}

/* アイコン＋テキストを横並びに */
    .sol_lef{display:flex;align-items:center;text-align:left;}
    .sol_lef img{width:100px;height:auto; margin-right:0.5em;}
    .sol_lef h2 ,.sol_lef p{margin:0;}

/* パソコンスペック用テーブル */	
	.spec_n {border-spacing: 0;margin: 0 auto; }
    .spec_n th{color: #000;background : #c8c2eb ;padding: 0em 0.5em ;text-align: center;}
    .spec_n td{color: #000;padding: 0em 0.5em}
    .spec_n th, .spec_n td {border: solid 1px #848484;}
	
/********************************************************************/
/* msi用 */
/********************************************************************/
/* 上下にライン */	
	.headline_m{color: #383B4F; margin: 0.5em 0em;padding: 0.2em 1em; border-top: solid 3px #383B4F; border-bottom: solid 3px #383B4F;}

/* 商品紹介タイトルmsi用_藍鉄色色*/	
	#t_msi {color:#393F4C;}

/* 最強のアカデミック保証_msi_左丸_文字左寄せ_グラデ勝色から白 */	
	.t_msi { position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF; text-align: left; background: linear-gradient(to left, #fff, #180614 100%);border-radius:  40px 0 0 40px;}

/* 文字下グラデ_上が白に */		
	.underm {padding: 0em 0.5em 0.2em 0.5em ;margin: 0.5em 0em ;background:linear-gradient(to bottom, #FFF, #C0C0C0 80%);}

/* 文字下マーカー風 */	
	.underm1 {padding: 0em 0.5em 0.2em 0.5em ;background: linear-gradient(transparent 60%, #180614 60%);}

/* パソコンスペック用テーブル */	
	.spec_m {border-spacing: 0;margin: 0 auto; }
    .spec_m th{color: #000;background : #D1D1D1;padding: 0em 0.5em ;text-align: center;}
    .spec_m td{color: #000;padding: 0em 0.5em}
    .spec_m th, .spec_m td {border: solid 1px #848484;}

/* グラデ40度青ベースの囲み影あり　MSI AIに使用 */	
	.box_b01 {padding: 0.5em 2em; margin:  0; color: #0053AA; text-shadow: 1px 1px 2px #0079F2; background: linear-gradient(45deg,#BDCFFF, #e4fcff,#BDCFFF); box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);}
	.box_b01 h1 {margin: 0; padding: 0;}

	
/********************************************************************/
/* Apple用 */
/********************************************************************/

/* 商品紹介タイトルmsi用_黒檀色*/	
	#t_apple {color:#250D00;}

/* 最強のアカデミック保証_apple_左丸_文字左寄せ_グラデから白 */	
	.t_apple { position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF; text-align: left; background: linear-gradient(to left, #fff, #250D00 100%);border-radius:  40px 0 0 40px;}

/* 文字下グラデ_上が白に */		
	.undera {padding: 0em 0.5em 0.2em 0.5em ;margin: 0.5em 0em ;background:linear-gradient(to bottom, #FFF, #E8DCD6 80%);}

/* パソコンスペック用テーブル */	
	.spec_a {border-spacing: 0;margin: 0 auto; }
    .spec_a th{color: #000;background : #E8DCD6;padding: 0em 0.5em ;text-align: center;}
    .spec_a td{color: #000;padding: 0em 0.5em}
    .spec_a th, .spec_a td {border: solid 1px #250D00;}

/********************************************************************
 * Mac用アイコンブロック（icon_center / icon_lef）
 ********************************************************************/

/* 全体：中央寄せグリッド */
.icon_center {
  display: grid;
  gap: 16px;
  justify-content: center;
  align-items: stretch;
}

/* PC時の列数を class で可変にする */
.icon_center.icon-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.icon_center.icon-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.icon_center.icon-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* 各アイコンカード */
.icon_lef {
  display: flex;
  flex-direction: row;  
  align-items: center;
  gap: 8px;
  text-align: left;
}

/* 画像のサイズ調整（必要であれば） */
.icon_lef img {
  max-width: 100%;
  height: auto;
  flex-shrink: 0;
}

/* 文字側 */
.icon_lef p {
  margin: 0;
  line-height: 1.4;
}

/* スマホ時：1列＋アイコンと文字を縦並びに */
@media (max-width: 768px) {
  .icon_center[class*="icon-cols-"] {
    grid-template-columns: 1fr; 
  }

  .icon_lef {
    flex-direction: column;  
    text-align: center;
  }
}
	

/********************************************************************/
/* EPSON用 */
/********************************************************************/
/* 上下にライン */	
	.headline_e{color: #10218B; margin: 0.5em 0em;padding: 0.2em 1em; border-top: solid 3px #10218B; border-bottom: solid 3px #10218B;}

/* 商品紹介タイトルmsi用_藍鉄色色*/	
	#t_epson {color:#10218B;}

/* 最強のアカデミック保証_VAIO_左丸_文字左寄せ_グラデ勝色から白 */	
	.t_epson { position: relative; margin: 1em 0em ; padding: 0.5em 1em; color: #FFF; text-align: left; background: linear-gradient(to left, #fff, #10218B 100%);border-radius:  40px 0 0 40px;}

/* 文字下グラデ_上が白に */		
	.undere {padding: 0em 0.5em 0.2em 0.5em ;margin: 0.5em 0em ;background:linear-gradient(to bottom, #FFF, #D6E0FF 80%);}

/* パソコンスペック用テーブル */	
	.spec_e {border-spacing: 0;margin: 0 auto; }
    .spec_e th{color: #000;background : #D6E0FF;padding: 0em 0.5em ;text-align: center;}
    .spec_e td{color: #000;padding: 0em 0.5em}
    .spec_e th, .spec_e td {border: solid 1px #848484;}


/********************************************************************/
/* セット紹介用 */	
/********************************************************************/

/* タイトル */
.set-syokai {
  display: inline-block;
  padding: 10px 30px 10px 30px;
  font-size: 18px;
  font-weight: bold;
  white-space: normal;
  background: linear-gradient(90deg, #d4af37 0%, #f3d97b 50%, #d4af37 100%);
  box-shadow: 10px 5px 0 0 #000;
  }

/* セットセレクトBOX */
.set_box{
  position: relative;
  padding: 14px 16px 14px 170px; 
  border: 1px solid #d9e0ec;
  border-radius: 10px;
  background: #F3F5F9;
  margin: 10px 0;
}

/* 左の画像枠（固定幅で中央寄せ） */
.set_box .thumb{
  position: absolute;
  left: 16px;                 /* 行内の左余白 */
  top: 50%;
  transform: translateY(-50%);/* 縦中央 */
  width: 140px;                /* 画像カラムの「幅」 */
  height: 52px;              
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;           /* 透過 */
}

/* 画像ははみ出さない */
.set_box .thumb img{
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

/* テキスト（リンク） */
.set_box a{
  color: #0C1A3C;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.7;           /* 2行になっても読みやすく */
  text-decoration: none;
  display: inline-block;
}
.set_box a:hover{ text-decoration: underline; }

/* ふんわりホバー（任意） */
.set_box:hover{
  background: #e4dc8a;    
  border-color: #cfd7e6;
}

/********************************************************************/
/* 商品紹介・フリーページ用　共通 */
/********************************************************************/

/* 購入特典使用_バックグレー文字中央揃え */	
	.gray1 { background-color: #4c6473 ; color : white ; max-width: 100% ;margin: 1em 0em;padding: 0.3em 0em ; text-align: center; }
	.gray1 H2 ,.gray1 P {margin: 0 ;padding: 0 ;}

/* 学部使用パソコン使用_選択囲い */		
    .gray_select{ position: relative; padding: 14px 16px ; border: 3px solid #4c6473; background: #FFF;  margin: 10px ;}
    .gray_select:hover{ background: #F3F5F9; border-color: #4c6473;}
    
/* 学部使用パソコン使用_選択囲い */	    
    .gray1_box{ position: relative; padding: 14px 16px ; border: 3px solid #4c6473; margin: 10px;}
    
/* バックなし中央揃え文字左揃え */		
	.cen_box { width:800px ; max-width: 100% ; height: auto ;margin: auto ;padding:10px 10px ;text-align: center; }
	.cen_box h2 ,.cen_box p {margin: 0 ;padding: 0 ;text-align: left;}
	.cen_box img { max-width: 100%; height: auto; }

/* 中央揃え囲みあり */	
    .box-center{display: inline-block;padding: 6px 20px;border: 2px solid #333;text-align: center;margin: 5px;}

/********************************************************************/
/* セット内容　共通 */
/********************************************************************/

/* セットルサブタイトル */
.set-subtitle {
   display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;              
  margin: 14px 0;
  padding: 14px 28px;
  background: #000;         
  color: #fff;              
  font-weight: 700;
  border: none;
  border-radius: 6px;   
  cursor: pointer;
  transition: 0.2s ease;
}

/* 周辺機器スペック用テーブル */	
	.spec2 {border-spacing: 0;margin: 0 auto; }
    .spec2 th{color: #000;background : #E8E8E8;padding: 0.5em 0.5em ;text-align: center}
    .spec2 td{color: #000;padding: 0em 0.5em; width: 400px;}
    .spec2 th, .spec2 td {border: solid 1px #848484;}

/********************************************************************/
/* タップに使用 */
/* バックグレー中央揃え文字中央揃え */	
	.gray_box { background-color: gray ; color : white ; width:800px ; max-width: 100% ; height: auto ;margin: auto ;padding:10px 10px ;text-align: center; }
	.gray_box h2 ,.gray_box p  {margin: 0 ;padding: 0 ;}

/* バックグレー中央揃え文字中央揃えPのみ左揃え */		
	.gray_box2 { background-color: #D1D1D1 ; color : black ; width:800px ; max-width: 100% ; height: auto ;margin: auto ;padding:10px 10px ;text-align: center; }
	.gray_box2 img {margin: 5px 2px ;padding: 0 ; max-width: 100% ; height: auto;}
	.gray_box2 h2 {margin: 0 ;padding: 0 ;}
	.gray_box2 p {margin: 0 ;padding: 0 10px ;text-align: left;}
/********************************************************************/

/* カラリオスマイルタイトル */
.smile-blue {
  display: inline-block;
  background: #1E56C4;      /* 青背景 */
  color: #fff;              /* 白文字 */
  margin: 0em 0 0em 0;
  padding: 8px 50px 8px 24px; /* 縦横の余白（左余白やや広め） */
  font-weight: 700;
  font-size: 18px;
  position: relative;
  /* 右側だけ斜めカット */
  clip-path: polygon(
    0 0,                         
    calc(100% - 30px) 0,         
    100% 100%,                 
    0 100%                    
  );
}
/* カラリオスマイル */
/********************************************************************/
:root{
  --blue:#1E56C4;         /* 枠とバッジの青 */
  --blue-d:#15449D;
  --text:#333a43;
  --muted:#6b768a;
  --border:#2a66d61a;     /* 薄い青(透過) */
}

.smile4{ padding: clamp(24px,5vw,56px) 0; }

/* タイトル：中央 */
.smile4-title{
  text-align:center;
  color:var(--blue);
  font-weight:800;
  font-size: clamp(22px,3.2vw,36px);
  line-height:1.3;
  margin:0 0 41px 0;
  position:relative;
}


/* 4枚グリッド */
/* PC：幅が広いときは4列 */
.smile4-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 60px 24px;
}

/* タブレット・スマホ：1100px以下は2列に固定 */
@media (max-width: 1100px){
  .smile4-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

/* カード本体（丸角の白箱） */
.smile4-card{
  position:relative;
  background:#fff;
  border:3px solid var(--blue);
  border-radius:18px;
  padding-top:42px;           
}

/* 丸いバッジ（上に食い込ませる） */
.smile4-badge{
  position:absolute; left:50%; top:0;
  transform: translate(-50%, -50%);
  background:var(--blue);
  color:#fff; text-align:center; font-weight:800; line-height:1.1;
  width:80px; height:80px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 4px 0 var(--blue-d);
  letter-spacing:.06em;
}

/* 中身レイアウト */
.smile4-inner{ padding: 18px 18px 20px; text-align:center; color:var(--text); }

.smile4-illust{
  height: 140px; display:flex; align-items:center; justify-content:center;
  margin-bottom: 8px;
}
.smile4-illust img{ max-width:100%; max-height:100%; object-fit:contain; }

.smile4-kv{
  margin: 6px 0;
  font-weight:800; line-height:1.35;
  font-size: clamp(18px,2.4vw,18px);
}
.smile4-kv .num{ font-size: clamp(24px,6vw,24px); color:#e94b6a; }

.smile4-sub{ margin: 4px 0 0; color:var(--text); font-weight:700; }
.smile4-note{
  position: absolute;      
  top: 50px;              
  right: 30px;        
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}
/* 注釈エリア */
.smile4-footnote{
  margin: 14px 0 0;
  color:var(--muted);
  font-size: 13px;
}

/********************************************************************/
	
/* プリンターの項目(角丸) */		
	.pr_b1 { border-radius: 50px; background:#1E56C4;display: inline-block; justify-content: space-around;align-items: center; font-family: monospace;color: White;margin: 0 5px;margin-bottom: 20px;max-width: 200px;padding: 5px 50px;font-weight:bold}
/********************************************************************/

/* プリンター詳細スペック　ボタン */		
	.btn-b { position: relative; display: inline-block;font-weight: bold; padding: 0.25em 1em; text-decoration: none; color: #1E56C4 !important; background: #e6e6e6;  transition: .4s; min-width: 250px;
  text-align: center;}
	.btn-b:hover { background: #1E56C4; color: white !important;}

/********************************************************************/   
/* プリンター比較表 */	 
/********************************************************************/
/* タイトル （黒ベース角丸に白文字中央寄せ）*/	
	.prt_bu{background-color:#494949 ; font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif ; color : white ;border-radius: 5px;border-bottom: 1px solid #FFFFFF;margin: 0.5em 0em;padding: 0.2em 1em;text-align: center;font-size: 1.2em;}
/* タイトル （セピアベース角丸に白文字中央寄せ）*/	
	.prt_se{background-color:#563600 ; color : white ;border-radius: 5px;border-bottom: 1px solid #FFFFFF;margin: 0.5em 0em;padding: 0.2em 1em;text-align: center;font-size: 1.2em;}
/* タイトル （赤ベース角丸に白文字中央寄せ）*/	
	.prt_rd{background-color:#F42300 ; color : white ;border-radius: 5px;border-bottom: 1px solid #FFFFFF;margin: 0.5em 0em;padding: 0.2em 1em;text-align: center;font-size: 2em;}

/* 比較用テーブル */	
table.pr_box1 {
  width: 100%;
  border-collapse: collapse;   /* 罫線を1本に */
  table-layout: fixed;         /* 列幅を安定させる */
}

	/* 罫線と基本スタイル */
.pr_box1 th,
.pr_box1 td {
  border: 1px solid #848484;
  text-align: center;
  padding: 0.5em;
  word-break: break-word;      /* 長文対策（必要なら） */
}

	/* 見出しの基本色 */
.pr_box1 th {
  background: #ECECEC;
}

	/* 2列目だけ色を変える（見出し & データ行） */
.pr_box1 th:nth-child(2),
.pr_box1 td:nth-child(2) {
  background: #9F9F9F;
  color: #FFF;
  padding-left: 0.5em;
  padding-right: 0.5em;
}

	/* 列幅（1列目40% / 2列目20% / 3列目40% 例） */
.pr_box1 td:nth-child(1),
.pr_box1 th:nth-child(1) { width: 40%; }
.pr_box1 td:nth-child(2),
.pr_box1 th:nth-child(2) { width: 20%; }
.pr_box1 td:nth-child(3),
.pr_box1 th:nth-child(3) { width: 40%; }
	
/********************************************************************/
/* 商品紹介・フリーページ用　会話 */
/********************************************************************/

/* Q&A */
/*会話フキダシバック*/
	.fukidasi-bc { padding: 0.2em 0.2em; max-width: 800px; margin: 0em auto;line-height: 1.3;}
	
/*会話フキダシ*/
	.fukidasi { width: 100%; margin: 1em 0.2em; overflow: hidden; display: flex;}
	.fukidasi.right { flex-direction: row-reverse;}
	.fukidasi .faceicon { margin: 0 10px ; width: 80px; flex-shrink: 0;}
	.fukidasi .faceicon img{ width: 100%; height: auto;}
	.fukidasi .chatting { display: inline-block; max-width: 600px;}
	.fukidasi_says h2 ,.fukidasi_says p  { margin: 0; padding: 0;}
	
/*左フキダシ*/
	.fukidasi_saysl { display: inline-block; position: relative; margin: 0 1em; padding: 0 1em; border-radius: 12px; background: #FFEED5;}
	.fukidasi_saysl:after { content: ""; display: inline-block; position: absolute; top: 3px; border: 8px solid transparent; left: -19px; border-right: 18px solid #FFEED5;}
/*右フキダシ*/
	.fukidasi_saysr { display: inline-block; position: relative; margin: 0 1em; padding: 0 1em; border-radius: 12px; background: #C9ED00;}
	.fukidasi_saysr:after { content: ""; display: inline-block; position: absolute; top: 3px; border: 8px solid transparent; right: -19px; border-left: 18px solid #C9ED00;}

/*右フキダシ購入特典*/
	.fukidasi_tokuten { display: inline-block; position: relative; margin: 0 1em; padding: 0 1em; border-radius: 12px; background: #C8c2c6;}
	.fukidasi_tokuten:after { content: ""; display: inline-block; position: absolute; top: 3px; border: 8px solid transparent; right: -19px; border-left: 18px solid #C8c2c6;}

/* ひよこ用 */
/* 全体ラッパー（左右どちらでもOK） */
.fuki-wrap { display: flex; align-items: flex-end; gap: 12px;flex-wrap: wrap;}

/* キャラ画像（左右で共通） */
.char { width: auto; height: 100px; margin: 10px 20px;}

/* 吹き出し共通（色はCSS変数で管理） */
.fuki_l,
.fuki_r {
  --fuki-bg: #f6f6f6;   
  position: relative;
  padding: 18px 32px;
  font-size: 24px;
  border-radius: 40px;
  background: var(--fuki-bg);
  border: none;
  white-space: normal; 
  line-height: 1.4;
  max-width: 70%; 
  box-sizing: border-box;}

/* 右吹き出し専用の補正 */
.fuki_r {
  padding: 18px 32px 18px 60px;
}

/* 左向きの矢印（三角） */
.fuki_l::before {
  content: "";
  position: absolute;
  left: -22px;
  top: 50%;
  width: 46px;
  height: 34px;
  background: var(--fuki-bg);
  transform: translateY(-50%);
  z-index: -1;
  clip-path: polygon(
    0% 50%,
    65% 10%,
    100% 10%,
    70% 50%,
    100% 90%,
    65% 90%
  );
  border-radius: 14px;
  box-shadow: -6px 6px 10px rgba(0,0,0,0.12);
}

/* 右向きの矢印（三角） */
.fuki_r::before {
  content: "";
  position: absolute;
  right: -22px;
  top: 50%;
  width: 46px;
  height: 34px;
  background: var(--fuki-bg);
  transform: translateY(-50%);
  z-index: -1;
  clip-path: polygon(
    100% 50%,
    35% 10%,
    0% 10%,
    30% 50%,
    0% 90%,
    35% 90%
  );
  border-radius: 14px;
  box-shadow: 6px 6px 10px rgba(0,0,0,0.12);
}

/* ピン関係はそのまま */
.fuki_l .pin,
.fuki_r .pin {
  position: absolute;
  top: -22px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #fff 0, #fff 40%, #ffe066 41%, #ffc400 100%);
  box-shadow: 0 4px 8px rgba(0,0,0,0.35);
}
.fuki_l .pin { right: 16px; transform: rotate(20deg); }
.fuki_r .pin { left: 16px;  transform: rotate(-20deg); }

.fuki_l .pin::after,
.fuki_r .pin::after {
  content: "";
  position: absolute;
  width: 4px;
  height: 18px;
  background: #c0c0c0;
}
.fuki_l .pin::after { left: 15px; bottom: -16px; transform: skewX(-10deg); }
.fuki_r .pin::after { right: 15px; bottom: -16px; transform: skewX(10deg); }

/* デフォルト：うすグレー */
.fuki-gray { --fuki-bg: #f0f0f0; }

/* ほんのり黄色（ひよこ相談室向き） */
.fuki-yellow { --fuki-bg: #fff6c7; }

/* ほんのりベージュ */
.fuki-beige { --fuki-bg: #f4ece2; }

/* やさしい水色 */
.fuki-blue { --fuki-bg: #e4f2ff; }

/* うすピンク */
.fuki-pink { --fuki-bg: #ffe6ef; }

/********************************************************************/
    /* youtube */
/********************************************************************/

	.youtube { position: relative; height: 0; margin-bottom: 20px; padding-bottom: 56.25%; overflow: hidden;}
	.youtube iframe { position: absolute; top: 0; right: 0; width: 100%; height: 100%;}
	.container img{ max-width: 100%;}
	@media screen and (min-width: 600px) {
  	.container{ display: flex; margin-bottom: 1.5rem; justify-content: space-evenly; align-items: flex-start;}
  	.item{ flex-basis: 80%; }
	}
	
/********************************************************************
 *  共通：グリッド設定
 ********************************************************************/

/********************************************************************
 *  2×2 写真グリッド（photo-grid）
 ********************************************************************/
/* 子要素（img）が端数の場合に中央寄せ */
.photo-grid {
  display: grid;
  gap: 8px;
  justify-items: center;
}

.photo-grid img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

/* PC時の列数 */
.photo-grid.cols-2 { grid-template-columns: repeat(2, 1fr) !important; }
.photo-grid.cols-3 { grid-template-columns: repeat(3, 1fr) !important; }
.photo-grid.cols-4 { grid-template-columns: repeat(4, 1fr) !important; }

/********************************************************************
 *  2カラム共通 grid2
 ********************************************************************/
.grid2 {
  display: grid;
  gap: 8px;
  padding: 2px 0;
}

/* 内側共通の余白 */
.grid2 .item {
  padding: 8px;
}

/* 共通：画像 */
.grid2 .item img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

/* 比率クラス（共通） */
.grid2.ratio-7_3 { grid-template-columns: 0.70fr 0.30fr !important; }
.grid2.ratio-5_5 { grid-template-columns: 1fr 1fr !important; }
.grid2.ratio-3_7 { grid-template-columns: 0.30fr 0.70fr !important; }

/*それぞれのレイアウト差分*/
/* grid2-7_3 の画像は最大 250px まで */
.grid2-7_3 .item img {
  max-width: 250px;
}

/* MILロゴだけさらに小さく */
.grid2-5_5 .item img.mil-img {
  max-width: 140px;
}

/********************************************************************
 * セットタイトル（set_title）
 ********************************************************************/
.set_title {
  display: grid;
  grid-template-columns: 0.35fr 0.65fr;
  gap: 8px;
  padding: 2px 0;
}

.set_title .item {
  padding: 16px;
}

/* 左ブロック */
.set_title .item:first-child {
  background: #f5f5f5;
  border-radius: 12px;
}

/* 右ブロック */
.set_title .item:last-child {
  background: #fff;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* 見出し（catch） */

.catch {
  position: relative;
  margin: 0 0 6px;
  padding-left: 14px;
  padding-bottom: 4px;
  font-size: 20px;
  font-weight: 800;
  border-bottom: 2px solid #000;
  color: #3b3f46;
}

/* 左の縦線 */
.catch::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 8px;
  background: #000;
}

/********************************************************************/
/* スマホで 1 カラム */
/********************************************************************/

/* スマホでは必ず1列に（OCNKテーマに勝つために !important 必須） */
@media (max-width: 768px) {
  .photo-grid[class*="cols-"],
  .grid2[class*="ratio-"],
  .set_title {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
}

/******************************************************************/
  /* ひよこ */
/******************************************************************/

/* ひよこ相談室：パソコンの違いまとめ タイトル */
.hiyo_title { width: 100%; background-color: #F5F5F5; display: flex; align-items: center; padding: 15px 0;}

.hiyo_title img { width: 80px; height: auto; margin-left: 20px; margin-right: 20px;}

.hiyo_title p,
.hiyo_title h3 { margin: 0; font-size: 28px; line-height: 1.4;}

/* BEST3 レイアウト（グリッド＋金銀銅）*/
/******************************************************************/
/* 全体ラップ：グリッド管理 */
.best3-wrap { display: grid; gap: 16px; margin: 16px 0;}

/* スマホ：1列 */
@media (max-width: 767px) {
  .best3-wrap {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
}

/* タブレット以上：3列 */
@media (min-width: 768px) {
  .best3-wrap {
     display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr))!important;
  }
}

/* ▼ カラー定義（順位ごとの色セット） */
.best1 {
  --border-color: #ffd700;   /* 金の枠線 */
  --bg-color:     #ffe36a;   /* 金の背景 */
}

.best2 {
  --border-color: #cfd8e2;   /* 銀の枠線 */
  --bg-color:     #e2e8ef;   /* 銀の背景（少し淡い） */
}

.best3 {
  --border-color: #e2c2a2;   /* 銅の枠線 */
  --bg-color:     #f2d5b8;   /* 銅の背景（淡く） */
}

.best0 {
  --border-color: #cfc4b6;      /* ランク外の枠線 */
  --bg-color:     #f4ece2;   /* ランク外の背景 */
}


/* カード共通 */
.best3-box {
  position: relative;
  padding: 22px 16px 16px;
  border-radius: 16px;
  border: 2px solid #eee;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* カード枠線色 */
.best3-box { border-color: var(--border-color, #ddd);}

/* ランクバッジ */
.best3-rank {
  position: absolute;
  top: -12px;
  left: 16px;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  color: #000;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* バッジ色 */
.best3-rank { background: var(--bg-color, #eee);}

/* 全カード共通レイアウト（タイトル上／文章＋画像下）*/

/* best3-inner はブロックレイアウトに */
.best3-inner.layout-split { display: block;}

/* タイトル部分（共通） */
.best3-title {
  margin: 0 0 12px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 10px;
}

/* タイトル背景色 */
.best3-title { background: var(--bg-color, #eee);}

/* 下段の文章＋画像を横並びにする */
.best3-body { display: flex; align-items: flex-start; gap: 12px;}

/* 文章側 */
.best3-body p { margin: 0; line-height: 1.6; flex: 1;}

/* 画像側 */
.best3-body img {
  width: 90px;
  height: auto;
  object-fit: contain;
  flex-shrink: 0;
  border-radius: 10px;
}

/* スマホでは縦積みにする */
@media (max-width: 767px) {
  .best3-body {
    flex-direction: column;
  }
  .best3-body img {
    align-self: flex-start;
  }
}

/* BEST3 横長レイアウト（グリッド＋金銀銅）*/
/********************************************************************/
/* グリッドラップ */
.best-wrap {
  display: grid;
  gap: 16px;
  margin: 25px;
}

/* ▼ カード共通ベース（ここが枠線の本体） */
.best-item {
  position: relative;
  padding: 40px 16px 16px;
  border-radius: 16px;
  border: 3px solid #ddd;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  box-sizing: border-box;
}

/* ▼ 上にかぶせるタイトル帯 */
.best-rank {
  position: absolute;
  top: -18px;
  left: 24px;
  padding: 6px 18px;
  border: 3px solid #ddd;
  background: #fff;
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

/* ▼ カード本体＆バッジをランク連動でまとめる */
.best-item,
.best-rank {
  border-color: var(--border-color, #ddd);
  background: var(--badge-color, #fff);
}

/* 中身：画像＋タイトルを横並び */
.title-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.img-title {
  width: 30px;
  height: auto;
}
.best-title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
}

/* ▼ 説明文エリア：画像2 に回り込み */
.img-desc {
  float: left;
  width: 110px;
  height: auto;
  margin: 10px 16px 8px 0;
}
.best-desc {
  margin: 10px 0 0 0;
  font-size: 16px;
  line-height: 1.7;
}

/* ▼ 説明文エリア：画像2 2段にする場合 */
.desc-block {
  display: flex;
  gap: 10px;
  margin-top: 16px;
  align-items: flex-start;
}
.desc-block .img-desc {
  width: 130px;
  height: auto;
}
.desc-block .best-desc {
  flex: 1;
}

/* ▼ 説明文エリア：画像2段　説明は1段にする場合 */
/* 親ブロック：左に画像2枚縦、右に説明文 */
.desc-block-2img {
  display: flex;
  gap: 16px;
  margin-top: 20px;
  align-items: flex-start;
}
/* 左の画像2枚を縦並びにする */
.img-column {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
/* 画像サイズ調整（共通） */
.img-2set {
  width: 110px;
  height: auto;
}
/* 説明文側：サイズは best-desc に合わせる */
.big-desc {
  flex: 1;
}

/* 画像2枚のそれぞれにキャプションをつけるためのボックス */
.img-set {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 10px;
}

/* キャプション文字（共通） */
.img-caption {
  font-size: 14px;
  color: #444;
  margin-top: 4px;
  text-align: center;
  line-height: 1.3;
}

/* 横並びで8個まで綺麗に整列するボックス */
.img-set-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
  gap: 12px;
  justify-items: center;
  margin: 20px 0;
}

/* 各 img-set の後ろに「＞」を追加 */
.img-set-row .img-set {
  position: relative;
  padding-right: 30px; /* ＞ のスペース確保 */
}

.img-set-row .img-set::after {
  content: "＞";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  color: #bca98d; /* 優しいブラウン系 */
  font-size: 22px;
  font-weight: bold;
}

/* 最後の要素だけ非表示にする */
.img-set-row .img-set:last-child::after {
  content: "";
}

/* BEST3 タイトル　画像＋タイトル*/
/********************************************************************/
/* ▼ 各順位のカラーパレット（ここだけ変えれば色が変わる） */
.best1_hiyo {
  --bg-start: #fff5cc;
  --bg-mid:   #ffe37a;
  --bg-end:   #ffd54a;
  --border-color: #d4af37;
}

.best2_hiyo {
  --bg-start: #f5f5f5;
  --bg-mid:   #e0e0e0;
  --bg-end:   #c0c0c0;
  --border-color: #9e9e9e;
}

.best3_hiyo {
  --bg-start: #fff2e0;
  --bg-mid:   #f5c99b;
  --bg-end:   #e29a4a;
  --border-color: #b87333;
}

.best0_hiyo {
  --bg-start: #faf7f2;
  --bg-mid:   #efe9df;
  --bg-end:   #e4dbce;
  --border-color: #cfc4b6;
}

/* ▼ 共通レイアウト */
.best1_hiyo,
.best2_hiyo,
.best3_hiyo,
.best0_hiyo {
  width: 100%;
  padding: 15px 20px;
  box-sizing: border-box;

  background: linear-gradient(
    90deg,
    var(--bg-start),
    var(--bg-mid) 50%,
    var(--bg-end)
  );

  border-top: 4px solid var(--border-color);
  border-bottom: 4px solid var(--border-color);
}

/* 上段：画像＋タイトル */
.best1_hiyo .top,
.best2_hiyo .top,
.best3_hiyo .top,
.best0_hiyo .top { display: flex; align-items: center;}

/* 画像 */
.best1_hiyo img,
.best2_hiyo img,
.best3_hiyo img,
.best0_hiyo img { width: 80px; margin: 0 20px;}

/* タイトル */
.best1_hiyo h3,
.best2_hiyo h3,
.best3_hiyo h3,
.best0_hiyo h3 { margin: 0; font-size: 28px; line-height: 1.4;}

/* 説明文 */
.best1_hiyo .desc,
.best2_hiyo .desc,
.best3_hiyo .desc,
.best0_hiyo .desc { margin: 0; padding-left: 20px; font-size: 14px; line-height: 1.6;}


/********************************************************************/
  /* 学部アイコン */
/********************************************************************/

/* 角丸グレー枠囲・新規登録に使用 */	
	.kadomaru1{margin: 0.2em 0 ;padding: 0.3em ;background: #FFF;border: solid 4px #848484;border-radius: 8px; }
	
/* アイコン_ログイン 黒地に白文字　センター配置*/	
	.icon1{ margin:0.5em auto ; padding: 0.5em 0 ; width: 10em;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold ;background: #000 ;border-radius: 8px;}

/* アイコン_グレー 新規登録に使用　*/	
	/* 全体の中央配置（学部一覧の下に置く用） */
	.register-wrap {
  text-align: center;
  margin-top: 0.8em;
}
	/* 新規登録ボタン本体 */
	.icon2 {display: inline-flex; justify-content: center; align-items: center; margin: 0.2em auto; padding: 0.5em 1em; line-height: 1.3; width: 8em;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif; color: #FFF; text-align: center; font-weight: bold; background: #9F9F9F; border-radius: 25px; position: relative; gap: 0.7em;}

	/* アイコン_青 左丸*/	
	.iconB {display: inline-block; padding: 0.5em ;line-height: 1.3;width: 10em;  color: #FFF;font-weight: bold ; background: #0079F2;border-radius: 25px 0px 0px 25px;}
	.iconB:before{content: '◉'; color: #FFF; margin-right: 0.5em;}

 /* 経済 */
	.foe {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #0583F2; box-shadow: 0px 0px 0px 2px #0583F2; border: solid 2px #FFF; border-radius: 8px;}
	
/* 経営 */
	.foba {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #F46900; box-shadow: 0px 0px 0px 2px #F46900; border: solid 2px #FFF; border-radius: 8px;}

/* 法 */
	.fol {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #7a38a6; box-shadow: 0px 0px 0px 2px #7a38a6; border: solid 2px #FFF; border-radius: 8px;}

/* 現社 */
	.foso {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #d95436; box-shadow: 0px 0px 0px 2px #d95436; border: solid 2px #FFF; border-radius: 8px;}

/* 現社ゼミ */
	.fosz {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #f2856d; box-shadow: 0px 0px 0px 2px #f2856d; border: solid 2px #FFF; border-radius: 8px;}

/* 国際 */
	.foir {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #C4003A; box-shadow: 0px 0px 0px 2px #C4003A; border: solid 2px #FFF; border-radius: 8px;}

/* 外語 */
	.fofs {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #bf1f77; box-shadow: 0px 0px 0px 2px #bf1f77; border: solid 2px #FFF; border-radius: 8px;}

/* 外語メディア */
	.fofsm {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #bf5098; box-shadow: 0px 0px 0px 2px #bf5098; border: solid 2px #FFF; border-radius: 8px;}

/* 文化 */
	.focf {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #0eba7e; box-shadow: 0px 0px 0px 2px #0eba7e; border: solid 2px #FFF; border-radius: 8px;}
	
/* 理学部 */
	.fosc {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #44C727; box-shadow: 0px 0px 0px 2px #44C727; border: solid 2px #FFF; border-radius: 8px;}

/* 理_数理 */
	.fosm {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #1DA500; box-shadow: 0px 0px 0px 2px #1DA500; border: solid 2px #FFF; border-radius: 8px;}

/* 理_物理 */
	.fosp {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #44C727; box-shadow: 0px 0px 0px 2px #44C727; border: solid 2px #FFF; border-radius: 8px;}

/* 理_宇宙 */
	.fosu {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #81DF52; box-shadow: 0px 0px 0px 2px #81DF52; border: solid 2px #FFF; border-radius: 8px;}

/* 情理 */
	.foise {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #1f69b2; box-shadow: 0px 0px 0px 2px #1f69b2; border: solid 2px #FFF; border-radius: 8px;}

/* 生命 */
	.fols {display:inline-block;padding: 0.2em 1em ;margin: 0.2em ;font-family:'メイリオ','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;color: #FFF; text-align:center;font-weight: bold; background: #F3A000; box-shadow: 0px 0px 0px 2px #F3A000; border: solid 2px #FFF; border-radius: 8px;}

/********************************************************************/	