@charset "UTF-8";

body {
	font-size:100%;
	font-family: 'Noto Sans JP', -apple-system, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;;
		-webkit-text-size-adjust: 100%;
		-webkit-appearance: none;	/*button*/
	color:#111111;
	margin:0;
	font-weight:300;
}

div { box-sizing:border-box; }
img { display:block; max-width: 100%; height: auto; margin:0 auto; }
img.inline { display:inline; }
.nsbr { white-space:nowrap; }
.urlstr { word-break:break-all !important; word-wrap:break-word; overflow-wrap:break-word; }
.clearfix:after { content:""; display:block; height:0; clear:both; visibility:hidden; }
.mode_pc { display:block; }
.mode_pcs { display:block; }
.mode_sp { display:none; visibility:hidden; }
.mode_sps { display:none; visibility:hidden; }
.serif { font-family: 'Noto Serif JP', serif; }
b, strong { font-weight:500; }
.serif b, .serif strong { font-weight:600; }



hr {
	border: 0; height: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	clear:both;
}
#pages { max-width:1024px; min-width:320px; margin:0 auto; background-color:#fff; }
#pagecontents { width:960px;  margin:40px auto; display:flex; flex-wrap:wrap; }
.contents { flex:0 0 690px; order:2; margin-left:40px; }
.inc_indexnavi { flex:0 0 230px; order:1; }



/* ========== common page ========== */











/* ========== plug-in overwrite ========== */
#colorbox, #cboxContent, #cboxLoadedContent { box-sizing:content-box !important; }


/* ========== rwd table (fix) ========== */
.rwd_table, .rwd_table_fix { width:100%; margin-top:20px; border-collapse:collapse; }
.rwd_table caption, .rwd_table_fix caption { font-size:1.1rem; color:#003399; }
.rwd_table th, .rwd_table td, .rwd_table_fix th, .rwd_table_fix td { padding:6px 6px; border:1px #999 solid; line-height:1.5; vertical-align:top; }
.rwd_table th, .rwd_table_fix th { background-color:#eee; text-align:left; font-weight:normal; }
.rwd_table td, .rwd_table_fix td { background-color:#fff; text-align:left; }

/* ========== dl list ========== */
dl.dl_table { margin:0 0 40px 0;}
dl.dl_table dt { padding:4px 6px; background-color:#EEEEEE; line-height:1.8; box-sizing:border-box; margin:0; }
dl.dl_table dd { padding:4px 6px 16px 40px; line-height:1.8; box-sizing:border-box; margin:0; }




/* ========== shopping navi ========== */
.shopping_nav { background-color:#F2EAE4; padding:20px 0; margin-top:80px; }
#shopping_navi { display:flex; justify-content:space-around; }
#shopping_navi dl { flex:0 0 46%;  }
#shopping_navi dl dt span { display:block; padding:8px 0; color:#B61D22; line-height:1; font-size:0.9rem; border-bottom:1px #b61d22 solid; }
#shopping_navi dl dd { margin-left:0; margin-bottom:20px; line-height:1.6; font-size:0.8rem; }
#shopping_navi dl dd a { text-decoration:underline; }
#shopping_navi table.paylist { border-collapse:collapse; }
#shopping_navi table.paylist th, #shopping_navi table.paylist td { font-weight:normal; vertical-align:top; text-align:left; padding:4px; }
#shopping_navi table.paylist th { padding-right:20px; white-space:nowrap; }
#shopping_navi .shippinglist { display:flex; flex-wrap:wrap;}
#shopping_navi .shippinglist div { flex:0 0 50%; }
#shopping_navi .shippinglist table { border-collapse:collapse; }
#shopping_navi .shippinglist table caption { text-align:left; }
#shopping_navi .shippinglist table th, #shopping_navi .shippinglist table { font-weight:normal; vertical-align:top; text-align:left; padding:4px; }
#shopping_navi .shippinglist table th { padding-right:20px; white-space:nowrap; text-align:justify; }
#shopping_navi table.law { border-collapse:collapse; }
#shopping_navi table.law th, #shopping_navi table.law td { font-weight:normal; vertical-align:top; text-align:left; padding:4px; }
#shopping_navi table.law th { padding-right:20px; white-space:nowrap; }

/* ========== calendar ========== */
.calendar_block { display:flex; justify-content:left; flex-wrap:wrap; }
.calendar_one { flex:0 0 33%; padding:5px; }
.calendar_month { text-align:center;margin-bottom:6px; display:block; }
table.calendar { border-collapse:collapse; width:100%; }
table.calendar td {
	padding:2px;
	border: solid 1px #ccc;
	text-align: center;
}
.cal_wri {background-color:#ddd; }
.doyou {color:#0000FF;}
.nitiyou {color:#FF0000;}
.cal_wria {height:25px;width:16.6%;background-color:#002BF5; }
.cal_wrib {height:25px;width:16.6%;background-color:#C0F52B; }
.cal_wric {height:25px;width:16.6%;background-color:#2BD0F5; }
.cal_wrid {height:25px;width:16.6%;background-color:#FF99AA; }
.cal_wrie {height:25px;width:16.6%;background-color:#99CCFF; }
.cal_wrif {height:25px;width:16.6%;background-color:#0099FF; }
.cal_wrig {height:25px;width:16.6%;background-color:#00CC00; }
.cal_wrih {height:25px;width:16.6%;background-color:#66AA99; }
.cal_wrii {height:25px;width:16.6%;background-color:#FFFF00; }
.cal_wrij {height:25px;width:16.6%;background-color:#66FF88; }
.calender_notice { flex:0 0 100%; text-align:left; }
.calender_notice p { margin:0 0 0.5em 0; }



/* ========== index ========== */
.inavi { margin-bottom:12px; }
.inavi a:hover img { opacity:0.8; }
.inv09 { padding:12px; background-color:#F2EAE4; }
.inv09 p.fm_tit { font-weight:500;font-size:1.1rem; margin:6px 0 12px 0; }
.inv09 p.fm_txt { font-weight:500;font-size:0.8rem; margin:8px 0 0 0; line-height:1.6; }
.inv09 form { text-align:center; }
.inv09 form input[type=text] { border:2px #4D4C4C solid; width:130px; height:30px; border-radius:0; margin:0; padding:2px; font-weight:300; box-sizing:border-box; }
.inv09 form input[type=submit] { width:50px; height:30px; border-radius:0; margin:0; padding:0; background-color:#4d4c4c; color:#fff; outline: none; border:none; cursor:pointer; }
.inv09 form input[type=submit]:hover { background-color:#B61D22; }
.inv10 { margin:30px 0; border:1px #B61D22 solid; }
.inv10 p { margin:0; padding:8px 16px; background-color:#B61D22; color:#fff; }
.inv10 ul { margin:12px 12px 20px 12px; padding:0; font-size:0.85rem; list-style:none; }
.inv10 ul li { line-height:1.6; margin:0; }
.inv10 ul li a { display:block; text-decoration:none; color:#000;border-bottom:1px #b61d22 dashed;padding:6px;   }
.inv10 ul li a:before {
	font-family: 'Font Awesome 5 Free';
	content:'\f0c8　';
	font-size:4px;
	vertical-align:middle;
	font-weight:900;
}
.inv10 ul li a:hover { background-color:#efefef; }
.inv10 ul li ul { margin:0 0 0 20px; }



/* ========== header ========== */
header { width:100%; }
#header { position:relative; }

.header_line { background-color:#040000; height:100px; }
.header_logo { position:absolute; top:25px; left:30px; }
.header_contact { position:absolute; top:15px; right:10px; }
.header_logo img { height:50px; }
.header_contact img { height:70px; }



#site_navi { background-color:#B61D22; }

.site_menu { display:flex; justify-content:center; margin:0; padding:0; list-style:none; text-align:center; }
.site_menu li { flex:1 1 10%; margin:0; font-size:0.90rem;  }
.site_menu li a {
	color:#fff; text-decoration:none; line-height:1.3; height:100%;  padding:10px 0; box-sizing:border-box;
	display: flex; justify-content: center; align-items: center;
	background-image:url('../images/common/navi_bg.png');
	background-position:right 1px center;
	background-repeat:no-repeat;
}
.site_menu li a:hover { background-color:#E72A25; }
.site_menu li:last-child a { background-image:none; }

.site_menu li ul { display:none; }
.site_menu li:hover ul {
	display:block;
	z-index:170;
	width:200px;
	position: absolute;
	padding:0;
	background-color:#74698B;
	list-style:none;
}
.site_menu li:hover ul li a { padding:10px; border-right:none; text-align:left; }

.preload_hidden { display:none; }





/* ========== footer ========== */
#footer { padding:30px 10px;background-color:#040000; }

.ft_plink { float:left; }
.ft_plink a { text-decoration:none; padding:2px 10px; border-right:1px #fff solid; color:#fff; font-size:0.8rem; }
.ft_plink a:hover { text-decoration:underline; }
.ft_plink a:last-child { border-right:none; }
.ft_copy { float:right; font-size:0.8rem; color:#fff; margin-right:70px; }

.pageTop { position:relative; z-index:200; }
.pageTop a {
	position: fixed;
	background:url('../images/common/pagetop_bt.png') left top no-repeat;
	background-size:contain;
	display: block;
	width: 40px;
	height: 40px;
	right:10px;
	bottom:10px;
	text-indent:-9999px;
	opacity:0.7;
}
.pageTop a:hover { opacity:1.0; }




/* # Tablet 768-960px
========================================================================================= */
@media only screen and (max-width: 960px) {

	.mode_pc { display:none; visibility:hidden; }
	.mode_sp { display:block !important; visibility:visible; }
	.mode_pcs { display:block;visibility:visible; }
	.mode_sps { display:none !important; visibility:hidden; }

	#pagecontents { width:100%; margin-top:0; padding-top:60px; }
	.contents { flex:0 0 100%; order:1; margin-left:0px; }
	.inc_indexnavi { flex:0 0 100%; order:2; }


	/* ========== common page ========== */








	/* ========== rwd table ========== */
	.rwd_table th {
		box-sizing:border-box;
		display:block;
		clear:both;
		width:100%;
		border:none;
	}
	.rwd_table th a {
		box-sizing:border-box;
		color:inherit;
	}
	.rwd_table td {
		box-sizing:border-box;
		display:block;
		width:100%;
		float:left;
		text-align:left;
		padding:6px 4px 12px 20px !important;
		border:none;
	}


	/* ========== shopping navi ========== */
	.shopping_nav { padding:0; margin-top:30px; }
	#shopping_navi table.paylist th, #shopping_navi table.paylist td,
	#shopping_navi table.law th, #shopping_navi table.law td
	 { display:block; }
	#shopping_navi table.paylist th, #shopping_navi table.law th { background-color:#fff; }

	/* ========== calender ========== */
	.calendar_one { flex:0 0 50%; padding:5px; }

	/* ========== index ========== */
	.index_navi { margin-top:40px; display:flex; justify-content:center; flex-wrap:wrap; }
	.index_navi .inavi { flex:1 1 33%; padding:5px; }
	.index_navi .inavi.inv10 { flex:0 0 100%; }

	/* ========== header ========== */
	header { position:fixed; top:0; left:0; z-index:500; border-bottom:1px #fff solid; }

	.header_line { height:54px; background-image:none; }
	.header_logo { top:8px; left:10px; }
	.header_contact { top:10px; right:100px; }
	.header_logo img { height:38px; }
	.header_contact img { height:36px; }

	#site_navi { display:none; }

	#sp_menu_bt {
		display: block;
		position:fixed;
		top:8px;right:5px;
		width: 38px;
		height: 38px;
		cursor:pointer;
		background-color:#B61D22;
		border-radius:3px;
	}
	#sp_menu_bt span {
		width: 26px;
		height: 3px;
		border-radius:2px;
		display: block;
		background: #fff;
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -13px;
	}

	#sp_menu_bt span { transition: all 0.3s; transform: rotate(0deg); }

	#sp_menu_bt .top { transform: translateY(-11px); }
	#sp_menu_bt .middle { transform: translateY(-1px); }
	#sp_menu_bt .bottom { transform: translateY(9px); }
	.mm-menu_opened+noscript+.mm-slideout #sp_menu_bt .middle { background: rgba(255, 255, 255, 0); }
	.mm-menu_opened+noscript+.mm-slideout #sp_menu_bt .top { transform: rotate(-45deg) translateY(0px); }
	.mm-menu_opened+noscript+.mm-slideout #sp_menu_bt .bottom { transform: rotate(45deg) translateY(0px); }
	.mm-navbar a img { height:20px; border-radius:2px; }

	.cart_bt_sp {
		display: block;
		position:fixed;
		top:8px;right:48px;
		width: 38px;
		height: 38px;
		cursor:pointer;
		background-color:#B61D22;
		border-radius:3px;
		color:#fff;
		box-sizing:border-box;
		padding:4px;
		font-size:24px;
	}

	.sp_serch_form { position:relative; width:100%; }
	.f_c_field:not(.select_rediz_coosen).search_mod {
		width: 100%;
		height: 3rem;
		padding: 0 1rem 0 5.4rem;
		font-size: 16px;
		border-bottom: 1px solid #e8e8e8;
		border-top: 1px solid transparent;
		border-right: 0;
		border-left: 0;
    	box-sizing:border-box;
	}
	.search_submit {
		position: absolute;
		left: 1.9rem;
		top: 50%;
		margin-top: -.5em;
		line-height: 1;
		font-size: 2.3rem;
		color: #242424;
		width: 1em;
		height: 1em;
		background: url('../images/search.svg');
		background-size: contain;
		background-repeat: no-repeat;
		cursor: pointer;
		border: 0 #fff solid;
	}
	/* ========== footer ========== */


}


/* # mobile -767px
========================================================================================= */
@media only screen and (max-width: 767px) {

	.mode_pc { display:none; visibility:hidden; }
	.mode_pcs { display:none;visibility:visible; }
	.mode_sp { display:block !important; visibility:visible; }
	.mode_sps { display:block !important; visibility:hidden; }


	/* ========== common page ========== */


	/* ========== dl list ========== */
	dl.dl_table dd { padding:4px 0px 16px 0px; }


	/* ========== shopping navi ========== */
	#shopping_navi { display: block; }

	#shopping_navi dl { margin:0; }
	#shopping_navi dl dt span {
		display:block;
		width:100%;
		padding:10px;
		box-sizing:border-box;
		position:relative;
		border-bottom:1px #B61D22 solid;
		cursor:pointer;
	}
	#shopping_navi dl dt span:after {
		content: '\f078';
		font-family: 'Font Awesome 5 Free';
		font-weight:900;
		font-size: 18px;
		color: #B61D22;
		line-height: 35px;
		position: absolute;
		top: -2px;
		right: 10px;
	}
	#shopping_navi dl dt span.viewdd:after { content: '\f077'; }
	#shopping_navi dl dd { padding:0 10px; box-sizing:border-box; display:none; }

	#shopping_navi .shippinglist div { flex:0 0 100%; }
	#shopping_navi .shippinglist div table caption { margin-top:6px; background-color:#fff; }

	/* ========== index ========== */
	.index_navi .inavi { flex:1 1 50%; margin-bottom:0; }
	.index_navi .inavi.inv10 { margin:10px 0; }


	/* ========== footer ========== */
	.ft_plink a { display:block; border:none; }
	.ft_plink, .ft_copy { float:none; text-align:center; margin:20px 0; line-height:3; }



}
/* # mobile S
========================================================================================= */
@media only screen and (max-width: 369px) {

	.header_contact { display:none; }

}
