@charset "utf-8";
/* ===================================================================
CSS information
file name  :common.css
style info :共通
=================================================================== */
/*-----------------------------------------------
body
----------------------------------------------- */
body {
    background: #FFF;
    font-family: Helvetica, san-serif;
    line-height: 1.5;
    font-size: 14px;
    margin: 0;
    padding: 0;
    -webkit-text-size-adjust: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0.50);
}
/*-----------------------------------------------
リンク指定
----------------------------------------------- */
a:link {
    color: #4265AE;
    text-decoration: none;
}
a:visited {
    color: #603E7D;
    text-decoration: none;
}
a:hover {
    text-decoration: none;
    cursor: pointer;
}

/*右矢印リンクテキスト*/
.arrowRtxt {
    display: inline;
    clear: both;
    margin: 5px auto;
    padding-right: 15px;
    background: url(../img/common/ico_arrowR.png) right center no-repeat;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
    .arrowRtxt {
        background: url(../img/common/ico_arrowR2.png) right center no-repeat;
        -webkit-background-size: 10px 15px;
        background-size: 10px 15px;
    }
}
div,
li,
p {
-webkit-tap-highlight-color: rgba(0,0,0,0.50);}
/*-----------------------------------------------
clearfix
----------------------------------------------- */
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
ul:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
dl:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
/*-----------------------------------------------
汎用
----------------------------------------------- */
.photoL {
    float: left;
    clear: left;
}
.photoR {
    float: right;
    clear: right;
}
.clear {
    clear: both;
}
.inner {
    padding: 10px;
}
.intro {
    padding: 5px 10px 10px;
    font-weight: bold;
}
.intro p {
    line-height: 1.3;
}
.hidden {
    display: none;
}
.end {
    border-bottom: none!important;
}
.top {
    margin-bottom: 8px!important;
}
.bg_head {
    background: #EEE;
}
.pb {
    padding-bottom: 0!important;
}
/*-----------------------------------------------
font
----------------------------------------------- */
h2 {
    font-size: 20px;
}
h3,
h4,
h5 {
    font-size: 100%;
    font-weight: bold;
}
em {
    font-weight: bold;
}
.attention {
color: #CC0000; }
.mini {
    font-size: 11px;
font-weight:normal; }
.fb {
    font-size: 15px;
    font-weight: bold;
}
.fn {
    font-weight: normal;
}
.price {
    color: #417505;
    font-weight: bold;
}
.attentionSt {
    color: #CC0000;
    font-weight: bold;
}
/*-------------------------------------------------
レイアウト
----------------------------------------------- */
.frame_outer {
    overflow: hidden;
    width: 100%;
    background: #FFF;
}
#main-content {
}
/*-----------------------------------------------
タイトル
----------------------------------------------- */
h2.title {
    color: #FFF;
    font-size: 20px;
    font-weight: bold;
    line-height: 45px;
    text-align: center;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.5);
    margin: 0 0 15px 0;
    padding: 0 10px;
    background: #7DB73B;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    clear: both;
}
/*ボタンで展開するタイトルバー*/
.title_box {
    color: #FFF;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.3);
    line-height: 45px;
    padding: 0 10px;
    margin: 0 0 15px 0;
    background: #494e57;
    background: -moz-linear-gradient(center top, #6D7481 10%,#505765 80%,#494e57 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #6D7481),color-stop(0.8, #505765),color-stop(1, #494e57));
    border-top: #74828B solid 1px;
    border-bottom: #74828B solid 1px;
    vertical-align: middle;
    clear: both;
}
.title_box h2 {
    font-size: 20px;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.5);
    width: 85%;
    float: left;
    clear: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 45px;
    vertical-align: middle;
}
.title_box h3 {
    width: 85%;
    float: left;
    clear: left;
    font-size: 18px;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.5);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 30px;
    vertical-align: middle;
}
/*サブタイトル*/
h3.subtitle {
    font-size: 18px;
    color: #FFF;
    line-height: 30px;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.3);
    padding: 0 10px;
    margin: 0 0 10px 0;
    background: #84949F;
    background: -moz-linear-gradient(center top, #96A4AF 0%,#84949F 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #96A4AF),color-stop(1, #84949F));
    border-top: #74828B solid 1px;
    border-bottom: #74828B solid 1px;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    clear: both;
    -webkit-box-shadow: 1px 0px 1px #FFF;
    -moz-box-shadow: 1px 0px 1px #FFF;
    position: relative;
}
/*ボタンで展開するサブタイトルバー*/
.title_box_sub {
    color: #FFF;
    line-height: 30px;
    padding: 2px 10px;
    margin: 0 0 20px 0;
    background: #7DB73B;
    vertical-align: middle;
    clear: both;
    position: relative;
}
.title_box_sub h2,
.title_box_sub h3 {
    font-size: 18px;
    width: 85%;
    float: left;
    clear: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 30px;
    vertical-align: middle;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.5);
}
.title_box_sub .b_expand {
    width: 22px;
    height: 21px;
    float: right;
    clear: right;
    position: absolute;
    top: -6px;
    right: 15px;
    z-index: 2;
    padding: 2px;
}
/*----------------------------------------------------
input/select
----------------------------------------------------*/
input {
    margin: 0;
    padding: 5px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
}
input[type="text"] {
    margin: 5px 0;
}
input[type="number"] {
    padding: 5px 0;
    text-indent: 0;
}
input[type="number"]:first-child {
    margin-right: -2px;
}
input[type="radio"],
input[type="check"] {
    padding: 5px;
    line-height: 1.5;
    margin-right: 0.5em;
}
.text,
.textarea,
.dropdown {
    padding: 0.5em;
    margin: 0;
    border: #4C4C4C solid 1px;
    background: #FFF;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.textarea {
    width: 97%;
    padding: 0.5em;
    margin: 0 0 10px 0;
}
.cartin_quantity,
.box_point {
    width: 2.5em;
}
.boxLong {
    width: 95%;
}
.boxMedium {
    width: 35%;
}
.boxShort {
    width: 22%;
}
.boxHarf {
    width: 42%;
}
select.boxLong {
    width: 100%;
}
select.boxMedium {
    width: 40%;
}
select.boxShort {
    width: 25%;
}
select.boxHarf {
    width: 46%;
}

/*----------------------------------------------------
header
----------------------------------------------------*/

/* ヘッダーロゴ
------------------------------------------------ */
header {
    width: 100%;
    background: #f2f2f2;
    margin: 0 auto;
    padding: 5px 0 10px 0;
    clear: both;
    min-height: 40px;
    border-bottom: 2px solid #FFF101;
}
header #logo_area {
    width: 47%;
    height: 50px;
    float: left;
    clear: left;
    margin: 2px 0 0 5px;
    padding: 0;
    max-width: 150px;
    position: relative;
}
header #logo_area a {
    display: block;
    margin: 0;
    padding: 0;
    cursor: pointer;
    vertical-align: middle;
}
header #logo_area img {
    width: 150px;
    height: 50px;
    margin: -5px 0 0 0;
    padding: 0;
    vertical-align: middle;
}

/* ヘッダーナビ
------------------------------------------------ */
.header_utility {
    width: 47%;
    padding: 0 5px;
    float: right;
}
.header_navi {
    font-size: 11px;
    float: right;
    display: inline;
    text-align: right;
    line-height: 1.2;
    margin-top: 5px;
}
.header_navi ul {
    display: inline;
    float: right;
}
.header_navi li {
    float: left;
    margin: 0;
    padding: 8px 5px;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    background: #7DB73B;
}
.header_navi li:first-child {
    margin-right: 1em;
}
.header_navi p {
    line-height: 1.3;
}
.header_navi p.guest {
    margin-top: 5px !important;
}
.header_other {
    float: right;
}
.header_other li{
    font-size: 12px;
    float: left;
}
.header_other li a{
    display: block;
    margin-left: 10px;
}
.popup_mypage {
    font-size: small;
    width: auto;
    min-width: 100px;
    padding: 10px;
    display: none;
    position: absolute;
    line-height: 1.2;
    top: 52px;
    z-index: 1;
    background: #FFF;
    background: -moz-linear-gradient(center top, #FDFDFD 0%,#E5E5E5 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FDFDFD),color-stop(1, #E5E5E5));
    border: #CCC solid 1px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.popup_mypage p:first-child {
    line-height: 1.3;
    margin-bottom: 0.5em;
}
.popup_cart {
    font-size: small;
    width: auto;
    min-width: 90px;
    padding: 10px;
    display: none;
    position: absolute;
    top: 52px;
    margin-right: 5px;
    z-index: 1;
    background: #FFF;
    background: -moz-linear-gradient(center top, #FDFDFD 0%,#E5E5E5 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FDFDFD),color-stop(1, #E5E5E5));
    border: #CCC solid 1px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.popup_cart .product_type {
    margin-bottom: 5px;
}
.popup_cart div:last-child {
    margin-bottom: 0;
}
.popup_mypage a,
.popup_cart a {
    text-decoration: underline;
}

.popup_mypage h2,
.popup_cart h2 {
    font-size: 1.2em;
}
.quantity,
.money {
    font-size: 14px;
    font-weight: bold;
}
.popup_cart hr.dashed:last-child {
    display: none;
}
hr.dashed {
    display: block;
    height: 1px;
    border: 0;
    border-top: #CCC dashed 1px;
    margin: 0.2em 0;
    padding: 0;
}
.free_money_area {
    font-size: 11px;
}
.dl_item {
    margin-top: 5px;
}

/*index menu/トップページヘッダー3列ボタン*/
.top_menu {
    width: 100%;
    margin-bottom: 10px;
    background: #7DB73B;
}
.top_menu ul {
    width: auto;
    margin: 0 auto;
    clear: both;
}
.top_menu ul li {
    width: 33.33%;
    float: left;
    text-align: center;
    border-left: #f2f2f2 solid 1px;
    border-right: #f2f2f2 solid 1px;
    box-sizing: border-box;
}
.top_menu ul li img {
    margin: 0 auto;
    display: block;
    clear: both;
}
.top_menu ul li a:link,
.top_menu ul li a:visited {
    color: #FFF;
    padding: 9px 0 8px 0;
    display: block;
    background: #7DB73B;
}
.top_menu ul li a:hover {
    color: #FFF;
    text-shadow: 0px 1px 1px rgba(0,0,0,0.5);
    background: #bce58e;
    text-decoration: none;
}
.top_menu li:first-child {
    border-left: none;
}
.top_menu li:last-child {
    border-right: none;
}
/*-------------------------------------------------
footer
----------------------------------------------- */
footer.global_footer {
    border-top: 1px solid #FFF101;
    padding: 0 0 10px 0;
    background: #f2f2f2;
    text-align: center;
}
.footer_utility {
    background: #fff;
}
/*フッター4列ボタン*/
.footer_navi {
    width: 100%;
    display: block;
    clear: both;
    padding: 0.5em 0;
    background: #f2f2f2;
}
.footer_navi ul {
    width: 100%;
    display: block;
}
.footer_navi:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
}
.footer_navi li {
    width: 23%;
    height: 49px;
    display: block;
    margin: 0 1%;
    padding: 0;
    float: left;
    background: #7DB73B;
    text-align: center;
    color: #FFF;
    font-size: 10px;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    }
.footer_status_area {
    margin: 0;
    padding: 20px 10px 10px;
    text-align: center;
    background: #fff;
}
.footer_status_area p:last-child {
    margin: 10px auto;
}
.guide_area {
    clear: both;
    margin: 0;
    padding: 10px 0 0 0;
    text-align: center;
}
.guide_area p {
    font-size: 14px;
    font-weight: bold;
    line-height: 2.4;
}
.guide_area a {
    padding: 0.5em 0.3em;
    margin: 0.5em 0.1em;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
    .guide_area p {
        font-size: 12px;
    }
}
footer.global_footer p.copyright {
    margin: 0;
    text-align: center;
    padding: 10px 0;
}
/*-------------------------------------------------
検索バー
----------------------------------------------- */
#search_area {
    padding: 10px;
    background: #fff;
    clear: both;
    text-align: center;
}
/*jqm追記*/
#search_area .ui-input-search {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border: #7DB73B solid 1px;
    box-shadow: none !important;
}
.ui-input-text {
    width: 100% !important;
}


/*-------------------------------------------------
deego追記
----------------------------------------------- */

/* 見出し
----------------------------------------------- */
.hx_title {
    color: #FFF;
    font-size: 20px;
    font-weight: bold;
    line-height: 45px;
    text-align: center;
    text-shadow: 0px -1px 1px rgba(0,0,0,0.5);
    margin: 0 0 15px 0;
    padding: 0 10px;
    background: #7DB73B;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    clear: both;
}
.hx_normal {
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
    line-height: 20px;
    margin-bottom: 10px;
    padding: 5px 10px 3px 10px;
    background-color: #7DB73B;
    border-bottom: #FFF101 solid 2px;
    text-align: left;
    vertical-align: middle;
    text-overflow: ellipsis;
    clear: both;
}
.hx_h3 {
display: inline-block;
margin-bottom: 5px;
padding: 0 10px;
color: #417505;
}
/* // 見出し--------------------------------- */

/* テーブル
----------------------------------------------- */
table {
margin: 15px auto 20px auto;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
width: 96%;
border-collapse: collapse;
text-align: left;
}
table th {
padding: 0 1px;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
color: #333;
background-color: #f0f0f0;
font-weight: normal;
}
table td {
padding: 8px;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}
.bg_white {
background: #fff;
}
table td.td_gray {
background-color: #f0f0f0;
}
/* // テーブル--------------------------------- */

/* その他共通規則
----------------------------------------------- */
/* 赤文字 */
.emphasis_color {
    color: #CF1010;
}
.f_red{
    color: #f00;
}
.f_def{
    color: #768763;
}
.f_bk{
    color: #505050
}
.f_dk{
    color: #000000;
}
.f_bl{
    color: #006B90;
}
.f_bl_line{
    color: #006B90;
    text-decoration: underline;
}
.f_line:hover{
    text-decoration: underline;
}
.f_light_def{
    color: #417505;
}
.f_light_green{
    color:#417505;
}
.f_gray{
  color: #505050;
}
/* 文字揃 */
.alignR{
    text-align: right;
}
.alignL{
    text-align: left;
}
.alignC{
    text-align: center;
}
.alignT{
    vertical-align: top;
}
/* 商品一覧ページリンクテキスト */
.list_area .ui-link,
.list_area .ui-link:visited{
    color: #006B90 !important;
}
/* メーカーURL折り返し */
.break_word {
    word-wrap: break-word;
}
/* スマホバナー用 */
.img_banner{
    display: block;
    margin: 0 auto;
}
/* floatwrap */
.floatwrap{
    overflow: hidden;
}
/* 見出し画像用 */
.hidden_text {
    visibility: hidden;
}
/* 価格表示色 */
.price_red {
    color: #f00 !important;
}
/* フォームラジオ・チェックボックス */
input[type="radio"],
input[type="checkbox"] {
    font-size: x-large;
    height:20px;
    width:20px;
    vertical-align: text-bottom;
}
/* フォームラジオ・チェックボックス */
select{
    height:34px;
}
.f_bold{
    font-weight: bold;
}
.f_dk{
    color: #000000;
}
/**
 * Font-Size
 */
 .fz10{ font-size: 10px !important; }
 .fz12{ font-size: 12px !important; }
 .fz14{ font-size: 14px !important; }
 .fz16{ font-size: 16px !important; }
 .fz18{ font-size: 18px !important; }
 .fz20{ font-size: 20px !important; }
 .fz22{ font-size: 22px !important; }
 .fz24{ font-size: 24px !important; }
 .fz26{ font-size: 26px !important; }
 .fz28{ font-size: 28px !important; }
 .fz30{ font-size: 30px !important; }
 .fz32{ font-size: 32px !important; }
 .fz34{ font-size: 34px !important; }
 .fz36{ font-size: 36px !important; }
 .fz38{ font-size: 38px !important; }
 .fz40{ font-size: 40px !important; }
 .fz42{ font-size: 42px !important; }
 .fz44{ font-size: 44px !important; }
 .fz46{ font-size: 46px !important; }
 .fz48{ font-size: 48px !important; }
 .fz50{ font-size: 50px !important; }
/* // その他共通規則--------------------------------- */

/*  ページ毎のスタイル--------------------------------- */
/* 商品一覧ページの在庫状況タグ */
.stock_label01{
    background: #7DB73B;
    color: #ffffff;
    display: inline-block;
    padding: 3px 5px 3px 8px;
    font-size: 12px;
    margin-top:5px 
}

.stock_label02{
    background: #ff0000;
    color: #ffffff;
    display: inline-block;
    padding: 3px 5px 3px 8px;
    font-size: 12px;
    margin-top:5px
}

/* 商品ごとのお問い合わせ　*/
.btn_detail_contanct{
    color: #fff !important;
    font-size: 16px;
    padding: 5px 0;
    font-weight:bold;
    text-decoration: none;
    text-align: center;
    border: 1px solid #A9ABAD;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    display: block;
    background: #aaaaaa;
}

/* 商品ページ購入エリア　*/
.cart_area dl{
    margin: 10px 0 10px 10px;
}
/* 商品オプションセレクト　*/
.cart_area select{
    width: 90%;
}
/* 工事ページ注意書き　*/
.attention_message {
    width: 90%;
    padding: 8px 8px 5px 8px;
    font-size: 14px;
    border-radius: 6px;
    border: 2px solid #f00;
    margin: 0 auto 10px;
}

/* 支払いページ項目ブロック　*/
.payment_input_area{
    padding: 10px;
    margin: 0 auto;
}

/* 支払いページ見出し部　*/
.payment_list_title{
    font-weight: bold;
    color:#417505;
    margin-bottom: 10px;
}

/* 支払いページブロック　*/
.payment_input_area_s{
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

/*　支払いページ最終ブロック */
.payment_input_area_l{
    padding-bottom: 10px;
}

/* フォーム用補足テキスト */
.form_text{
    display: block;
    line-height: 1.6;
}
/*  //ページ毎のスタイル--------------------------------- */


/* margin-set
----------------------------------------------- */
/*--- top ---*/
.mt0{margin-top:0 !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mt30{margin-top:30px !important;}
.mt40{margin-top:40px !important;}
.mt50{margin-top:50px !important;}
/*--- bottom ---*/
.mb0{margin-bottom:0 !important;}
.mb5{margin-bottom:5px !important;}
.mb10{margin-bottom:10px !important;}
.mb15{margin-bottom:14px !important;}
.mb20{margin-bottom:20px !important;}
.mb30{margin-bottom:30px !important;}
.mb40{margin-bottom:40px !important;}
.mb50{margin-bottom:50px !important;}
/*--- right ---*/
.mr0{margin-right:0 !important;}
.mr6{margin-right:6px !important;}
.mr10{margin-right:10px !important;}
.mr13{margin-right:13px !important;}
.mr15{margin-right:15px !important;}
.mr20{margin-right:20px !important;}
.mr30{margin-right:30px !important;}
.mr40{margin-right:40px !important;}
.mr50{margin-right:50px !important;}
/*--- left ---*/
.ml0{margin-left:0 !important;}
.ml10{margin-left:10px !important;}
.ml11{margin-left:11px !important;}
.ml13{margin-left:13px !important;}
.ml14{margin-left:14px !important;}
.ml20{margin-left:20px !important;}
.ml30{margin-left:30px !important;}
.ml40{margin-left:40px !important;}
.ml50{margin-left:50px !important;}
/*--- auto ---*/
.m0_a{margin: 0 auto;}
/* // margin-set--------------------------------- */

/* a */
a.disabled-link{
    pointer-events: none;
    cursor: default;
    text-decoration:none;
    opacity: .7;
}

/* スマホ用コンテンツ幅調整
----------------------------------------------- */
.sp_wrap p,
.sp_wrap ul,
.sp_wrap ol,
.sp_wrap dl,
.sp_wrap table,
.sp_wrap h3{
    padding: 0 10px 0 10px !important;
}
/* // スマホ用コンテンツ幅調整--------------------------------- */

.slash{
     background-image: linear-gradient(to top right, transparent 49%, #ccc 49%, #ccc 50%, transparent 50%, transparent); /* 右下がりの斜線 */
}
