@charset "utf-8";

/************************************************
 共通設定
************************************************ */
html {
    font-size: 62.5%;
}
body {
    color: #333;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    /*font-size: 72.5%;*/
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 150%;
    letter-spacing: 0.1em;
}

/* 写真 */
img.picture {
    border: 1px solid #ccc;
}


/* ==============================================
 フレーム
=============================================== */
/* 全体を包括 */
.frame_outer {
    margin: 0 auto;
    width: 100%;
    text-align: center;
}

/* コンテンツ */
#container {
    margin: 0 auto;
    padding: 0 0 30px;
    width: 1000px;
    background: #fff;
    text-align: left;
}


/* ==============================================
 カラム指定
=============================================== */

/* メイン部
----------------------------------------------- */
#main_column {
    padding: 10px 0 0;
}

/* 1カラム時 */
#main_column.colnum1 {
    margin: 0 auto;
    width: 80%;
	box-sizing: border-box;
}

/* 2カラム時 (共通) */
#main_column.colnum2 {
    width: 80%;
	box-sizing: border-box;
}

/* 2カラム時 (メイン部が左) */
#main_column.colnum2.left {
    padding: 15px 10px 0;
    float: left;
}

/* 2カラム時 (メイン部が右) */
#main_column.colnum2.right {
    padding: 15px 10px 0;
    float: right;
}

/* 3カラム時 */
#main_column.colnum3 {
    padding: 15px 5px 10px;
    width: 60%;
    float: left;
	box-sizing: border-box;
}

/* サイドカラム
----------------------------------------------- */
.side_column {
    padding: 15px 10px 0;
	box-sizing: border-box;
}
#leftcolumn {
    float: left;
    width: 20%;
}
#rightcolumn {
    float: right;
    width: 20%;
}

/* 他
----------------------------------------------- */
/* ヘッダーとフッターの上下 */
#topcolumn,
#bottomcolumn,
#footerbottomcolumn {
    margin: 0px;
    background: #fff;
    text-align: left;
    clear: both;
}

/* 下層コンテンツ */
#undercolumn {
    width: 100%;
    margin: 0 0 30px 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5em;
}


/* ==============================================
 ユーティリティ
=============================================== */
/* フロート回り込み解除
----------------------------------------------- */
.clearfix:after {
    display: block;
    clear: both;
    height: 0px;
    line-height: 0px;
    visibility: hidden;
    content: ".";
}
.clear {
    clear: both;
}

/* リンク指定
----------------------------------------------- */
a:link,
a:visited {
    color: #39c/*#77120f*/;
    text-decoration: none;
}
a:link:hover,
a[href]:hover {
    color: #f60/*#123E6C*/;
    text-decoration: underline;
}


/* フォント
----------------------------------------------- */
h1,
h2,
h3,
h4,
h5 {
    font-size: 100%;
    line-height: 150%;
}
.sale_price {
    color: #f00;
}
.normal_price {
    font-size: 90%;
}
.point {
    color: #f00;
    font-weight: bold;
}
.user_name {
    font-weight: bold;
}
.recommend_level {
    color: #ecbd00;
}

.attention {
    color: #f00;
}
.attentionSt {
    color: #f00;
    font-weight: bold;
}
.st {
    font-weight: bold;
}
.mini {
    font-size: 90%;
}


/* 行揃え
----------------------------------------------- */
.alignC {
    text-align: center;
}
.alignR {
    text-align: right;
}
.alignL {
    text-align: left;
}
.pricetd em {
    font-weight: bold;
}


/* フォーム
----------------------------------------------- */
select {
    border: solid 1px #ccc;
}
input[type='text'],
input[type='password'] {
    border: solid 1px #ccc;
    padding: 2px;
}

.box40 {
    width: 40px;
}
.box60 {
    width: 60px;
}
.box100 {
    width: 100px;
}
.box120 {
    width: 120px;
}
.box140 {
    width: 140px;
}
.box145 {
    width: 145px;
}
.box150 {
    width: 150px;
}
.box155 {
    width: 155px;
}
.box240 {
    width: 240px;
}
.box300 {
    width: 300px;
}
.box320 {
    width: 320px;
}
.box350 {
    width: 350px;
}
.box380 {
    width: 380px;
}
.box600 {
    width: 600px;
}

/* フォームが縦に重なり合う場合に併用する余白 */
.top { /* FIXME 簡素な単語は、単独で、込み入った指定に使用しない */
    margin-bottom: 5px;
}


/* タイトル
----------------------------------------------- */
h2.title {
    margin-bottom: 10px;
    padding: 8px;
    border-top: solid 1px #123E6C;
    border-bottom: solid 1px #BAC2CE;
    color: #123E6C;
    /*background: url("../img/background/bg_tit_sub_01.jpg") repeat-x left bottom;
    background-color: #fff;*/
    background: #cfd8e5;
    background: -moz-linear-gradient(top, #ffffff 0%, #cfd8e5 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%,#cfd8e5 100%);
    background: linear-gradient(to bottom, #ffffff 0%,#cfd8e5 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#cfd8e5',GradientType=0 );
    font-size: 20px;
    font-size: 2.0rem;
}

#main_column .sub_area h3,
#undercolumn_login .login_area h3,
#undercolumn_shopping h3,
#mypagecolumn h3,
#undercolumn_cart h3,
#undercolumn_aboutus h3,
#undercolumn_shipping h3 {
    margin: 0 0 10px 0;
    padding: 5px 0 10px;
    color: #77120F;
    background: url("../img/background/line_01.gif") repeat-x left bottom;
    font-size: 120%;
}
#undercolumn_aboutus h3:not(first-of-type) {
    margin-top: 1em;
}

div#undercolumn_login .login_area h4 {
    padding-left: 15px;
    background: url("../img/icon/ico_arrow_05.gif") no-repeat left;
}


/* ==============================================
 ヘッダー
=============================================== */
/* レイアウト
----------------------------------------------- */
#header_wrap {
    border-top: solid 3px #123E6C;
    min-height: 82px;
    background: url("../img/common/bg_header.gif") repeat-x bottom #fff;
}
#header {
    margin: auto;
    width: 1000px;
}
#header_utility {
    float: right;
    width: auto;
}
#errorHeader {
    color: #F00;
    font-weight: bold;
    font-size: 12px;
    background-color: #FEB;
    text-align: center;
    padding: 5px;
}


/* ロゴ
----------------------------------------------- */
#logo_area {
    padding-left: 10px;
    float: left;
    width: 480px;
    height: 110px;
    text-align: left;
}
#site_description {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 95%;
    color: #666;
}
#logo_img {
    display: inline-block;
}
#logo_img img {
	display: block;
}


/* ヘッダーナビ
----------------------------------------------- */
div#header_navi {
    padding-right: 10px;
    float: right;
    width: 428px;
    height: 36px;
    box-sizing: border-box;
}
div#header_navi ul:after {
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;	
    clear: both; 
    visibility: hidden;
}
div#header_navi ul li {
    display: block;
    float: left;
}
div#header_navi ul li.mypage,
div#header_navi ul li.entry {
}
div#header_navi ul li a {
    display: block;
}


/* ヘッダー電話番号
----------------------------------------------- */
#header_tel {
    margin: 10px 10px 0 0;
    float: right;
    width: 454px;
    height: 54px;
   box-sizing: border-box;
}
#header_tel img {
    margin: 0 auto;
    display: block;
}


/* グローバルナビ
----------------------------------------------- */
#global_nav {
    margin: 0 auto;
    width: 100%;
    background: #396592;
    background: -moz-linear-gradient(top, #396592 0%, #123e6c 100%);
    background: -webkit-linear-gradient(top, #396592 0%,#123e6c 100%);
    background: linear-gradient(to bottom, #396592 0%,#123e6c 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#396592', endColorstr='#123e6c',GradientType=0 );
}
#global_nav ul {
    margin: 0 auto;
    padding: 0;
    width: 980px;
    list-style: none;
}
#global_nav ul:after {
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;	
    clear: both; 
    visibility: hidden;
}
#global_nav li {
    width: 20%;
    float: left;
    border-right: solid 1px #fff; /* for old browser */
    border-right: solid 1px rgba(255,255,255,0.75);
    box-sizing: border-box;
}
#global_nav li:first-child {
    border-left: solid 1px #fff; /* for old browser */
    border-left: solid 1px rgba(255,255,255,0.75);
}
#global_nav li a {
    width: 100%;
    height: 50px;
    display: block;
    color: #fff;
    font-size: 15px;
    line-height: 50px;
    font-weight: bold;
    box-sizing: border-box;
}
#global_nav li a:hover {
    background: #5C7D9F; /* for old browser */
    background: rgba(255,255,255,0.25);
    text-decoration: none;
}


/* ==============================================
 フッター
=============================================== */
#footer_wrap {
    margin: 0 auto;
    width: 100%;
    background: /*#F5FAFF #E6EEF7*/#E6EBF1;
    /*border-top: solid 1px #D9EBFF;*/
}
#footer {
    margin: 0 auto;
    padding: 15px 0;
    border-top: solid 1px #ccc;
    width: 980px;
    text-align: left;
    clear: both;
}

#footer_guide {
    width: 1020px;
    margin: 0 auto;
    padding: 20px 0 0;
    text-align: left;
    font-size: 13px;
    font-size: 1.3rem;
}
.footer_guide_tit {
    margin: 0 20px 20px;
	padding: 0 0 8px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #123E6C;
    background: url(../img/background/line_02.gif) left bottom no-repeat;
}
#footer_guide a {
    text-decoration: underline;
}
#footer_guide .fg-box {
    width: 50%;
    padding: 0 20px 20px 20px;
    float: left;
    box-sizing: border-box;
}
#footer_guide .fg-box:nth-child(2n) {
    clear: both;
}
#footer_guide h3 {
    margin-bottom: 10px;
    padding: 3px 5px 3px 8px;
    font-size: 15px;
    font-size: 1.5rem;
    color: #fff;
    background: #123E6C;
}
#footer_guide dt {
    margin: 15px 0 8px;
    padding: 0 0 0 6px;
    font-weight: bold;
    color: #123E6C;
	border-left: solid 4px #123E6C;
}

.footer_t {
    margin-bottom: 5px;
}
.footer_t th {
    text-align: center;
    background: #eee;
}
.footer_t td {
    background: #fff;
}
.footer_t .right {
    text-align: right;
}
.footer_t_notice {
    text-align: right;
    font-size: 0.9em;
}

#footer_guide ul {
    margin-left: 1.5em;
}
#footer_guide li {
    margin: 0.5em 0;
    list-style: disc;
}

#footer_navi {
    float: left;
}

#copyright {
    float: right;
    text-align: right;
    font-size: 0.9em;
}

#pagetop {
    width: 70px;
    height: 70px;
    position: fixed;
    right: 20px;
    bottom: 20px;
}
#pagetop a {
    width: 70px;
    height: 70px;
    display: block;
    background: url(../img/common/pagetop.png) 0 0 no-repeat;
    text-indent: -9999px;
}
#pagetop a:hover {
    opacity: 0.7;
}


/* ==============================================
 パーツ
=============================================== */
/* ボタン
----------------------------------------------- */
.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%;
}
