@charset "utf-8";

/************************************************
 共通設定
************************************************ */
body {
	width: 100%;
	height: 100%;
	background: #fefefe;
	font-size: 72%;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo','Verdana','MS P Gothic','ＭＳ Ｐゴシック',sans-serif;
	line-height: 1.6;
	color: #333;
}

/* ==============================================
 ユーティリティ
=============================================== */
/* フロート回り込み解除
----------------------------------------------- */
.clearfix:after {
	clear: both;
	display: block;
	visibility: hidden;
	height: 0;
	font-size: 0;
	content: ".";
}

.clearfix {
	clear: both;
	*zoom: 1;
}

/* リンク指定
----------------------------------------------- */
a:link,
a:visited {
    color: #000;
    text-decoration: none;
}
a:link:hover,
a[href]:hover {
    color: #000;
    text-decoration: underline;
}

a img,
input[type=image]:hover { opacity: 1; filter: alpha(opacity=100); 
transition: 0.15s ease-in-out;}

a:hover img,
input[type=image]:hover { opacity: .8; filter: alpha(opacity=80);
transition: 0.15s ease-in-out;}

#logo a img,
input[type=image]:hover { opacity: .8; filter: alpha(opacity=80); }

#logo a:hover img,
input[type=image]:hover { opacity: 1; filter: alpha(opacity=100); }

.frame a img,
input[type=image]:hover { opacity: 1; filter: alpha(opacity=100); }

.frame a:hover img,
input[type=image]:hover { opacity: 0.8; filter: alpha(opacity=80); }

/* フォント
----------------------------------------------- */
h1,h2,h3,h4,h5 { font-size: 100%; line-height: 150%; }
.user_name { font-weight: bold; }
.recommend_level { color: #ecbd00; }
.attention { color: #D40808; }
.attentionSt { color: #D40808; font-weight: bold; }
.st { font-weight: bold; }
.mini { font-size: 90%; }
.fPink { color: #c5a76c; }

/* 行揃え
----------------------------------------------- */
.alignC { text-align: center; }
.alignR { text-align: right; }
.alignL { text-align: left; }

/* フォーム
----------------------------------------------- */
input[type='text'],
input[type='password'],
.select { border: solid 1px #999; padding: 5px 2px; }
.box40 { width: 40px; }
.box60 { width: 60px; }
.box100 { width: 100px; }
.box120 { width: 120px; }
.box140 { width: 140px; }
.box145 { width: 145px; }
.box150 { width: 150px; }
.box240 { width: 240px; }
.box300 { width: 300px; }
.box320 { width: 320px; }
.box350 { width: 350px; }
.box380 { width: 380px; }
.box400 { width: 400px; }

/* フォームが縦に重なり合う場合に併用する余白 */
.top { margin-bottom: 5px; }
.ng_top { margin-bottom: 0 !important; }

/* タイトル
----------------------------------------------- */
h2.title {
	margin-bottom: 10px;
	font-size: 160%;
	font-weight: bold;
}

#one_maincolumn .sub_area h3,
#two_maincolumn_right .sub_area h3,
#two_maincolumn_left .sub_area h3,
#three_maincolumn .sub_area h3,
#undercolumn_login .login_area h3,
#undercolumn_shopping h3,
#mypagecolumn h3,
#undercolumn_cart h3 {
	margin-bottom: 10px;
	padding-left: 20px;
	background: url(../img/icon/arrow1.gif) no-repeat left .3em;
	font-size: 140%;
	font-weight: bold;
}

div#undercolumn_login .login_area h4 {
    padding-left: 15px;
    background: url("../img/icon/ico_arrow_05.gif") no-repeat left;
}

/* ==============================================
 レイアウト
=============================================== */
.wrap {
	position: relative;
	margin: 0 auto;
	width: 960px;
}

#contents {
	margin-bottom: 60px;
}

#main_column {
	padding-top: 20px;
}
.two_main_column_left,
.two_main_column_right { width: 810px; }
.two_main_column_left { float: left; }
.two_main_column_right { float: right; }
.three_main_column { float: right; margin: 0 145px 0 -815px; width: 670px; }
.side_column {
	padding-top: 20px;
	width: 126px;
}

#left_column { float: left; }
#right_column { float: right; }

/* ==============================================
 ヘッダー
=============================================== */
#header {
	margin-bottom: 10px;
	padding-top: 5px;
	background: #000000;
}

	#tagline {
		font-size: 90%;
		font-weight: normal;
		color: #999;
	}

	#logo {
		float: left;
		padding: 10px 65px 18px 0;
		width: 327px;
	}

	#head_search {
		float: left;
		margin-top: 16px;
		width: 235px;
		height: 22px;
		border: solid #ccc 1px;
		border-radius: 60px;
		-webkit-border-radius: 60px;
		-moz-border-radius: 60px;
		-ms-border-radius: 60px;
		-o-border-radius: 60px;
	}

		#head_search .txt {
			float: left;
			width: 208px;
		}

			#head_search .txt input {
				border: none;
				padding: 0 2%;
				width: 96%;
				height: 22px;
				border-radius: 60px;
				-webkit-border-radius: 60px;
				-moz-border-radius: 60px;
				-ms-border-radius: 60px;
				-o-border-radius: 60px;
				background: #222;
				color: #fff;
			}
			
			#head_search .txt input:focus {
				background: #888;
				color: #fff;
			}

		#head_search .btn {
			float: right;
			padding-top: 3px;
			width: 25px;
		}

	#head_nav {
		clear: none;
		float: right;
		padding-top: 10px;
		width: 290px;
	}

		#head_nav li {
			float: left;
			border-right: dotted #000 1px;
		}
		#head_nav .nav_cart { border-right: none; }

			#head_nav li a {
				display: block;
				padding: 25px 10px 3px;
				background-position: center top;
				background-repeat: no-repeat;
				font-size: 90%;
				color: #ccc;
			}
			
			#head_nav li a:hover {
				color: #fff;
			}
			
			#head_nav .nav_regist a { padding-left: 0; background-image: url(../img/icon/registration.gif); }
			#head_nav .nav_login a { background-image: url(../img/icon/login.gif); }
			#head_nav .nav_mypage a { background-image: url(../img/icon/mypage.gif); }
			#head_nav .nav_cart a { padding-right: 0; background-image: url(../img/icon/cart.gif); }

	#gnav {
	}

		#gnav li {
			float: left;
		}

/* ==============================================
 フッター
=============================================== */
#footer {
}

	#pagetop {
		clear: both;
		text-align: center;
	}

	#shopping_guide {
		margin: 20px 0;
		padding: 20px 0;
		border-top: solid #000 3px;
		border-bottom: dotted #000 1px;
	}
	
		#shopping_guide dl {
			float: left;
			padding-right: 15px;
			width: 310px;
		}
		#shopping_guide dl.last-child { float: right; padding-right: 0; }
	
			#shopping_guide dl dt {
				border-bottom: dotted #000 1px;
				font-size: 110%;
				font-weight: bold;
			}
	
			#shopping_guide dl dd {
				padding-bottom: 1.6em;
			}
	
				#shopping_guide dl dd p,
				#shopping_guide dl dd address { padding: .6em 0; }
				#shopping_guide dl dd address { text-align: left; font-style: normal; }

	#footer .nav {
		text-align: center;
	}

		#footer .nav li {
			display: inline;
		}

	#footer address {
		padding-top: 10px;
		text-align: center;
		font-style: normal;
	}

	#copyright {
		margin-top: 10px;
		padding: 5px 0;
		background: #000;
		text-align: center;
		color: #fff;
	}

/* ==============================================
 パーツ
=============================================== */
/* topicpath
----------------------------------------------- */
#topicpath {
	margin-bottom: 30px;
	padding: 3px 0;
	border-bottom: dotted #B2B2B2 1px;
}

	#topicpath ol { padding: 2px 0; }
		#topicpath ol li { float: left; font-size: 90%; color: #666; }
			#topicpath ol li span { color: #666; }

/* ボタン
----------------------------------------------- */
.btn_area {
    margin-top: 10px;
    width: 100%;
    text-align: center;
}

.btn_area li {
    padding-right: 10px;
    display: inline;
}


/* 完了メッセージ
----------------------------------------------- */
div#complete_area {
    margin-bottom: 20px;
}
div#complete_area .message,
div#undercolumn_entry .message {
    margin-bottom: 20px;
    line-height: 150%;
    font-weight: bold;
    font-size: 120%;
}
div#complete_area .shop_information {
    margin-top: 40px;
    padding: 20px 0 0 0;
    border-top: solid 1px #ccc;
}
div#complete_area .shop_information .name {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 140%;
}


/* Tipsy
----------------------------------------------- */
.tipsy {
    padding: 5px;
    font-size: 10px;
    position: absolute;
    z-index: 100000;
}
.tipsy-inner {
    padding: 5px 8px 4px 8px;
    background-color: black;
    color: white;
    max-width: 200px;
    text-align: center;
}
.tipsy-inner {
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
}
.tipsy-arrow {
    position: absolute;
    background: url('../img/ajax/tipsy.gif') no-repeat top left;
    width: 9px;
    height: 5px;
}
.tipsy-n .tipsy-arrow {
    top: 0;
    left: 50%;
    margin-left: -4px;
}
.tipsy-nw .tipsy-arrow {
    top: 0;
    left: 10px;
}
.tipsy-ne .tipsy-arrow {
    top: 0;
    right: 10px;
}
.tipsy-s .tipsy-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -4px;
    background-position: bottom left;
}
.tipsy-sw .tipsy-arrow {
    bottom: 0;
    left: 10px;
    background-position: bottom left;
}
.tipsy-se .tipsy-arrow {
    bottom: 0;
    right: 10px;
    background-position: bottom left;
}
.tipsy-e .tipsy-arrow {
    top: 50%;
    margin-top: -4px;
    right: 0;
    width: 5px;
    height: 9px;
    background-position: top right;
}
.tipsy-w .tipsy-arrow {
    top: 50%;
    margin-top: -4px;
    left: 0;
    width: 5px;
    height: 9px;
}
