@charset "UTF-8";
/* ----------------------------------------------
 base
---------------------------------------------- */
html {
  font-size: 62.5%;
  /*基準が16pxの場合、10px*/
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", Meiryo, sans-serif;
  color: #000000;
  background-color: #ffffff;
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6, p, pre, ul, li, img, dl, dt, dd, blockquote, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  color: #000000;
}

img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
}

p, h1, h2, h3, h4, h5, h6 {
  margin: 30px 0 0 0;
  padding: 0;
  font-size: 1.3rem;
  letter-spacing: 0.05rem;
  line-height: 1.8;
}

ul {
  margin: 30px 0 0 0;
  padding: 0;
  list-style-type: none;
}

ul li {
  margin: 15px 0 0 0;
  padding: 0;
  font-size: 1.3rem;
  line-height: 1.5;
}

dl {
  margin: 30px 0 0 0;
  padding: 0;
}

dl dt {
  margin: 15px 0 0 0;
  padding: 0;
  font-size: 1.3rem;
  line-height: 1.5;
}

dl dd {
  margin: 15px 0 0 0;
  padding: 0;
  font-size: 1.3rem;
  line-height: 1.5;
}

table {
  margin: 40px 0 0 0;
  border-width: 0;
  padding: 0;
  empty-cells: show;
  border-top: 1px solid #e0e0e0;
  width: 100%;
}

caption {
  font-size: 1.4rem;
  letter-spacing: 0.05rem;
  font-weight: bold;
  text-align: left;
  padding: 0 0 8px 0;
}

th {
  font-weight: normal;
  text-align: left;
  margin: 0;
  padding: 8px;
  font-size: 1.3rem;
  letter-spacing: 0.05rem;
  line-height: 1.8;
  border-bottom: 1px solid #e0e0e0;
}

td {
  margin: 0;
  padding: 8px;
  text-align: left;
  font-size: 1.3rem;
  letter-spacing: 0.05rem;
  line-height: 1.8;
  border-bottom: 1px solid #e0e0e0;
}

button, input, select, textarea {
  font: inherit;
}

a:link {
  color: #666666;
  text-decoration: none;
}

a:visited {
  color: #666666;
  text-decoration: none;
}

a:hover {
  color: #999999;
  text-decoration: none;
}

a:active {
  color: #999999;
  text-decoration: none;
}

a:hover img {
  opacity: 0.6;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

/* ----------------------------------------------
 utility
---------------------------------------------- */
.u_mg_0 {
  margin-top: 0;
}

.u_mg_5 {
  margin-top: 5px;
}

.u_mg_10 {
  margin-top: 10px;
}

.u_mg_15 {
  margin-top: 15px;
}

.u_align_r {
  text-align: right;
}

.u_align_c {
  text-align: center;
}

/* ----------------------------------------------
 common
---------------------------------------------- */
.container-fluid {
  padding-left: 20px;
  padding-right: 20px;
}

@media only screen and (min-width: 768px) {
  .container-fluid {
    padding-left: 20px;
    padding-right: 20px;
  }
}

#contents {
  min-height: 300px;
}

#main .page-heading {
  font-size: 2.4rem;
  text-align: center;
  margin: 0;
  padding: 0 0 20px 0;
  border: 0;
}

@media only screen and (max-width: 768px) {
  #main .page-heading {
    margin-top: 40px;
  }
}

#main .page-heading-sm {
  font-size: 1.6rem;
  margin: 50px 0 0 0;
}

@media only screen and (max-width: 768px) {
  .dl_table dl {
    margin: 0;
    padding: 0;
  }
  .dl_table dt {
    margin: 0;
    padding: 20px 0 0 0;
    font-weight: bold;
  }
  .dl_table dd {
    margin: 0;
    padding: 20px 0 20px 0;
  }
}

.btn-info, .btn-primary {
  color: #ffffff !important;
}

/* ----------------------------------------------
 layout
---------------------------------------------- */
#header .header_logo_area {
  padding: 8px 0 16px 0;
}

@media only screen and (max-width: 768px) {
  #header .header_logo_area h1.header_logo {
    padding-top: 3px;
    padding-bottom: 3px;
  }
  #header .header_logo_area h1.header_logo img {
    height: 45px;
    width: auto;
  }
}

#header .nav-trigger {
  display: none;
}

#header #cart_area .item_detail {
  margin-top: 0;
  padding-left: 0;
}

#header #cart_area .item_detail dt {
  font-size: 1.4rem;
  margin: 0;
}

#header #cart_area .item_detail dd {
  font-size: 1.3rem;
  margin: 5px 0 0 0;
}

#category ul.category-nav {
  margin: 0;
}

#category ul.category-nav a {
  color: #000000;
  font-size: 1.6rem;
}

#category ul.category-nav a:hover {
  color: #999999;
}

#item_list {
  margin: 20px 0;
}

#item_list .pickup_item {
  margin: 0;
  padding: 20px 0 0 0;
}

#item_list dl {
  margin: 0;
  padding: 0;
}

#item_list dl dt.item_name {
  font-size: 1.4rem;
  margin: 5px 0 0 0;
  color: #000000;
}

#item_list dl dd.item_price {
  font-size: 1.2rem;
  margin: 5px 0 0 0;
  font-weight: normal;
  color: #666666;
}

#item_detail {
  margin: 30px 0;
}

@media only screen and (min-width: 768px) {
  #item_detail #item_detail_area.col-sm-6 {
    width: 48%;
    float: right;
  }
}

#item_detail .item_name {
  margin: 0;
  padding: 0;
  font-size: 2.0rem;
  line-height: 2.1;
  font-weight: normal;
  color: #000000;
}

#item_detail .item_comment {
  margin: 40px 0 0 0;
  padding: 0;
  line-height: 2.0;
}

#item_detail .price_box {
  margin: 40px 0 0 0;
  padding: 20px 0;
  border-top: 1px solid #D9D9D9;
  border-bottom: 1px solid #D9D9D9;
}

#item_detail .price_box p {
  font-size: 1.6rem;
  font-weight: bold;
}

#item_detail #detail_cart_box {
  margin: 40px 0 0 0;
  padding: 0;
}

#item_detail #detail_cart_box .classcategory_list li select.form-control {
  font-size: 1.3rem;
}

#item_detail #detail_cart_box .quantity {
  margin: 40px 0 0 0;
  padding: 0;
}

#item_detail #detail_cart_box .quantity dt {
  margin: 0;
  padding: 0;
}

#item_detail #detail_cart_box .quantity dd {
  margin: 0;
  padding: 0;
}

#item_detail #detail_cart_box .quantity dd input {
  margin-left: 20px;
}

#topicpath {
  margin: 10px 0 0 0;
  padding: 0;
  border-top: 0;
  border-bottom: 0;
}

#topicpath h2 {
  text-align: center;
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-size: 3.0rem;
}

@media only screen and (max-width: 768px) {
  #topicpath {
    margin: 30px 0 0 0;
  }
}

#result_info_box p#result_info_box__item_count {
  margin: 50px 0 0 0;
  padding: 0;
  text-align: center;
  width: 100%;
}

#tradelaw_wrap {
  margin: 30px 0 0 0;
}

.contact_container {
  margin: 30px 0 0 0;
}

#shopping_confirm p {
  font-size: 1.4rem;
}

#shopping_confirm dt {
  font-size: 1.5rem;
}

#shopping_confirm dd {
  font-size: 1.4rem;
}

#shopping_confirm h2.heading02 {
  margin-top: 50px;
}

#shopping_confirm h3 {
  font-size: 1.6rem;
  margin: 15px 0 0 0;
}

#confirm_side .total_box dl {
  margin-top: 10px;
}

#confirm_side .total_box dt {
  margin-top: 0;
  font-size: 1.6rem;
}

#confirm_side .total_box dd {
  margin-top: 0;
  font-size: 1.6rem;
}

#welcome_message {
  border: 0;
}

#welcome_message p {
  font-size: 1.5rem;
}

#navi_list li {
  margin-top: 0;
}

#history_list dl {
  margin-top: 0;
}

#history_list dt {
  margin-top: 0;
}

#history_list dd {
  margin-top: 0;
}

#delivery_box__new_button {
  padding-bottom: 15px;
}

#deliver_wrap #list_box__add_button {
  padding-bottom: 15px;
}

#footer {
  background: #f5f5f5;
  border-top: 0;
}

#footer ul li {
  font-size: 1.2rem;
}

#footer .footer_logo_area {
  margin: 42px 0 0 0;
}

#footer .footer_logo_area .copyright {
  font-size: 1.5rem;
  margin: 5px 0 0 0;
  color: #666666;
}

@media only screen and (max-width: 768px) {
  #footer .footer_logo_area .logo img {
    height: 22px;
    width: auto;
  }
  #footer .footer_logo_area .copyright {
    font-size: 1.3rem;
  }
}
