@charset "Shift_JIS";


@font-face {
    font-family: 'NotoSans';
	font-style: normal;
	font-weight:400;
    src: url('/lib/font/notosans-demilight-350.woff') format('woff');
}
@font-face {
    font-family: 'NotoSans';
	font-style: normal;
	font-weight:700;
    src: url('/lib/font/notosans-bold-700.woff') format('woff');
}

/* ======= classes ======== */

.right {
	float: right;
	margin: 0 0 10px 15px;
}

.left {
	float: left;
	margin: 0 15px 10px 0;
}

#main .right img ,
#main .left img ,
#main img.right  ,
#main img.left  {
	max-width:50% !important;
	height: auto !important;
}

@media screen and (max-width: 659px) {
	.hide_mobile {
		display: none;
	}
}
@media screen and (min-width: 660px) {
	.hide_PC {
		display: none;
	}
}

/* body ボディ
-----------------------------------------------------*/

body {
	font-family: "NotoSans" ,"Verdana", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Osaka‐等幅";
	font-size: 80%;
	line-height: 140%;
	color: #333333;
	text-align: center;
	margin: 0px auto;
	padding: 0px;
	background: url(./lib/image/template/bg02.jpg) fixed;
}
/* container コンテナ
-----------------------------------------------------*/

#container {
	margin: 0px auto;
	/*
	border-left: #d22d31 solid 1px;
	border-right: #d22d31 solid 1px;
	*/
	width: 100%;
    max-width: 980px;
	background-color: #FFFFFF;
	text-align: left;
	box-shadow: 0 0 20px rgba(0,0,0,.4);
}
/* header ヘッダー
-----------------------------------------------------*/

header {
	background: url(./lib/image/template/header.png) 0 0 no-repeat;
	position: relative;
	height: 180px;
	border-bottom: 3px rgba(255,255,255,.7) solid;
}

@media screen and (max-width: 659px) {
	header {
		background-size: contain;
		height: 120px;
	}
}

#header {
	height: 180px;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}


.flickity-page-dots { bottom: 16px !important; }

#header_left {
	float: left;
}
#header_left2 {
	float: left;
	font-size: 30px;
	line-height: 140%;
	font-weight: bold;
	margin: 40px 0px 0px 10px;
	overflow: hidden;
	display: inline;
}
#header_right {
	font-size: 12px;
	float: right;
	text-align: right;
	margin: 30px 10px 0px 0px;
}
#header_right .tel {
	font-size: 18px;
	font-weight: bold;
	color: #CC0000;
	line-height: 105%;
}
.tel a, .tel a:link, .tel a:visited {
	color: #CC0000;
	text-decoration: none;
}
.tel a:hover {
	color: #CC0000;
	text-decoration: underline;
}
h1 {
	font-size: 17px;
	font-weight: normal;
	background: #000000;
	background-image: url(images/menu.gif);
	background-repeat: repeat-x;
	color: #FFFFFF;
	height: 25px;
	width: 890px;
	margin: 0px;
	padding: 0px 0px 5px 10px;
	display: none;
}
/* menu メニュー
-----------------------------------------------------*/
#menu {
	position: absolute;
	bottom: -1px;
	right: 0;
    font-weight: bold;	
	font-size: 14px;
	color: #000;
}
#menu ul {
	list-style: none;
	margin: 0px 0px 0px 0px;
	padding: 0px;
	background: rgba(255,255,255,1);
	display: flex;
	flex-wrap:wrap;
}
@media screen and (min-width: 660px) {
	#menu {
		height: 28px;
	    opacity: .7;
	}

	#menu:before {
	  content: '';
	  display: inline-block;
	  width: 0;
	  height: 0;
	  border-style: solid;
	  border-width: 27px 44px 0 0;
	  border-color: rgba(255,255,255,0) #FFF transparent transparent;
	}
	#menu ul {
		display: inline-block;
	}

}

#menu li {
	list-style: none;
	float: left;
	text-align: center;
	border-right: solid #FFFFFF 1px;
	border-left: solid #FFFFFF 1px;
	margin: 0px 0px 0px 0px;
	white-space: nowrap;
	flex-grow: 1;
}
#menu a, #menu a:link, #menu a:visited {
	color: #000;
	text-decoration: none;
	padding: 5px 25px 5px 25px;
	display: block;
}
@media screen and (max-width: 659px) {
	#menu a, #menu a:link, #menu a:visited {
		padding: 5px 15px 5px 15px;
	}
}
#menu a:hover {
	color: #000000;
	background: #ececec;
	text-decoration: none;
}
/* pan パンくずリスト
-----------------------------------------------------*/

.pan {
	font-size: 10px;
	padding: 10px 20px 0px 20px;
}
/* main メイン
-----------------------------------------------------*/

#mainVisual .meigen {
	max-width: 100%;
}


#main {
    float: right;
    width: 100%;
    max-width: 715px;
    background: #FFFFFF;
    margin: 10px;
    padding: 0px 0px 0px 0px;
	line-height: 160%;
}

@media screen and (max-width: 659px) {
	#main { margin: 0 }
}

#main * {
	max-width:100% !important;
	height:auto;
}
#main .category {
	margin: 0px 0px 15px 0px;
}

#main img {
	border-radius: 3px;
	box-sizing: border-box;
}

#main h2 {
    background-color: #f4f4f4;
    /* background-image: url(images/h2.gif); */
    background-repeat: no-repeat;
    font-size: 1.5rem;
	line-height: 1.2;
    color: #000000;
    font-weight: bold;
    margin: 10px 10px 10px 10px;
    padding: 11px 10px 10px 10px;
    border-bottom: 4px #000 solid;
}
#main h3 {
	font-size: 110%;
    /* border-left: #000000 solid 6px; */
    /* border-bottom: #cccccc solid 1px; */
    padding: 8px 10px 9px 9px;
    margin: -5px -5px 5px -5px;
    background-color: #ffd2d2;
}

#main h3 a {
	color: #000;
}

#main h4 {
	font-size: 110%;
    font-weight: bold;
    color: #000;
    background-color: #e3e3e3;
    /* background: url(images/h4.png); */
    /* background-repeat: no-repeat; */
    margin: 10px 5px 10px 5px;
    padding: 8px 10px 7px 10px;
    border-bottom: 1px #000 solid;
}
#main .entry_body {
	margin: 15px 24px 15px 24px;
	padding: 0px 0px 0px 0px;
}

@media screen and (max-width: 659px) {
	#main .entry_body {
		margin: 15px 10px;
	}
}
#main p {
	margin: 10px 10px 20px 10px;
	padding: 0px 0px 0px 0px;
}
#main blockquote {
	margin: 20px 10px 20px 10px;
	padding: 10px 10px 10px 10px;
	border: #999999 dotted 1px;
	background: #FFFFFF;
}
#main ul {
	margin: 0px 30px 0px 28px;
	padding: 0px 0px 10px 0px;
}
#main ol {
	margin: 0px 30px 0px 35px;
	padding: 0px 0px 10px 0px;
}
#main li {
	line-height: 140%;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 5px 0px;
}
#main .red {
	color: #CC0000;
	font-weight: bold;
}

#main .modoru {display: none}

/* main table メインのテーブル
-----------------------------------------------------*/

#main table ul {
	margin: 5px 0px 5px 20px;
	padding: 0px 0px 0px 0px;
}
#main table {
	margin: 10px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	width: 95%;
	border: solid #cccccc 1px;
	border-collapse: collapse;
}
#main caption {
	margin: 0px 0px 10px 0px;
	font-size: 110%;
	font-weight: bold;
}
#main th {
	padding: 10px 10px 10px 10px;
	border: solid #cccccc 1px;
	background-color: #f8f8f8;
	text-align: center;
}
#main td {
	padding: 10px 10px 10px 10px;
	border: solid #cccccc 1px;
}
/* box ボックス
-----------------------------------------------------*/

#main .box1 {
    height: auto;
    /* border: solid #cccccc 1px; */
    margin: 0px 6px 12px 6px;
    padding: 5px 5px 5px 5px;
    box-shadow: 0 0 12px #ddd;
    border-radius: 2px;
	border:1px solid #d6d6d6;
}

#main .box1 img {
	margin: 7px;
}

#main .box2 {
	float: left;
	width: 276px;
	height: 165px;
	border: solid #cccccc 1px;
	margin: 0px 6px 12px 6px;
	_margin: 0px 3px 12px 3px;
	padding: 5px 5px 5px 5px;
}
#main .box3 {
	float: left;
	width: 176px;
	height: 170px;
	border: solid #cccccc 1px;
	margin: 0px 6px 12px 6px;
	_margin: 0px 3px 12px 3px;
	padding: 5px 5px 5px 5px;
}
#main .box-img-left {
	float: left;
	display: inline;
	margin: 10px 5px 5px 5px;
	border: solid #cccccc 1px;
}
#main .box-img-left3 {
	margin: 10px 5px 5px 5px;
	border: solid #cccccc 1px;
}
#main .box-btn {
	float: right;
	display: inline;
	font-size: 20px;
	font-weight: bold;
	background-color: #f8f8f8;
	border: #ddd solid 1px;
	width: 200px;
	text-align: center;
	padding: 10px;
	margin: 5px;
	border-radius: 3px;
	transition: .5s all;
	box-shadow: 0 0 8px rgba(0,0,0,.03);
	text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
}
#main .box-btn3 {
	font-size: 20px;
	font-weight: bold;
	background-color: #f8f8f8;
	border: #cccc33 solid 1px;
	width: 200px;
	text-align: center;
	padding: 0px 0px 0px 0px;
	margin: 5px 5px 5px 5px;
}
#main .box-btn a, #main .box-btn a:link, #main .box-btn a:visited {
	color: #333333;
	text-decoration: none;
	display: block;
	/*
	background-image: url(images/bottun.gif);
	background-repeat: repeat-x;
	padding: 2px 0px 0px 0px;
	*/
}
#main .box-btn:hover {
	/*
	color: #333333;
	background: #dddddd;
	background-image: url(images/bottun_h.gif);
	background-repeat: repeat-x;
	text-decoration: none;
	padding: 2px 0px 0px 0px;
	*/
	background: #ddd;
}
#main .box-btn3 a, #main .box-btn3 a:link, #main .box-btn3 a:visited {
	color: #333333;
	text-decoration: none;
	display: block;
	background-image: url(images/bottun.gif);
	background-repeat: repeat-x;
	padding: 2px 0px 0px 0px;
}
#main .box-btn3 a:hover {
	color: #333333;
	background: #dddddd;
	background-image: url(images/bottun_h.gif);
	background-repeat: repeat-x;
	text-decoration: none;
	padding: 2px 0px 0px 0px;
}
#main .clear {
	clear: both;
	visibility: hidden;
	height: 0;
	padding: 0;
	margin: 0;
}
/* new 更新情報
-----------------------------------------------------*/

#main .new {
	height: 250px;
	overflow: auto;
	margin-right: auto;
	margin-left: auto;
}
#main .new li {
	border-bottom: #CCCCCC dotted 2px;
	margin: 5px 0px 5px 0px;
	padding: 5px 0px 10px 0px;
}
/* sub サブ
-----------------------------------------------------*/

#sub {
	float: left;
	font-size: 12px;
	width: 242px;
	margin: -4px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	border-right:1px solid #d22d31;
	border-bottom: #d22d31 solid 1px;
	line-height: 160%;
}

@media screen and (max-width: 659px) {
	#sub {
		width: 100%;
		border-right:0px solid #d22d31;
	}
}

#sub .category {
	/*
	margin: 10px 0px 10px 10px;
	background: #f8f8f8;
	*/
	padding: 0px 0px 0px 0px;
}
#sub h3 ,
#sub .account .cart_title {
	/*
	color: #FFFFFF;
	background: #000000;
	height: 35px;
	font-size: 18px;
	text-align: left;
	line-height: 45px;
	font-weight: bold;
	margin: 0px 0px 0px 0px;
	padding: 5px 10px 5px 5px;
	*/
	padding: 8px 8px 8px 20px;
    background: #a00;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    margin:0;
	text-align: left;
}
#sub .h3kazari {
	/*
	border-left: #ffffff solid 5px;
	padding: 0px 0px 0px 5px;
	*/
}
#sub .entry_body {
	margin: 0px 15px 0px 15px;
	padding: 0px 0px 0px 0px;
}
#sub p {
	margin: 15px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
}
#sub blockquote {
	margin: 15px 0px 15px 0px;
	padding: 10px 10px 10px 10px;
	border: #999999 dotted 1px;
}
#sub .soto {
	margin: 0px 20px 0px 30px;
}
#sub ul {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}
#sub li {
	line-height: 120%;
	list-style: none;
	border-bottom: #d22d31 solid 1px;
	margin: 0px 0px 0px 0px;
}

#sub .category>ul>li>ul>li {
	border-top: #d22d31 solid 1px;
	border-bottom: 0;
	margin: 0px 0px 0px 0px;
}

#sub li a, #sub li a:link, #sub li a:visited {
	color: #333333;
	font-size: 16px;
	text-align: left;
	line-height: 190%;
	text-decoration: none;
	display: block;
	padding: 0px 0px 0px 20px;
}
#sub li a:hover {
	background: #FFF0F0;
	text-decoration: none;

}

#sub .category>ul>li>ul>li a {
	font-size: 14px;
	padding: 0px 0px 0px 30px;
}
/* footer フッター
-----------------------------------------------------*/

#footer {
    text-align: center;
    clear: both;
    font-size: 10px;
    background: #000000;
    margin: 0px 0px 0px 0px;
    padding: 15px 0px 15px 0px;
    /* background-image: url(images/menu.gif); */
    background-repeat: repeat-x;
    color: #fff;
    border-top: 5px solid #d22d31;
}
#footer p {
	margin: 5px 25px 5px 25px;
	padding: 0px 0px 0px 0px;
	color: #666666;
}

#footer .modoru {
	font-size: 10px;
	text-align: right;
	padding: 2px 5px 5px 5px;
	position: fixed;
    bottom: 10px;
    right: 30px;
	background: rgba(255,255,255,.8);
	border-radius: 20px;
	border:1px solid #ddd;
	box-shadow: 0 0 10px rgba(0,0,0,.3);
}
#footer .modoru a {
	font-size: 8px;
	text-decoration: none;
	font-weight: bold;
	color:#000;
}
