*{
	box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
}
html,body{
    height:100%;
}
p,span,tr,td,li,a,h1,h2,h3,h4,h5,input,select{
	color: #323232;
    font-family: 'Montserrat',"Helvetica","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","hiragino kaku gothic pro","Meiryo","メイリオ", sans-serif !important
}
a{
    cursor: pointer;
    text-decoration: none;
}
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="text"],
input[type="submit"],
input[type="button"],
select{
    background-color: #fff;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/*                  */
/*     共通パーツ     */
/*                  */

/*共通のグリーンボタン*/
input.btn,a.btn,
input.btn-S,a.btn-S{
    background-color: #6aa55c;
    border-radius: 6px;
    border: none;
    color: #fff;
    display: inline-block;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
    /*white-space: nowrap;*/
    /*vertical-align: middle;*/
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 12px 20px;
    margin: auto;
}
input.btn-S,a.btn-S{
    font-weight: 12px;
    line-height: 1;
    padding: 10px 20px;
}
input.btn-gray,a.btn-gray{
    background-color: #b2b2b2;
}
input.btn-lightgray,a.btn-lightgray{
    background-color: #e6e6e6;
}
input.btn-gray,a.btn-black{
    background-color: #3c3c3c;
}

/*値段*/
.price{
    color: #ff6928;
    font-size: 12px;
}
.large_price{
    font-size: 20px;
}
/*リスト*/
.fix_width{
    padding-left: 15px;
    padding-right: 15px;
}

/*グレーの文字色*/
.fc_gray{
    color: #b2b2b2;
}
/*赤色の文字色*/
.fc_red{
    color: #ff6928;
}

/*薄いグレーの背景色*/
.bg_gray{
    background-color: #f2f2f2;
}
.bg_gray_2{
    background-color: #fafafa;
}

/*薄いグレーの背景時の白ボックス*/
.w_box{
    background-color: #fff;
    border: 1px solid #e0e0e0;
    margin: 15px;
    padding: 30px;
}

/*select*/
select{
    background-color: #fff;
    background-image: url(../img/icon_select_down.png);
    background-size: 20px;
    background-position: right center;
    background-repeat: no-repeat;
    border: 2px solid #e5e5e5;
    border-radius: 4px;
    font-weight: 12px;
    height: 42px;
    line-height: 38px;
    padding: 0 40px 0 10px;
    position: relative;
}
select.S{
    height: 28px;
    line-height: 24px;
}

:placeholder-shown{ color: #cccccc; }
::-webkit-input-placeholder { color: #cccccc; }
:-moz-placeholder { color: #cccccc; }
::-moz-placeholder { color: #cccccc; }

/*circle_thumbnail*/
[class *='circle_thumbnail']{
    border-radius: 50%;
    height: 42px;
    overflow: hidden;
    width: 42px;
}
.circle_thumbnail--border{
    border: 1px solid #dfdfdf;
}
.circle_thumbnail--L{
    height: 54px;
    width: 54px;
}
[class *='circle_thumbnail'] img{
    width: 100%;
}

.error{
    clear: both;
    display: inline-block;
    margin-top: 10px;
    color: #ff6928;
    font-size: 12px;
}
.error_form input,
.error_form select{
    border-color: #f7d2d4!important;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.06);
}
.error_form .radioimage{
   background-image: url(../img/radio_active_error.png)!important;
}
/*------------------------------------*
    loading
*------------------------------------*/
#loading{
    background-color: #ffffff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}
#loading .loading_img{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 40px;
    height: 40px;
}
.loading_anime{
    -webkit-animation-duration: 0.7s;
       -moz-animation-duration: 0.7s;
         -o-animation-duration: 0.7s;
            animation-duration: 0.7s;
    -webkit-animation-fill-mode: both;
       -moz-animation-fill-mode: both;
         -o-animation-fill-mode: both;
            animation-fill-mode: both;

    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    -o-animation-iteration-count: infinite;
    animation-iteration-count: infinite;

    -webkit-animation-name: loading_anime;
    -moz-animation-name: loading_anime;
    -o-animation-name: loading_anime;
    animation-name: loading_anime;
}
@-webkit-keyframes loading_anime {
    0% {-webkit-transform: rotate(0deg);}
    90% {-webkit-transform: rotate(360deg);}
    100% {-webkit-transform: rotate(360deg);}
}
@-moz-keyframes loading_anime {
    0% {-moz-transform: rotate(0deg);}
    90% {-moz-transform: rotate(360deg);}
    100% {-moz-transform: rotate(360deg);}
}
@-o-keyframes loading_anime {
    0% {-o-transform: rotate(0deg);}
    90% {-o-transform: rotate(360deg);}
    100% {-o-transform: rotate(360deg);}
}
@keyframes loading_anime {
    0% {transform: rotate(0deg);}
    90% {transform: rotate(360deg);}
    100% {transform: rotate(360deg);}
}

/*------------------------------------*
    wrap
*------------------------------------*/
#wrap{
    min-height: 100%;
}

/*------------------------------------*
    nav_header
*------------------------------------*/
#nav_header{
    width: 100%;
    height: 44px;
    padding-top: 12px;
}
#nav_header .nav_header_right{
    float: right;
}
.nav_header_right p{
    font-size: 12px;
    line-height: 32px;
    display: inline-block;
    margin-right: 30px;
}
.nav_header_right p span{
    color: #ffffff;
}
#nav_header .btn-S{
    background-color: transparent;
    border: 1px solid #ffffff;
    padding: 8px 18px;
}

/*------------------------------------*
    nav
*------------------------------------*/
#nav{
    background-color: #444444;
    width: 100%;
    height: 103px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
}
.nav_list{
    overflow: hidden;
    padding: 7px 0 0;
    height: 59px;
    width: 100%;
}
.nav_list li{
    float: left;
    width: 14.548%;
    height: 42px;
    margin-left: 0.5816%;
    margin-top: 10px;
}
.nav_list li.nav--search,
.nav_list li.nav--cart{
    width: 9%;
}
.nav_list li:first-child{
    margin-left: 0;
}
.nav_list li a{
    background-color: #f5f5f5;
    border-radius: 4px 4px 0px 0px;
    display: block;
    font-size: 12px;
    font-weight: bold;
    height: 60px;
    line-height: 38px;
    overflow: hidden;
    padding-top: 4px;
    position: relative;
    text-align: center;
    width: 100%;
}
.nav_list li.nav--search a,
.nav_list li.nav--cart a{
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
}
.nav_list li.nav--search a{
    background-image: url(../img/icon_nav_search.png);
    background-position: center 14px;
}
.nav_list li.nav--cart a{
    background-image: url(../img/icon_nav_cart.png);
    background-position: center 14px;
}
.nav_list li a:before{
    content: "";
    display: block;
    height: 4px;
    position: absolute;
    top: 0;
    width: 100%;
}
.nav_list li:nth-child(1) a:before{
    background-color: #cccccc;
}
.nav_list li:nth-child(2) a:before{
    background-color: #ea7066;
}
.nav_list li:nth-child(3) a:before{
    background-color: #e9bc00;
}
.nav_list li:nth-child(4) a:before{
    background-color: #7dbeb1;
}
.nav_list li:nth-child(5) a:before{
    background-color: #930000;
}
.nav_list li:nth-child(6) a:before{
    background-color: #930000;
}
.nav_list li.active{
    margin-top: 0;
    height: 52px;
}
.nav_list li.active a{
    background-color: #ffffff;
    font-size: 14px;
    height: 72px;
    line-height: 48px;
}
.nav_list li span{
    background: #ff6928;
    color: #fff;
    font-size: 12px;
    width: 20px;
    height: 20px;
    display: block;
    line-height: 20px;
    border-radius: 10px;
    text-align: center;
    top: 8px;
    right: 12px;
    position: absolute;
}
/*------------------------------------*
    main
*------------------------------------*/
/*ページにnavがある場合*/
#main.main_padding_top{
    padding-top: 103px;
}

/*------------------------------------*
    header_bottom_bar
*------------------------------------*/
/*nav下部にposition:fixedのbarを配置する場合*/
.header_bottom_bar{
    position: fixed;
    top: 103px;
    left: 0;
    width: 100%;
    z-index: 998;
}

.caution {
    font-size: 12px;
    color: grey;
    text-align: left;
    margin: 20px auto;
}

/*------------------------------------*
スマホ
/*------------------------------------*/
@media screen and (max-width:600px) { /*600px以下*/
    #nav{
        height: 155px;
        border-bottom: 3px solid #e5e5e5;
    }
    .nav_list{
        overflow: initial;
    }
    .nav_list li:nth-of-type(5){
        margin-left: 0;
    }
    .nav_list li {
        width: 24.53%;
        overflow: hidden;
    }
    .nav_list li.active a{
        font-size: 13px;
    }
    .nav_list li a.nav--coordinate {
        font-size: 11px;
    }
    .nav_list li.nav--search, .nav_list li.nav--cart {
        width: 49.6%;
    }
    .header_bottom_bar {
        top: 145px;
    }
    #main.main_padding_top {
        padding-top: 155px;
    }
    #nav_header .btn-S {
        float: right;
    }
}
