@charset "utf-8";

@import url("bootstrap.custom.min.css"); /* only Grid system CSS */


/* --------------------------------
	Common style
-------------------------------- */


html {
    font-size: 62.5%; /* 62.5%を指定すると「1.0 rem = 10px」 */
}

body {
    font-size: 16px;
    font-size: 1.6rem;
}
a { color: #2a1b1b;
    text-decoration: none;
    cursor: pointer;
}
a:hover,
a:focus,
a:active { color: #868383;text-decoration: none; outline: none;}


textarea { /* for chrome fontsize bug */
    font-family: sans-serif;
}

ul, ol {
    list-style: none;
    margin: 0; padding: 0;
}
dl, dt, dd, li{
    margin: 0; padding: 0;
}
img {
    max-width: 100%;
}

/* svg icon */
#svgicon {
    display: block;
    width: 0; height: 0; overflow: hidden;
}
.cb {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
}
.cb-images {
    width: 1.125em;
}
.icon-bg {
    fill: #d4d4d5;
}
.icon-with-bg {
    fill: #fff;
}

.container-fluid {
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
}
.row {
    margin-left: -8px;
    margin-right: -8px;
    padding-bottom: 16px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
    padding-left: 8px;
    padding-right: 8px;
}


/*  table
============================ */
.table {
    width: 100%;
}
.table > thead th {
    color: #2a1b1b;
    background-color: #edebdf;
    text-align: center;
}

.table > tbody .th {
    color: #2a1b1b;
    text-align: center;
}

.table > tbody td {
    color: #2a1b1b;
    text-align: center;
}

.table-bordered > tbody .th {
    background-color: #fbfbf7;
}

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    padding:15px;
    line-height:1.42857143;
    vertical-align:top;
    border-top:1px solid #d0bcaf;
}
.table-bordered {
    border:1px solid #d0bcaf;
}
.table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered>thead>tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td {
    border:1px solid #d0bcaf;
}
.table-bordered > thead > tr > th, .table-bordered > thead > tr > td {
    border-bottom-width:2px;
}

.table > tbody tr:last-child {
    border-bottom:1px solid #d0bcaf;
}

/* resTables */
table.restables-clone {
    display: none;
}

table.restables-clone th,
table.restables-clone td,
table.restables-clone .th {
    text-align: left;
}

table.restables-clone tbody > tr > td:first-child {
    background-color: #fbfbf7;
}

table.restables-clone tbody > tr > td.th {
    background-color: #edebdf;
}

table.restables-clone >thead th {
    color: #2a1b1b;
}

@media (max-width: 991px) {
    table.restables-origin {
        display: none;
    }

    table.restables-clone {
        display: table;
    }
}

/*	form
============================ */

label {
    font-weight: normal;
}
input:focus,
select:focus {
    outline: none;
}
input[type="number"] {
    text-align: right;
}
.form-group .errormsg {
    margin-top: 3px;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
}
dd.form-group .errormsg {
    margin-bottom: 0;
}

.form-control {
    border: 1px solid #C4CCCE;
    border-radius:3px !important;
    box-shadow:none;
    font-size: 16px;
    font-size: 1.6rem;
    height: 40px;
    padding: 6px 12px;
    width: auto;
    line-height: 1.5
}
.form-control:focus {
    border-color:#3c8dbc !important;
    box-shadow:none
}
.has-success .form-control:focus,
.has-warning .form-control:focus,
.has-error .form-control:focus {
    box-shadow:none;
    background: none;
}
.has-success .form-control { border-color: #0D8969; background: #e7f6f3; }
.has-warning .form-control { border-color: #E99133; background: #fdf7ed; }
.has-error .form-control { border-color: #CF3F34; background: #FDF1F0; }

.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline {
    color: inherit;  background: #FDF1F0;
}

.form-control::-moz-placeholder {
    color:#bbb;
    opacity:1
}
.form-control:-ms-input-placeholder {
    color:#bbb
}
.form-control::-webkit-input-placeholder {
    color:#bbb
}
.form-control:not(select) {
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}

.form-group .form-control {
    width: 100%;
}
.form-inline .form-control {
    width: auto;
}

.form-group.lange input[type="text"], .form-group.lange label {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 1%;
    margin-right: 1%;
    vertical-align: middle;
}
.form-group.lange input[type="text"] {
    width: 28%;
}
.input_tel input {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 1px;
    margin-right: 1px;
    max-width: 5em;
    vertical-align: middle;
    width: 30%;
}
.form-group.input_tel input:first-child {
    margin-left: 0;
}
.form-group.input_name input {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 2%;
    vertical-align: middle;
    width: 48%;
}
.form-group.input_name input:first-child {
    margin-left: 0;
}
.form-group.input_zip input {
    display: inline-block;
    margin-left: 1%;
    margin-right: 1%;
    max-width: 5em;
    vertical-align: middle;
    width: 30%;
}
.form-group.input_zip .question-circle {
    font-size: 11px;
    display: inline-block;
    width: 15px; height: 15px;
    line-height: 15px;
    text-align: center;
    vertical-align: middle;
    background: #525263;
    border-radius: 50%;
}
.form-group.input_zip .question-circle .cb-question {
    fill: #fff;
}


.form-group .item_price input, .form-group .item_quantity input {
    margin: 0 1%;
    text-align: right;
    width: 50%;
}

.form-inline label {
    margin: 0 10px 0 0;
}
.form-inline label:first-child + select,
.form-inline label:first-child + input {
    margin-right: 10px;
}

.form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: top;
}
.checkbox-inline, .radio-inline {
    cursor: pointer;
    margin-left: 20px;
}
.checkbox-inline:first-child, .radio-inline:first-child {
    margin-left: 0;
}

span.required {
    color: #DE5D50;
    font-weight: normal !important;
    margin-left: 1em;
    font-size: 12px;
    font-size: 1.2rem;
}

/* --------------------------------
	Parts
-------------------------------- */

/* heading */

h2 {
    font-size: 16px;
    font-size: 1.6rem;
}
.page-heading {
    margin: 0 0 8px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    border-bottom: 1px dotted #ccc;
    border-top: 1px solid #ccc;
    padding: 8px;
}

.heading01 {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}
.heading02,
.heading03 {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
}
.heading04 {
    clear: both;
    margin-bottom: 5px;
}
.heading05 {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}

/* btn */

.btn {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 1.6rem 4.2rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    border-radius: 0.5rem;
    color: #fff;
    min-width: 260px;
}

.btn-white {
    font-size: 1.4rem;
    font-weight: 300;
    color: #2a1b1b;
    background: #fff;
    border: 1px solid #c4b8b8;
    padding: .6rem 4.2rem;
    background: url("../images/arrow_black.png") no-repeat white;
    background-position: right 15px center;
    min-width: 274px;
}
.btn-white:hover,
.btn-white:focus,
.btn-white:active,
.btn-white.active {
    color: #2a1b1b;
    background-color: #fff;
    opacity: .8;
}

.btn-red {
    color: #fff;
    background: #be1629;
}
.btn-red:hover,
.btn-red:focus,
.btn-red:active,
.btn-red.active {
    color: #fff;
    background-color: #be1629;
    opacity: .8;
}

.btn-darkred {
    color: #fff;
    background: #690000;
}
.btn-darkred:hover,
.btn-darkred:focus,
.btn-darkred:active,
.btn-darkred.active {
    color: #fff;
    background-color: #690000;
    opacity: .8;
}

.btn-rosybrown {
    color: #fff;
    background: #b09b9b;
}
.btn-rosybrown:hover,
.btn-rosybrown:focus,
.btn-rosybrown:active,
.btn-rosybrown.active {
    color: #fff;
    background-color: #b09b9b;
    opacity: .8;
}

.btn-lg{padding:10px 16px;font-size:16px;line-height:1.3333333}
.btn-sm{padding:8px 10px;font-size:12px;line-height:1.5;font-weight: normal;}
.btn-xs{padding:5px 8px;font-size:10px;line-height:1.5;font-weight: normal;}

.btn .cb {
    margin: 0 5px;
}

/* btn_circle */

.btn_circle {
    border: 0 none;
    padding: 0; margin: 0;
    text-shadow: none;
    box-shadow: none;
    border-radius: 50%;
    color: #fff;
    background: #B8BEC4;
    cursor: pointer;
    width: 40px; height: 40px;
    line-height: 40px;
    vertical-align: middle;
}
.btn_circle .cb {
    font-size: 24px;
    font-size: 2.4rem;
    position: relative;
    top: -1px;
}
.btn_circle:hover {
    opacity: 0.8;
}

/* icon_close */

.icon_close {
    /* container for the X icon */
    position: absolute;
    height: 100%;
    width: 50px;
    top: 0;
    left: 0;
}
.icon_close::before, .icon_close::after {
    /* Force Hardware Acceleration in WebKit */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;

    /* close icon */
    content: '';
    position: absolute;
    display: inline-block;
    height: 3px;
    width: 22px;
    top: 50%;
    margin-top: -2px;
    left: 50%;
    margin-left: -11px;
    background: #525263;
}
.icon_close::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
.icon_close::after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}


/* badge */

.badge {
    display:inline-block;
    min-width:10px;
    padding:3px 7px;
    font-size:10px;
    font-size:1rem;
    font-weight:700;
    line-height:1;
    color:#fff;
    text-align:center;
    white-space:nowrap;
    vertical-align:baseline;
    background-color:#DE5D50;
    border-radius:10px
}
.btn .badge {
    position:relative;
    top:-1px
}

/* tableStyle */

div.table {
    width: 100%;
    display: table;
}
div.table .thead {
    display: none;
}
div.table .tbody {
    display: table-row-group;
}
div.table .tbody .tr {
    display: table-row;
    margin: 0;
}
div.table .tbody .tr > .td {
    display: table-cell;
    padding: 10px 8px;
    text-align: center;
    overflow-x:hidden;
}
.table .tbody .tr > .price {
    text-align: right;
}

/* dl_table */

.dl_table {
    border-top: 1px dotted #ccc;
}
.dl_table dl {
    padding: 8px 0;
    border-bottom: 1px dotted #ccc;
}
.dl_table dl:last-child {
    border-bottom: none;
}
.dl_table dd .form-group {
    padding-top: 8px;
}
.dl_table dd > .form-group:first-child {
    padding-top: 0;
}
.dl_table .zip-search {
    margin-top: 8px;
}

/* pagination */

.pagination {
    width: 95%;
    margin: 16px auto;
    position: relative;
    clear: both;
}
.pagination ul {
    list-style-type: none;
    margin: 0 auto;
    padding: 1em 0;
    text-align: center;
}
.pagination ul li {
    display: inline-block;
    min-width: 29px;
    padding: 5px 3px 0 2px;
    text-align: center;
}

.pagination ul li a {
    color: #525263;
    display: block;
    line-height: 1.8;
    padding: 5px 1em;
    text-decoration: none;
    border: 1px solid #ccc;
}
.pagination ul li a:hover, .pagination ul li a:focus {
    opacity: 0.8;
}
.pagination ul li.active a {
    color: white;
    background: #690000;
    text-decoration: none;
    border: 1px solid #690000;
}
.pagination ul li.active a:hover, .pagination ul li.active a:focus {
    opacity: 0.8;
}
.pagination ul li.disabled a {
    color: #9797A0;
    text-decoration: none;
}
.pagination ul li.disabled a:hover, .pagination ul li.disabled a:focus {
    color: #9797A0;
}

.pagenation__item-previous {
    float: left;
    max-width: 120px;
    width: 100%;
}
.pagenation__item-next {
    float: right;
    max-width: 120px;
    width: 100%;
}

.pagenation__item-previous a {
    font-size: 1.4rem;
    font-weight: 300;
    color: #2a1b1b;
    background: #fff;
    border: 1px solid #c4b8b8;
    padding: .6rem 4.2rem;
    background: url("../images/arrow_black_left.png") no-repeat white;
    background-position: 15px center;
    width: 100%;
}

.pagenation__item-next a {
    font-size: 1.4rem;
    font-weight: 300;
    color: #2a1b1b;
    background: #fff;
    border: 1px solid #c4b8b8;
    padding: .6rem 4.2rem;
    background: url("../images/arrow_black.png") no-repeat white;
    background-position: right 15px center;
    width: 100%;
}

.pagenation__item-previous a:hover {
    background: url("../images/arrow_black_left.png") no-repeat white !important;
    background-position: 15px center !important;
    opacity: 0.8;
}

.pagenation__item-next a:hover {
    background: url("../images/arrow_black.png") no-repeat white !important;
    background-position: right 15px center !important;
    opacity: 0.8;
}

/* topicpath */

#topicpath {
    border-top: 1px solid #ccc;
    border-bottom: 1px dotted #ccc;
    padding: 0 8px;
}
#topicpath ol {
    padding-top: 1em;
    padding-bottom: 1em;
    list-style: none;
    overflow: hidden;
}
#topicpath li {
    float: left;
    color: #333;
    font-size: 1.2rem;
}
#topicpath li a {
    float: left;
    display: inline-block;
}

#topicpath li:after {
    content:"｜";
}

#topicpath li:last-child:after {
    content:"";
}

/* message */
.message {
    text-align: center;
    padding: 16px 0;
    margin: 0;
}
p.message {
    padding: 0 0 16px;
}
.heading04 + .message {
    padding-top: 0;
    text-align: left;
}
.message .errormsg {
    padding: 8px;
    font-weight: bold;
}
.message .errormsg:first-child {
    margin-top: 0;
}
.message .errormsg:last-child {
    margin-bottom: 0;
}
.message .errormsg .cb {
    margin-right: 5px;
    font-size: 130%;
    position: relative;
    top: -1px;
}

/* pagenumberarea */

.pagenumberarea {
    text-align: right;
    margin: 0;
    padding-right: 16px;
    padding-bottom: 20px;
}
.pagenumberarea > li {
    float: none;
    display: inline-block;
    margin-left: 3px;
    width: auto;
}
.dropdown.open > a {
    background: #ededed;
}

/* flowline */

.flowline {
    position: relative;
    margin: 0;
    padding: 8px 0 16px;
    border-bottom: 1px dotted #ccc;
}
.flowline ul {
    position: relative;
    margin: 0 auto;
}
.flowline ul::before {
    content: "";
    height: 4px;
    background: #525263;
    position: absolute;
    top: 13px;
    margin: 0;
    border-radius: 2px;
    z-index:0;
}
.flowline.step3 ul::before {
    width: 66.66666666%;
    left: 16.6666666%;
}
.flowline.step4 ul::before {
    width: 75%;
    left: 12.5%;
}
.flowline ul li {
    float: left;
    position: relative;
    text-align: center;
    white-space: nowrap;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
    z-index:1;
}
.flowline.step3 ul li {
    width: 33.33333333333333%;
}
.flowline.step4 ul li {
    width: 25%;
}
.flowline li .flow_number {
    line-height: 30px;
    width: 30px; height: 30px;
    margin-bottom: 5px;
    font-size: 12px;
    font-size: 1.2rem;
    background: #525263;
    color: #fff;
    top: 0; left: 18px;
    display: inline-block;
    margin-bottom: 5px;
    text-align: center;
    vertical-align: middle;
    border-radius: 50%;
}
.flowline li.active {
    color: #5CB1B1;
}
.flowline li.active .flow_number {
    background: #5CB1B1;
}


/* item_box */

.item_box > div {
    padding: 8px;
}
.item_box .item_photo {
    max-width: 100px;
}
.item_box .icon_edit {
    position: absolute;
    top: 16px; right: 16px;
    text-align: right;
    padding: 0;
}

.item_photo {
    position: relative;
}
.sold_out::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url('../images/label_zero.png') no-repeat;
    z-index: 1000;
}

/* .cart .item_box */

#cart .inner {
    padding: 0 8px;
}
.cart .item_box {
    border-bottom: 1px solid #E8E8E8;
    position: relative;
}
.cart .item_box:last-child {
    border: 0 none;
}
.cart .item_box > div,
.cart .item_box > dl {
    padding: 8px 0;
}
.cart .item_box .item_photo {
    padding: 8px 8px 8px 0;
    float: left;
}
.cart .item_box .item_detail {
    padding-left: 108px;
}
.cart .item_box .icon_edit {
    height: 30px; width: 30px;
    right: 0; top: 10px;
    text-align: center;
    vertical-align: middle;
}
.cart .item_box .icon_edit button {
    display: inline-block;
    vertical-align: middle;
}
.cart .item_box .icon_close {
    width: 30px;
}
.cart .item_box .cb {
    font-size: 20px;
    font-size: 2rem;
}
.cart .item_box .item_name {
    margin-right: 35px;
    font-size: 16px;
    font-size: 1.6rem;
}
.cart .item_box .item_pattern {
    font-size: 14px;
    font-size: 1.4rem;
}
.cart .item_box .item_price {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}
.cart .item_box .item_price .small {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: 10px;
}
.cart .item_box .item_quantity {
    vertical-align: middle;
    font-size: 14px;
    font-size: 1.4rem;
}
.cart .item_box .item_quantity input {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    vertical-align: middle;
    width: 100px;
    text-align :right;
}
.cart .cart_price {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 8px;
    border-bottom: 1px solid #E8E8E8;
    text-align: right;
}
.cart .cart_price .price {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}
.cart .btn_area {
    padding: 8px 0 0;
}
.cart .btn_area li {
    padding-bottom: 8px;
}
.cart .btn_area .btn {
    width: 100%;
}
.cart .btn_area .btn-sm {
    height: auto;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    padding: 10px 8px;
}

/* form_terms_link */

.form_terms_link {
    text-align: center;
}

/* error_box */
.error_box {
    text-align: center;
    padding: 5% 0;
}
.error_box .btn_back {
    padding: 5% 0;
}
.error_box .btn_back a {
    width: 100%;
    max-width: 320px;
}


/* --------------------------------
	Common
-------------------------------- */

.outer {
    margin: auto;
    overflow:hidden;
}

.inner {
    max-width: 1180px;
}

/****** Base Layout Setting ********/

#contents, #header, #footer, .pagetop {
    /* Force Hardware Acceleration in WebKit */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    will-change: transform;
}

#contents, #header, #footer, .pagetop {
    position: relative;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
}

#contents {
    min-height: 100vh;
    z-index: 2;
}
#header .container {
    position: relative;
}

/* main */
#main {

}

/* side */
.side {

}



/****** Header Setting ********/

#header {
    background: #ffffff;
    z-index: 3;
    min-height: 45px;
}
#header .inner {
    position: relative;
}
#header .copy {
    font-size: 9px;
    font-size: 0.9rem;
    margin-top: 0;
    margin-bottom: 0;
}
.header_logo_area {
    position: relative;
    z-index: 10;
    min-height: 70px;
    margin-top: 0;
    margin-bottom: 0;
}
.header_logo_area .header_logo {
    font-size: 20px;
    font-size: 2rem;
    margin: 0;
}

.header_notice {
    background-color: #be1629;
    text-align: center;
    color: #fff;
    padding: 5px;
    font-size: 1.4rem;
}

.header_notice .price {
    font-size: 1.8rem;
}

.header_notice .unit {
    font-size: 1.2rem;
}

.header_notice .tax {
    font-size: 1rem;
}

/* header-buttons */

.header-buttons {
    position: absolute;
    display: inline-block;
    top: 3px;
    right: 5%;
    background: #999;
    z-index: 11;
}
.header-buttons li {
    display: inline-block;
}

.cart-trigger, .nav-trigger {
    position: relative;
    display: block;
    height: 44px;
    overflow: hidden;
    white-space: nowrap;
    z-index: 3;
    cursor: pointer;
}

p.cart-trigger a:link,
p.cart-trigger a:visited,
p.cart-trigger a:hover,
p.cart-trigger a:active {
    text-decoration: none;
    color: #525263;
}
p.cart-trigger:hover {
    opacity: 0.8;
}
p.cart-trigger a {
    display: inline-block;
    width: 50px;
    height: 44px;
    line-height: 44px;
    vertical-align: middle;
    text-align: center;
    outline: none;
}
p.cart-trigger .cb {
    vertical-align: middle;
    font-size: 30px;
    /*-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;*/
    /*-moz-transition: opacity 0.3s, -moz-transform 0.3s;*/
    /*transition: opacity 0.3s, transform 0.3s;*/
}
p.cart-trigger .cb-close {
    opacity: 0;
    position: absolute;
    left: 13px; top: 9px;
    font-size: 24px;
}
p.cart-trigger .badge {
    position: absolute;
    right: 1px; top: 5px;

}
p.cart-trigger.cart-is-visible .cb-shopping-cart,
p.cart-trigger.cart-is-visible span.badge {
    /* hide cart icon */
    opacity: 0;
}
p.cart-trigger.cart-is-visible .cb-close {
    /* show close icon */
    opacity: 1;
}

#btn_menu, #btn_close {
    margin: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 11;
    width: 70px;
    height: 70px;
    text-align: center;
}

#btn_menu {
    background: url("../images/sp_nav_open.png") no-repeat;
    background-position-x: 22px;
    background-position-y: 15px;
}

#btn_close {
    background: url("../images/sp_nav_close.png") no-repeat;
    background-position-x: 22px;
    background-position-y: 15px;
}

.drawer-open #btn_menu {
    display: none;
}

#btn_close {
    display: none;
}

.drawer-open #btn_close {
    display: block;
}

#btn_cart {
    margin: 0;
    position: absolute;
    right: 70px;
    top: 0;
    width: 70px;
    height: 70px;
    z-index: 12;
    text-align: center;
    background: url("../images/sp_icon_cart.png") no-repeat;
    background-position-x: 18px;
    background-position-y: 15px;
    background-color: #be1629;
    text-align: center;
}
#btn_menu a, #btn_cart a, #btn_close a {
    display: block;
    width: 100%;
    height: 100%;
}

#btn_cart a, .nav-trigger {
    font-size: 1.2rem;
    font-weight: bold;
    padding-top: 43px;
    color: #000;
}

.nav-trigger:hover {
    color: #000;
}

#btn_cart a {
    color: #fff;
}

/****** drawer Setting ********/

.drawer {
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    background: #F6F6F6;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 1;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
}


/*	Category navigation
--------------------------- */

/* category-nav */
#search,
#side_catetory_navi {
    background: #f9f8f0;
    padding: 15px;
    margin-bottom: 20px;
}

#side_catetory_navi h3 {
    position: relative;;
    margin-top: 0;
    margin-bottom: 0px;
    height: 40px;
}

#side_catetory_navi h3:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #1f1f1f;
}

#side_catetory_navi h3:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 70px;
    border-bottom: 2px solid #ae001f;
}

.category-nav > li {
    text-align: left;
    margin: 0 1em;
    position: relative;
}
.category-nav ul {
    position: static;
    height: auto;
    width: auto;
    overflow: visible;
    z-index: 3;
}
.category-nav > li > a {
    position: relative;
    display: inline-block;
    color: #2e3233;
    overflow: visible;
    -webkit-transition: color 0.3s, box-shadow 0.3s;
    -moz-transition: color 0.3s, box-shadow 0.3s;
    transition: color 0.3s, box-shadow 0.3s;
}

#drawer .category-nav {
    margin-bottom: 16px;
}
.category-nav a {
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 10px;
    color: #333;
    font-size: 1.5rem;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
    border-bottom: 1px solid #E8E8E8;
}
.category-nav a.has-toggle {
    padding-right: 50px;
}
.category-nav a:link,
.category-nav a:visited,
.category-nav a:hover,
.category-nav a:active {
    text-decoration: none;
}
.category-nav a:hover {
    background: rgba(204, 204, 204, 0.1);
}
.category-nav a .toggle {
    display: block;
    position: absolute;
    right: 10px; top: 5px;
    width: 40px; height: 40px;
    line-height: 40px;
    text-align: center;
    vertical-align: middle;
}
.category-nav .active > .toggle .cb {
    -webkit-transform:rotate(-180deg);
    -ms-transform:rotate(-180deg);
    -o-transform:rotate(-180deg);
    transform:rotate(-180deg)
}
.category-nav li > a:hover {
    background: rgba(204, 204, 204, 0.1);
}
.category-nav li > a.active {
    background: rgba(204, 204, 204, 0.1);
}

.category-nav ul {
    display: none;
}
.category-nav ul > li > a {
    padding-left: 18px;
}
.category-nav ul > li > ul > li > a {
    padding-left: 26px;
}
.category-nav ul > li > ul > li > ul > li a {
    padding-left: 42px;
}



/****** Footer Setting ********/

#footer_block .row > div {
    padding-bottom: 8px;
}

#footer {
    background: #f8f8f8;
    border-top: 1px solid #e8e8e8;
    padding-top: 12px;
    padding-bottom: 24px;
    margin-top: 36px;
}
#footer ul {
    text-align: center;
}
#footer ul li {
    display: inline-block;
    margin: 0 8px 8px;
}
#footer a {
    color: #444;
}
#footer a:hover {
    color: #686868;
}
.footer_logo_area {
    text-align: center;
    color: #2a1b1b;
}
.footer_logo_area .logo {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 0;
}
.footer_logo_area .copyright {
    font-size: 10px;
    font-size: 1rem;
    margin-top: 0;
}

.pagetop {
    display: none;
    text-align: right;
    position: fixed;
    bottom: 10px; right: 10px;
    z-index: 2;
}
.pagetop a {
    display: inline-block;
    position: relative;
    width: 30px; height: 30px;
    background-color: #B8BEC4;
    border-radius: 50%;
}
.pagetop a:hover {
    opacity: 0.8;
}
.pagetop a .cb-angle-down {
    fill: #fff;
    font-size: 25px;
    font-size: 2.5rem;
    position: absolute;
    top: 50%; left: 50%;
    margin-left: -0.5em;
    margin-top: -0.5em;
    -webkit-transform:rotate(-180deg);
    -ms-transform:rotate(-180deg);
    -o-transform:rotate(-180deg);
    transform:rotate(-180deg);
}

/****** Each BlockParts Setting ********/

/* Cart */

.cart {
    position: absolute;
    height: 50px;
    width: 100%;
    top: 50px;
    left: 0;
    z-index: 3;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .3s 0s, visibility 0s .3s;
    -moz-transition: opacity .3s 0s, visibility 0s .3s;
    transition: opacity .3s 0s, visibility 0s .3s;
}

.cart.is-visible {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity .3s 0s, visibility 0s 0s;
    -moz-transition: opacity .3s 0s, visibility 0s 0s;
    transition: opacity .3s 0s, visibility 0s 0s;
}


/* Search */
.search h3 {
    font-size: 1.8rem;
    position: relative;
    margin-top: 0;
    margin-bottom: 0px;
    height: 40px;
}

.search h3:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #1f1f1f;
}

.search h3:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 70px;
    border-bottom: 2px solid #ae001f;
}

.search h4 {
    margin-bottom: 10px;
}

.bt_search {
    border: 0;
    background: #690000;
    position: absolute;
    right: 0; top: -3px;
    display: block;
    width: 35px;
    height: 100%;
    overflow: hidden;
    white-space: nowrap;
    z-index: 1;
    margin: 0;
}
.bt_search .cb-search {
    font-size: 25px;
    font-size: 2.5rem;
}

#searchform {
    position: relative;
}

.search select {
    height: 50px;
    border: 1px solid #ccc;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 0.5em 1em;
    border-radius: 0;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.search select option {
    max-width: 190px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.search .input_search {
    height: 40px;
    padding: 0 40px 0 1em;
    border: 1px solid #ccc;
    position: relative;
    margin-left: 1%;
    background: white;
}

.search input[type="search"] {
    height: 40px;
    width: 155px;
    font-size: 16px;
    font-size: 1.6rem;
    border: 0 none;
    padding: 0.5em 0;
    box-shadow: none;
    background: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.search .bt_search {
    margin-top: 3px;
}

.search_keyword button {
    font-size: 1.4rem;
    border-radius: 100vh;
    background: #f1d4d4;
    border: none;
    padding: 5px 15px;
    margin: 0 5px 10px 0;
}

/* Member area */

.member_link {
    border-top: 1px solid #525263;
    border-bottom: 1px solid #525263;
    margin-bottom: 16px;
    padding: 0;
    text-align: center;
}

.member_link > div:first-child {
    border-right: 1px solid #525263;
}

.member_link a {
    color: #525263;
    display: block;
    font-size: 1.4rem;
    height: 50px;
    line-height: 50px;
    overflow: hidden;
    padding: 0 10px;
    text-overflow: ellipsis;
    transform: translateZ(0px);
    transition: transform 0.3s ease 0s, opacity 0.3s ease 0s;
    white-space: nowrap;
}

.member_link a:hover {
    color: #9797a1;
}

/* Menu area */

.menu_link a {
    font-size: 1.6rem;
    font-weight: bold;
    padding: .4rem 1.3rem;
    color: #2a1b1b;
    height: auto;
    line-height: 1.5rem;
}
.menu_link a {
    position: relative;
    display: inline-block;
    text-decoration: none;
}
.menu_link a::after {
    position: absolute;
    bottom: -4px;
    left: 1.5rem;
    top: 30px;
    content: '';
    width: 75%;
    height: 3px;
    background-color: #be1629; /*下線の色*/
    opacity: 0;
    visibility: hidden;
}
.menu_link a:hover::after {
    bottom: -4px;
    opacity: 1;
    visibility: visible;
}
.menu_link a.current::after {
    position: absolute;
    bottom: -4px;
    left: 1.5rem;
    top: 30px;
    content: '';
    width: 75%;
    height: 3px;
    background-color: #be1629; /*下線の色*/
    opacity: 1;
    visibility: visible;
}

.menu_link a .cb {
    font-size: 30px;
    font-size: 3rem;
    fill: #B8BEC4;
    margin-right: 5px;
    position: relative;
    top: -1px;
}
.menu_link a:hover .cb {
    fill: #c6cbd0;
}

/* News List */

.newslist {
    border-bottom: 1px solid #f8f8f8;
}
.heading01 h1 {
    margin-bottom: 10px !important;
}

.newslist dl {
    border-bottom: none;
}
.newslist dt {
    cursor: pointer;
    padding: 8px;
    position: relative;
    border-bottom: 1px solid #eadfd8;
}
.newslist dt span {
    display: block;
}
.newslist dt .angle-circle {
    position: absolute;
    right: 16px;
    display: inline-block;
    top: 14px;
    width: 7em;
    height: 25px;
    font-weight: bold;
    text-align: right;
}
.newslist dt .date {
    color: #ae001f;
}
.newslist dt .cb {
    position: relative;
    top: -1px; left: 5px;
    fill: #fff;
    font-size: 11px;
    font-weight: normal;
}
.newslist dt:hover .news_title {
    text-decoration: underline;
}
.newslist dt.active .cb {
    position: relative;
    top: -2px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}
.newslist dt:hover .cb {
    opacity: 0.8;
}
.newslist dd {
    display: none;
    margin: 0 8px 8px;
}

/* infolist */
.infolist .heading01 {
    padding: 16px;
    text-align: left;
}
.infolist dt {
    padding: 16px;
    border: none;
}
.infolist dt .angle-circle {
    top: 14px;
    width: 7em;
    height: 25px;
    font-weight: bold;
}
.infolist dt .news_title {
    display: block;
    width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    padding-left: 0;
    padding-right: 10em;
}
.infolist dt.active .news_title {
    display: block;
    width: 100%;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: auto;
}
.infolist dt .cb {
    font-size: 20px;
    top: 0; left: 3px;
}
.infolist dd {
    margin: 0 32px 16px 32px;
}


/* Item List Page
------------------------------------------- */

.product_item {
    position: relative;
}
.product_item a {
    display: block;
}
.product_page .product_item a {
    padding-bottom: 16px;
}
.product_item a:hover {
    background: rgba(255,255,255,0.3);
    text-decoration: none;
}
.product_item a:hover img {
    opacity: 0.8;
}
.product_item .btn-primary {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 1.4rem;
    font-weight: normal;
    background: #be1629;
    width: 160px;
    min-width: auto;
    margin: 0 auto;
    padding: 5px;
    border-radius: 0.2rem;
}
.product_item div:last-child {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 1.4rem;
    font-weight: bold;
    color: #be1629;
    margin: 20px auto 20px;
    width: 100%;
    height: 30px;
    text-align: center;
}

.item_photo {
    display: block;
    margin: 0 0 8px;
    text-align: center;
}
.item_photo img {
    width: 100%;
}
.product_item .btn_circle {
    position: absolute;
    right: 8px; top: 8px;
}
.item_comment {
    margin: 0 0 8px;
}
.item_name {
    color: #333;
    margin: 0 0 8px;
}
.item_price {
    font-size: 2rem;
    color: #333;
    font-weight: normal;
}
.item_price .font-small {
    font-size: 1.4rem;
    font-weight: bold;
}

.special_price {
    color: #DE5D50;
}

/* Item Detail Page
------------------------------------------- */


dl.quantity dt {
    float: left;
    min-height: 40px;
    line-height: 40px;
    vertical-align: middle;
}
dl.quantity dd {
    padding-left: 3em;
}

.classcategory_list li {
    margin-top: 8px;
}
.classcategory_list li:first-child {
    margin-top: 0;
}
.btn_area .btn {
    height: 56px;
    line-height: 56px;
    vertical-align: middle;
    padding-top: 0;
    padding-bottom: 0;
}
.btn_area .btn_icon .cb {
    display: inline-block;
    font-size: 30px;
    font-size: 3.0rem;
    height: 54px;
    line-height: 54px;
    vertical-align: middle;
    position: relative;
    top: -1px;
}

#item_photo_area {
    padding-top: 8px;
    padding-bottom: 8px;
}
#item_photo_area img {
    text-align: center;
}

#item_detail_area h2 {
    margin-top: 30px;
}

#item_detail_area .small {
    font-size: 10px;
    font-size: 1rem;
    font-weight: normal !important;
}
#item_detail_area .item_name {
    font-size: 20px;
    font-size: 2rem;
    font-weight: normal;
    margin-bottom: 5px;
}
#item_detail_area .item_detail p {
    margin: 0;
}
#item_detail_area .item_detail .sale_price {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
}
#item_detail_area .item_detail .announce {
    padding: 8px 0;
    font-weight: bold;
}
#item_detail_area .item_detail .point {
    padding: 8px 0;
}
#item_detail_area .item_detail .item_code {
    padding: 8px 0;
}
#item_detail_area .item_detail .relative_cat {
    padding: 8px 0;
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
}
#item_detail_area .item_detail .item_comment {
    margin-bottom: 8px;
}
.cart_area {
    padding-top: 8px;
}
.cart_area .classcategory_list li select {
    width: 100%;
}
.cart_area .quantity {
    margin: 8px 0;
}
.cart_area .quantity dd input {
    max-width: 100px;
}
#item_detail .snsbtn_area {
    padding: 8px 0;
}

/* freearea */

#item_detail .freearea p {
    margin-top: 0;
}
#item_detail .freearea .heading01 {
    margin-bottom: 8px;
}

/* relative_cat */
.relative_cat h3 {
    margin-top: 0;
    padding-bottom: 15px;
    font-weight: normal;
    font-size: 1.8rem;
    border-bottom: 1px solid #e4d7cf;
}

.relative_cat ol {
    list-style: none;
}
.relative_cat li {
    display: inline-block;
    color: #8d7c7c;
    padding: 5px 0;
}
.relative_cat li a {
    display: inline-block;
    color: #8d7c7c;
    padding: 0 0.5em;

}
.relative_cat li a:hover {
    color: #2a1b1b;
}
.relative_cat li:first-child a {
    padding-left: 0;
}

.relative_cat li:after {
    content:" > ";
}
.relative_cat li:last-child:after {
    content:"";
}

/* review_area */

#review_area {
    border-top: 1px solid #E8E8E8;
    padding-bottom: 0;
}
#review_area dl dt {
    padding: 16px 0;
    cursor: pointer;
}
#review_area dl dt:hover {
    color: #9797A0;
}
#review_area dl dt.active .cb {
    transform: rotate(180deg);
}
#review_area dl dt .cb {
    position: absolute;
    right: 16px;
    top: 17px;
}
#review_area dl dd {
    display: none;
    padding-bottom: 0;
}
#review_area dl dd .review_btn a {
    margin: 0 auto;
    padding: 16px;
    width: 100%;
}
#review_area .review_list {
    padding: 8px 0;
}
#review_area .review_list li {
    padding: 8px 0;
}
#review_area .review_list p {
    margin: 4px 0;
}
#review_area .review_list .review_date {
    font-weight: bold;
}
#review_area .review_list .recommend_level {
    margin-left: 16px;
}
#review_area .review_list .recommend_level span {
    color: #DE5D50;
}

/* keyword_area */

#keyword_area {
    border-top: 1px solid #E8E8E8;
}
#keyword_area .heading03 {
    padding: 8px 0 0;
}
#keyword_area ul li {
    display: inline-block;
    margin-right: 5px;
}
#keyword_area ul li a {
    display: inline-block;
    padding: 5px;
    font-size: 10px;
    background: #F5F7F8;
    border: 1px solid #D7DADD;
    color: #525263;
}
#keyword_area ul li a:hover {
    background: #EEF1F3;
}

/* recommend_area */

#recommend_area {
    border-top: 1px solid #E8E8E8;
}
#recommend_area .carousel {
    margin-left: -8px;
    margin-right: -8px;
}
#recommend_area .carousel .product_item {
    padding: 0 8px;
}
#recommend_area .carousel .product_item .btn_circle {
    right: 16px;
}
#recommend_area .slick-prev,
#recommend_area .slick-next {
    border: 0 none;
    background: 0 none;
    padding: 0; margin: 0;
    text-shadow: none;
    box-shadow: none;

    position: absolute;
    font-size: 18px;
    font-size: 1.8rem;
    width: 36px; height: 36px;
    line-height: 36px;
    vertical-align: middle;
    top: -2em;
}

#recommend_area .angle-circle {
    display: inline-block;
    background: #bfbfbf;
    border-radius: 50%;
    width: 30px; height: 30px;
    margin-top: 3px;
}
#recommend_area .slick-prev .cb,
#recommend_area .slick-next .cb {
    fill: #fff;
    position: relative;
    top: -4px; right: -2px;
    font-size: 25px;
    font-size: 2.5rem;
}
#recommend_area .slick-prev .cb {
    left: -2px;
    -webkit-transform:rotate(-180deg);
    -ms-transform:rotate(-180deg);
    -o-transform:rotate(-180deg);
    transform:rotate(-180deg)
}

#recommend_area .slick-prev:hover,
#recommend_area .slick-next:hover {
    opacity: 0.8;
}

#recommend_area .slick-disabled {
    opacity: 0.4;
    cursor: default;
}
#recommend_area .slick-disabled:hover {
    opacity: 0.4;
}

#recommend_area .slick-next {
    right: 0;
}
#recommend_area .slick-prev {
    right: 40px;
    left: auto;
}
#recommend_area .item_name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* product_tag */
.product_tag_list {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
    font-size: 80%;
    color: #525263;
    border: solid 1px #D7DADD;
    border-radius: 3px;
    background-color: #F5F7F8;
}

/* Cart Page
------------------------------------------- */

#form_cart > .message:first-child {
    padding-top: 16px;
}

.total_box {
    padding: 8px 0;
}
.total_box dl {
    margin-left: 40%;
}
.total_box dl dt {
    float: left;
    width: 45%;
    white-space: nowrap;
    text-align: right;
    font-weight: bold;
}
.total_box dl dd {
    padding-left: 50%;
    text-align: right;
}
.total_box dl.total_price dd {
    font-weight: bold;
}
.total_box .btn_group {
    padding: 8px 0;
}
.total_box .btn_group p {
    margin: 8px 0;
}

.cart_item {
    border-top: 1px dotted #ccc;
}
.cart_item .item_box > .td {
    border-bottom: 1px dotted #ccc;
}
.cart_item .item_box .td {
    vertical-align: middle;
}
.cart_item .icon_edit {
    position: static;
    width: 8.3333333333%;
}
.cart_item .icon_edit a .cb {
    color: #B8BEC4;
    fill: #B8BEC4;
    font-size: 20px;
    font-size: 2rem;
}
.cart_item .icon_edit a:hover .cb {
    opacity: 0.8;
}
.cart_item .item_box a:hover img {
    opacity: 0.8;
}
.cart_item .item_box .table {
    width:58.33333333%;
}
.cart_item .item_box .table .item_photo,
.cart_item .item_box .table .item_detail {
    display: table-cell;
    vertical-align: middle;
}
.cart_item .item_box .table .item_photo {
    min-width: 80px;
    padding-right: 8px;
}
.cart_item .item_box .table .item_detail {
    text-align: left;
}
.cart_item .item_box .table .item_name a {
    font-weight: bold;
    color: #525263;
}
.cart_item .item_box .table .item_name a:hover {
    color: #9797a1;
}
.cart_item .item_detail .item_subtotal {
    display: block;
}
.cart_item.table .tbody .tr div.item_subtotal {
    display: none;
}
.cart_item .item_quantity {
    width: 16.66666667%;
}
.cart_item .item_quantity::before {
    content: "数量：";
}
.cart_item .item_quantity ul {
    text-align: center;
    white-space: nowrap;
}
.cart_item .item_quantity ul li {
    display: inline-block;
    margin: 8px 4px;
}
.cart_item .item_quantity ul li a,
.cart_item .item_quantity ul li span {
    display: inline-block;
    width: 32px; height: 32px;
    line-height: 32px;
    vertical-align: middle;
    border-radius: 50%;
}
.cart_item .item_quantity ul li a {
    border: 2px solid #c9c9c9;
}
.cart_item .item_quantity ul li span {
    border: 2px solid #e9e9e9;
}
.cart_item .item_quantity ul li a .cb {
    color: #525263;
    fill: #525263;
    margin-top: 6px;
    vertical-align: top;
}
.cart_item .item_quantity ul li span .cb {
    color: #babac1;
    fill: #babac1;
    margin-top: 6px;
    vertical-align: top;
}
.cart_item .item_quantity ul li a:hover {
    opacity: 0.8;
}
.column p {
    margin: 8px 0;
}
.column select {
    width: 100%;
}
.column textarea {
    width: 100%;
    height: 6em;
}
.column.is-edit > p {
    margin-right: 4em;
    min-height: 40px;
}
.column.is-edit .btn_edit {
    margin: 0;
    position: absolute;
    right: 0; top: 0;
}
.column .form-inline input,
.column .form-inline select {
    margin-bottom: 8px;
}

.address_table {
    border-bottom: 1px dotted #ccc;
}
.addr_box {
    position: relative;
}
.addr_box .icon_radio {
    vertical-align: middle;
    text-align: center;
    max-width: 32px;
}
div.table .tbody .addr_box .column {
    text-align: left;
}
.addr_box .column .address {
    margin: 0;
}
.addr_box .column.is-edit .address {
    margin: 0 4em 0 0;
    min-height: 40px;
}
.addr_box .column.is-edit .btn_edit {
    top: 10px;
}
.addr_box > .td {
    border-top: 1px dotted #ccc;
}

/* payment_list */

.payment_list li {
    margin-bottom: 8px;
}
.payment_list li img {
    margin-top: 5px;
}
#shopping_confirm .payment_list .radio label{
    font-weight: normal;
}





/* MyPage
------------------------------------------- */

.local_nav ul {
    border-color: #D0D0D0;
    border-style: solid;
    border-width: 1px 0 0 1px;
}

.local_nav ul:before,.local_nav ul:after {content:" ";display:table}
.local_nav ul:after {clear:both}

.local_nav li {
    float: left;
    width: 50%;
    /* 項目が1行に3件の場合
    width: 33.33333333%;*/
    border-color: #D0D0D0;
    border-style: solid;
    border-width: 0 1px 1px 0;
    text-align: center;
}
.local_nav li a {
    padding: 16px;
    font-weight: bold;
    color: #525263;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.local_nav li a:hover {
    background: #f5f7f8;
}
.local_nav li.active a {
    color: #DE5D50;
}
.order_detail dt {
    float: left;
    font-weight: bold;
}
.order_detail dd {
    padding-left: 7em;
}



.historylist_column {
    border-top: 1px solid #ccc;
    margin: 0;
}
.historylist_column > div {
    padding: 0;
}
.historylist_column .order_date {
    margin: 8px 0;
}
.historylist_column .table.item_box {
    border-top: 1px dotted #ccc;
}
.historylist_column .table.item_box .td {
    vertical-align: middle;
}
.historylist_column .order_date {
    font-size: 16px;
    font-size: 1.6rem;
}
.historylist_column .table.item_box .tbody .item_detail {
    padding: 8px 0;
    text-align: left;
}
.historylist_column .item_box .item_photo {
    padding: 8px 0;
    width: 20%;
    margin-bottom: 0;
    max-width: none;
    min-width: 100px;
}
.historylist_column .item_box .item_detail .item_name {
    font-weight: bold;
}
.historylist_column .item_box .item_detail .item_price {
    font-weight: normal;
    margin: 4px 0 8px;
}
.historylist_column + .pagination {
    margin-top: 0;
    border-top: 1px solid #ccc;
}

.mail_list dl {
    margin-bottom: 8px;
    border-bottom: 1px dotted #ccc;
}
.mail_list dl dt {
    margin-bottom: 4px;
}
.mail_list dl dd {
    margin-bottom: 8px;
}

.address_table .icon_edit {
    width: 8.33333%;
    vertical-align: middle;
}
.address_table .icon_edit a .cb {
    color: #b8bec4;
    fill: #b8bec4;
    font-size: 2rem;
}

.unsubscribe_box {
    text-align: center;
}
.unsubscribe_box .icon {
    font-size: 100px;
    font-size: 10rem;
    color: #E7E7E7;
}
.unsubscribe_box h3 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 16px;
}

#entry_birth select {
    margin: 0 8px;
}
#entry_birth select:first-child {
    margin-left: 0;
}
#entry_sex .radio {
    display: inline-block;
    margin-right: 10px;
}
#entry_sex .radio input[type="radio"] {
    margin-right: 10px;
}

.mypage .dl_table dt label {
    font-weight: bold;
}

#delivery_address_list div.is-edit {
    position: relative;
}

/* Error Page */

.message_box {
    text-align: center;
    padding-bottom: 50px;
}
.message_box .icon {
    font-size: 100px;
    font-size: 10rem;
    color: #ccc;
}
.message_box h1 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 16px;
}
.message_box .btn_group {
    margin-top: 30px;
}
.error_page #contents {
    background: inherit;

}


/****** Effect Setting ********/

/* Overlay */
.overlay {
    /* shadow layer visible when navigation is active */
    position: fixed;
    z-index: 2;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    cursor: pointer;
    background-color: rgba(0,0,0, 0.5);
    visibility: hidden;
    opacity: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s, -webkit-transform 0.3s 0s;
    -moz-transition: opacity 0.3s 0s, visibility 0s 0.3s, -moz-transform 0.3s 0s;
    transition: opacity 0.3s 0s, visibility 0s 0.3s, transform 0.3s 0s;
}
.overlay.is-visible {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 0.3s 0s, visibility 0s 0s, -webkit-transform 0.3s 0s;
    -moz-transition: opacity 0.3s 0s, visibility 0s 0s, -moz-transform 0.3s 0s;
    transition: opacity 0.3s 0s, visibility 0s 0s, transform 0.3s 0s;
}

/* modal */

.modal-header .close {
    font-size: 22px;
    font-size: 2.2rem;
}
.modal-content {
    background-color: #F3F3F3;
}
.modal-body .form-control {
    width: 100%;
}
.modal-body .quantity {
    width: 50%;
    float: right;
    text-align: right;
    padding: 16px 0;
    font-size: 16px;
    font-size: 1.6rem;
}
.modal-body .quantity dd input {
    text-align: right;
}
.modal-body .classcategory_list li {
    margin-top: 16px;
}
.modal-body .classcategory_list li:first-child {
    margin-top: 0;
}
.modal-body .item_price {
    margin: 0;
    clear: both;
    text-align: right;
    font-size: 16px;
    font-size: 1.6rem;
}
.modal-body .item_price .small {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: 5px;
}
.modal-footer {
    padding: 16px 0;
    margin: 0 16px;
}
.modal-footer .btn_area {
    padding-bottom: 0;
}
.modal-footer .btn_area li:last-child {
    padding-left: 0;
}
.modal-footer .btn_area button {
    font-size: 16px;
    font-size: 1.6rem;
    height: 56px;
    line-height: 56px;
    vertical-align: middle;
    padding-top: 0;
    padding-bottom: 0;
}
.modal-footer .btn_area .btn_icon .cb {
    display: inline-block;
    font-size: 30px;
    font-size: 3.0rem;
    height: 54px;
    line-height: 54px;
    vertical-align: middle;
    position: relative;
    top: -2px;
}


/****** Each Page Setting ********/

/* Item List Page
------------------------------------------- */

/* Item Detail Page
------------------------------------------- */

/* Cart Page
------------------------------------------- */

.cart_page .dl_table {
    margin: 0 0 16px;
}
.cart_page .dl_table dt {
    font-weight: bold;
    margin-bottom: 5px;
}
.cart_page .form_terms_link {
    margin-bottom: 0;
}
#shopping-form .btn {
    min-width: auto;
    padding: 10px 16px;
}
#shopping_confirm .cart_item.table {
    border-top: 0 none;
}
#shopping_confirm .cart_item .item_box .table {
    width:100%;
}
#shopping_confirm .total_box {
    margin-top: 16px;
    background: #F3F3F3;
    padding: 8px;
}
#shopping_confirm .total_box dl {
    margin-left: 0;
}
#shopping_confirm .total_box dl dt {
    font-weight: normal;
    text-align: left;
}
#shopping_confirm .total_box .total_amount {
    border-top: 1px dotted #ccc;
    text-align: right;
}
#shopping_confirm .total_box .total_amount {
    margin-top: 8px;
}
#shopping_confirm .total_box .total_amount p {
    margin: 8px 0 0;
}
#shopping_confirm .total_box .total_amount p.total_price {
    font-weight: bold;
}
#shopping_confirm .total_box .total_amount p.total_price strong {
    font-size: 16px;
    font-size: 1.6rem;
    margin-left: 16px;
}
#shopping_confirm .total_box .total_amount p.total_price strong .small {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: 8px;
}
#shopping_confirm .total_box .total_amount p.total_point {
    margin: 4px 0 0;
}
#shopping_confirm .cart_item .item_box .table .item_name {
    margin-bottom: 0;
}
#shopping_confirm .cart_item .item_box .table .item_photo {
    max-width: 96px;
}
#shopping_confirm .cart_item .item_box .table .item_price {
    font-weight: normal;
    display: inline;
    margin-right: 16px;
}
#shopping_confirm .cart_item .item_box .table .item_subtotal {
    display: inline;
}
#shopping_confirm label {
    font-weight: bold;
}

#shopping_confirm .heading02 {
    margin-top: 24px;
    font-weight: bold;
    background: #EFEFEF;
    padding: 8px 12px;
}
#shopping_confirm .column {
    position: relative;
}
.heading02 + .column .btn_edit {
    position: absolute;
    right: 0; top: 0;
}

#deliveradd_input .dl_table {
    border-top: 0 none;
}

.shipping_multiple_table {
    background-color: #f4f4f4;
}

.shipping_multiple_table .item_box > .td {
    border-bottom: none;
}

.shipping_multiple_table .item_box .item_photo {
    max-width: 200px;
    min-width: 200px;
    padding-right: 200px;
}

.shipping_item .quantity {
    width: 100px;
}


.use_point {
    text-align: center;
    margin: 16px 0;
}
.use_point input {
    text-align: right;
    width: 10%;
    min-width: 130px;
}
.use_point .text_accent {
    margin: 0 5px;
}

.multiple_column {
    padding-bottom: 16px;
}
.multiple_column .item_box {
    background: #F3F3F3;
}
.multiple_column .table.item_box .td {
    vertical-align: middle;
}
.multiple_column .table.item_box .tbody .item_detail {
    padding: 8px 0;
    text-align: left;
}
.multiple_column .item_box .item_photo {
    padding: 8px;
    width: 22%;
    margin-bottom: 0;
    max-width: none;
    min-width: 100px;
}
.multiple_column .item_box .item_detail .item_name {
    font-weight: bold;
}
.multiple_column .item_box .item_detail .item_price {
    font-weight: normal;
    margin: 4px 0 8px;
}
.multiple_column .form-group {
    margin: 8px 10px 0 0;
}
.multiple_column .item_quantity input {
    width: 100px;
}

.complete_message {
    text-align: center;
}
.complete_message .heading01 {
    font-size: 24px;
    font-size: 2.4rem;
}



/* MyPage
------------------------------------------- */

.mypage .message {
    border-bottom: 1px dotted #ccc;
    margin-bottom: 11px;
}
.mypage #item_list .product_item {
    padding-bottom: 8px;
}
.mypage #item_list .item_name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 2px;
}
.mypage #item_list .btn_circle span {
    position: relative;
    top: 3px;
}

.mypage .not_required {
    margin-top: 40px;
}

.mypage .title_hint {
    margin: 16px 0 0;
}
.mypage .title_hint + .form-group {
    padding-top: 4px;
}


/* Registration Page
------------------------------------------- */

.registration_page .not_required {
    margin-top: 16px;
}

.registration_page .title_hint {
    margin: 16px 0 0;
}
.registration_page .title_hint + .form-group {
    padding-top: 4px;
}
.registration_page .dl_table {
    margin: 0 0 16px;
}
.registration_page .dl_table dt {
    margin-bottom: 5px;
}
.registration_page .dl_table dt label {
    font-weight: bold;
}
.registration_page .form_terms_link {
    margin-bottom: 0;
}


/* Other Page
------------------------------------------- */


/* Login Page */

#login_box {
    padding-bottom: 32px;
}
#login_box .column {
    background: #F3F4F4;
    height: 100%;
    padding: 8px 8px 5px;
    margin-bottom: 16px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#login_box .column p {
    margin-top: 0;
    margin-bottom: 0;
}
#login_box .column  .icon {
    text-align: center;
    font-size: 70px;
    color: #e7e7e7;
}
#login_box .column  .icon svg {
    vertical-align: middle;
}
#login_box .column .form-group {
    padding: 8px 0 8px 10%;
}
#login_box .column input[type="text"],
#login_box .column input[type="email"],
#login_box .column input[type="password"]{
    width: 90%;
}
#login_box .column .form-group label {
    display: inline-block;
    padding	: 5px 0;
}
#login_box .column .btn_area {
    padding: 8px 10%;
}
#login_box .column .btn_area ul {
    margin-top: 8px;
}

#login_box .column .message {
    padding: 0 10% 0;
    text-align: left;
}
#login_box .btn_area .btn {
    height: 45px;
    line-height: 45px;
}

    /* Forgot Page */

#forgot_page .column {
    background: #F3F4F4;
    padding: 16px;
    margin-bottom: 16px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#forgot_page .column .form-group {
    padding-top: 8px;
}
#forgot_page .form-group.input_name input[type="text"] {
    float: left;
    width: 49%;
}
#forgot_page .column p {
    margin: 0;
}
#forgot_page .column .btn_area {
    padding-top: 8px;
}
#forgot_page .column .btn_area p {
    margin: 0;
}
#forgot_page .column h2 {
    margin: 0 0 8px;
}

/* Contact Page */

#contact_contents {
    height: 100px;
}


/*	module
============================ */

.no-padding {
     padding: 0;
 }
.no-padding-bottom {
    padding-bottom: 0 !important;
}
.no-margin {
    margin: 0 !important;
}
.is-padding {
    padding-left: 16px !important;
    padding-right: 16px !important;
}
.no-border-bottom {
    border-bottom: 0 none !important;
}
button.no-style {
    border: 0 none;
    background: none;
    padding: 0; margin: 0;
    text-shadow: none;
    box-shadow: none;
}
.text_accent {
    font-weight: bold;
}

/*	color setting
============================ */

/* text */
.text-default {
    color: #525263;
}
a.text-default:hover {
    color: #9797a1;
}
.text-primary {
    color: #DE5D50;
}
a.text-primary:hover {
    color: #e57d73;
}
.text-success {
    color: #18A689;
}
a.text-success:hover {
    color: #0D8969;
}
.text-info {
    color: #31708f;
}
a.text-info:hover {
    color: #245269;
}
.text-warning {
    color: #9A947E;
}
a.text-warning:hover {
    color: #AEA998;
}
.text-danger {
    color: #DE5D50;
}
a.text-danger:hover {
    color: #CF3F34;
}

/* bg */

.bg-default {
    color: #fff;
    background-color: #525263;
}
a.bg-default:hover {
    background-color: #9797a1;
}
.bg-primary {
    color: #fff;
    background-color: #DE5D50;
}
a.bg-primary:hover {
    background-color: #e57d73;
}
.bg-primary-border {
    color: #DE5D50;
    border: 2px solid #DE5D50;
    background: #fff;
}
a.bg-primary-border:hover {
    border: 2px solid #DE5D50;
    background: #FDF6F6;
}
.bg-success {
    background-color: #dff0d8;
}
a.bg-success:hover {
    background-color: #c1e2b3;
}
.bg-success-border {
    color: #5CB1B1;
    border: 2px solid #5CB1B1;
    background: #fff;
}
a.bg-success-border:hover {
    border: 2px solid #5CB1B1;
    background: #EEF7F7;
}
.bg-info {
    background-color: #d9edf7;
}
a.bg-info:hover {
    background-color: #afd9ee;
}
.bg-warning {
    background-color: #fcf8e3;
}
a.bg-warning:hover {
    background-color: #f7ecb5;
}
.bg-danger {
    color: #fff;
    background-color: #F99;
}
a.bg-danger:hover {
    background-color: #FF8D8D;
}

/* btn */
.btn-default {
    color: #525263;
    background-color: #F5F7F8;
    border-color: #D7DADD;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
    color: #525263;
    background-color: #EEF1F3;
    border-color: #D7DADD;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
    background-image: none;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
    background-color: #F5F7F8;
    border-color: #D7DADD;
    color: #525263;
}
.btn-default .badge {
    color: #fff;
    background-color: #525263;
}
.btn-primary {
    color: #fff;
    background-color: #DE5D50;
    border-color: #DE5D50;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
    color: #fff;
    background-color: #D85145;
    border-color: #D85145;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
    background-image: none;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
    background-color: #DE5D50;
    border-color: #DE5D50;
}
.btn-primary .badge {
    color: #fff;
    background-color: #DE5D50;
}
.btn-primary-border {
    color: #DE5D50;
    background-color: #fff;
    border-color: #DE5D50;
    border-width: 2px;
}
.btn-primary-border:hover,
.btn-primary-border:focus,
.btn-primary-border:active,
.btn-primary-border.active,
.open > .dropdown-toggle.btn-primary-border {
    color: #DE5D50;
    background-color: #FDF6F6;
    border-color: #DE5D50;
}
.btn-primary-border:active,
.btn-primary-border.active,
.open > .dropdown-toggle.btn-primary-border {
    background-image: none;
}
.btn-primary-border.disabled,
.btn-primary-border[disabled],
fieldset[disabled] .btn-primary-border,
.btn-primary-border.disabled:hover,
.btn-primary-border[disabled]:hover,
fieldset[disabled] .btn-primary-border:hover,
.btn-primary-border.disabled:focus,
.btn-primary-border[disabled]:focus,
fieldset[disabled] .btn-primary-border:focus,
.btn-primary-border.disabled:active,
.btn-primary-border[disabled]:active,
fieldset[disabled] .btn-primary-border:active,
.btn-primary-border.disabled.active,
.btn-primary-border[disabled].active,
fieldset[disabled] .btn-primary-border.active {
    background-color: #fff;
    border-color: #DE5D50;
}

.btn-success {
    color: #fff;
    background-color: #5CB1B1;
    border-color: #5CB1B1;
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
    color: #fff;
    background-color: #50A6A6;
    border-color: #50A6A6;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
    background-image: none;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
    background-color: #5CB1B1;
    border-color: #5CB1B1;
}
.btn-success .badge {
    color: #5CB1B1;
    background-color: #fff;
}

.btn-success-border {
    color: #5CB1B1;
    background-color: #fff;
    border-color: #5CB1B1;
}
.btn-success-border:hover,
.btn-success-border:focus,
.btn-success-border:active,
.btn-success-border.active,
.open > .dropdown-toggle.btn-primary-border {
    color: #5CB1B1;
    background-color: #EEF7F7;
    border-color: #5CB1B1;
    border-width: 2px;
}
.btn-success-border:active,
.btn-success-border.active,
.open > .dropdown-toggle.btn-success-border {
    background-image: none;
}
.btn-success-border.disabled,
.btn-success-border[disabled],
fieldset[disabled] .btn-success-border,
.btn-success-border.disabled:hover,
.btn-success-border[disabled]:hover,
fieldset[disabled] .btn-success-border:hover,
.btn-success-border.disabled:focus,
.btn-success-border[disabled]:focus,
fieldset[disabled] .btn-success-border:focus,
.btn-success-border.disabled:active,
.btn-success-border[disabled]:active,
fieldset[disabled] .btn-success-border:active,
.btn-success-border.disabled.active,
.btn-success-border[disabled].active,
fieldset[disabled] .btn-success-border.active {
    background-color: #fff;
    border-color: #5CB1B1;
}

.btn-info {
    color: #fff;
    background-color: #525263;
    border-color: #525263;
}
.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
    color: #fff;
    background-color: #474757;
    border-color: #474757;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
    background-image: none;
}
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info,
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled:active,
.btn-info[disabled]:active,
fieldset[disabled] .btn-info:active,
.btn-info.disabled.active,
.btn-info[disabled].active,
fieldset[disabled] .btn-info.active {
    background-color: #525263;
    border-color: #525263;
}
.btn-info .badge {
    color: #525263;
    background-color: #fff;
}
.btn-warning {
    color: #fff;
    background-color: #f0ad4e;
    border-color: #f0ad4e;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
    color: #fff;
    background-color: #E99133;
    border-color: #E99133;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
    background-image: none;
}
.btn-warning.disabled,
.btn-warning[disabled],
fieldset[disabled] .btn-warning,
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled:active,
.btn-warning[disabled]:active,
fieldset[disabled] .btn-warning:active,
.btn-warning.disabled.active,
.btn-warning[disabled].active,
fieldset[disabled] .btn-warning.active {
    background-color: #f0ad4e;
    border-color: #f0ad4e;
}
.btn-warning .badge {
    color: #f0ad4e;
    background-color: #fff;
}
.btn-danger {
    color: #fff;
    background-color: #d9534f;
    border-color: #d9534f;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
    color: #fff;
    background-color: #CF3F34;
    border-color: #CF3F34;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
    background-image: none;
}
.btn-danger.disabled,
.btn-danger[disabled],
fieldset[disabled] .btn-danger,
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:active,
fieldset[disabled] .btn-danger:active,
.btn-danger.disabled.active,
.btn-danger[disabled].active,
fieldset[disabled] .btn-danger.active {
    background-color: #d9534f;
    border-color: #d43f3a;
}
.btn-danger .badge {
    color: #d9534f;
    background-color: #fff;
}
.btn-link {
    font-weight: normal;
    color: #DE5D50;
    cursor: pointer;
    border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
    border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
    color: #2a6496;
    text-decoration: underline;
    background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
    color: #777;
    text-decoration: none;
}

/* label */
.label-default {
    background-color: #777;
}
.label-default[href]:hover,
.label-default[href]:focus {
    background-color: #5e5e5e;
}
.label-primary {
    background-color: #DE5D50;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
    background-color: #e57d73;
}
.label-success {
    background-color: #18A689;
}
.label-success[href]:hover,
.label-success[href]:focus {
    background-color: #0D8969;
}
.label-info {
    background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
    background-color: #3DA8CF;
}
.label-warning {
    background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
    background-color: #E99133;
}
.label-danger {
    background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
    background-color: #CF3F34;
}

/* panel */
.panel-primary {
    border-color: transparent;
}
.panel-primary > .panel-heading {
    color: #fff;
    background-color:#DE5D50;
    border-color: transparent;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: transparent;
}
.panel-primary > .panel-heading .badge {
    color: #DE5D50;
    background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #DE5D50;
}
.panel-success {
    border-color: transparent;
}
.panel-success > .panel-heading {
    color: #18A689;
    background-color: #dff0d8;
    border-color: transparent;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: transparent;
}
.panel-success > .panel-heading .badge {
    color: #dff0d8;
    background-color: #18A689;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: transparent;
}
.panel-info {
    border-color: transparent;
}
.panel-info > .panel-heading {
    color: #fff;
    background-color: #42B3E5;
    border-color: transparent;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: transparent;
}
.panel-info > .panel-heading .badge {
    color: #fff;
    background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: transparent;
}
.panel-warning {
    border-color: transparent;
}
.panel-warning > .panel-heading {
    color: #fff;
    background-color: #fcf8e3;
    border-color: transparent;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: transparent;
}
.panel-warning > .panel-heading .badge {
    color: #fff;
    background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: transparent;
}
.panel-danger {
    border-color: #ebccd1;
}
.panel-danger > .panel-heading {
    color: #fff;
    background-color: #DE5D50;
    border-color: transparent;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: transparent;
}
.panel-danger > .panel-heading .badge {
    color: #fff;
    background-color: #DE5D50;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: transparent;
}

/* alert */

.alert-success {
    color:#fff;
    background-color:#18a689;
    border-color: transparent;
}
.alert-success hr {
    border-color: transparent;
}
.alert-success .alert-link {
    color:#fff
}
.alert-info {
    color:#fff;
    background-color:#42B3E5;
    border-color: transparent;
}
.alert-info hr {
    border-top-color:#a6e1ec
}
.alert-info .alert-link {
    color:#fff
}
.alert-warning {
    color:#fff;
    background-color:#f0ad4e;
    border-color: transparent;
}
.alert-warning hr {
    border-color: transparent;
}
.alert-warning .alert-link {
    color:#fff
}
.alert-danger {
    color:#fff;
    background-color:#DE5D50;
    border-color: transparent;
}
.alert-danger hr {
    border-color: transparent;
}
.alert-danger .alert-link {
    color:#fff
}

.related_product_hr {
    margin: 30px 0 45px;
}


/******************************
	Media Query
*******************************/

@media only screen and (max-width: 767px) {

    /* --------- common ---------- */

    .drawer-open #contents, .drawer-open #header, .drawer-open #footer, .drawer-open .pagetop {
        /*-webkit-transform: translateX(-260px);*/
        /*-moz-transform: translateX(-260px);*/
        /*-ms-transform: translateX(-260px);*/
        /*-o-transform: translateX(-260px);*/
        /*transform: translateX(-260px);*/
    }

    .sp{display: block !important;}
    .pc{display: none !important;}
    span.sp{display: inline !important;}

    /****** Header Setting ********/


    /****** Side Setting ********/

    .drawer {
        height: 0;
        visibility: hidden;
        -webkit-transition: visibility 0s 0.3s;
        -moz-transition: visibility 0s 0.3s;
        transition: visibility 0s 0.3s;
    }
    .drawer-open .drawer {
        height: 100%;
        visibility: visible;
        -webkit-transition: visibility 0s 0s;
        -moz-transition: visibility 0s 0s;
        transition: visibility 0s 0s;
    }
    .category-nav a {
        will-change: transform, opacity;
    }


    /****** Effect Setting ********/

    /* Overlay */
    .overlay.is-visible {
        /*-webkit-transform: translateX(-260px);*/
        /*-moz-transform: translateX(-260px);*/
        /*-ms-transform: translateX(-260px);*/
        /*-o-transform: translateX(-260px);*/
        /*transform: translateX(-260px);*/
    }
    .overlay.is-visible.cart-is-visible {
        /*-webkit-transform: translateX(0);*/
        /*-moz-transform: translateX(0);*/
        /*-ms-transform: translateX(0);*/
        /*-o-transform: translateX(0);*/
        /*transform: translateX(0);*/
    }

    /* My page address */
    #delivery_address_list div.is-edit p.btn_edit {
        top: 30%;
    }

    /* boostrap row */
    .row-0-sp {
        margin-left: 0px;
        margin-right: 0px;
    }
    .row-0-sp > div {
        padding-right: 0px;
        padding-left: 0px;
    }
    .row-10-sp {
        margin-left: -5px;
        margin-right: -5px;
    }
    .row-10-sp > div {
        padding-right: 5px;
        padding-left: 5px;
    }
    .row-20-sp {
        margin-left: -10px;
        margin-right: -10px;
    }
    .row-20-sp > div {
        padding-right: 10px;
        padding-left: 10px;
    }
    .row-30-sp {
        margin-left: -15px;
        margin-right: -15px;
    }
    .row-30-sp > div {
        padding-right: 15px;
        padding-left: 15px;
    }
    .row-40-sp {
        margin-left: -20px;
        margin-right: -20px;
    }
    .row-40-sp > div {
        padding-right: 20px;
        padding-left: 20px;
    }
}

@media only screen and (min-width: 768px) {

    /* --------- common ---------- */

    .container-fluid {
        padding-left: 0;
        padding-right: 0;
    }
    .row {
        margin-left: -16px;
        margin-right: -16px;
        padding-bottom: 16px;
    }
    /* boostrap row */
    .row-0 {
        margin-left: 0px;
        margin-right: 0px;
    }
    .row-0 > div {
        padding-right: 0px;
        padding-left: 0px;
    }
    .row-10 {
        margin-left: -5px;
        margin-right: -5px;
    }
    .row-10 > div {
        padding-right: 5px;
        padding-left: 5px;
    }
    .row-20 {
        margin-left: -10px;
        margin-right: -10px;
    }
    .row-20 > div {
        padding-right: 10px;
        padding-left: 10px;
    }
    .row-30 {
        margin-left: -15px;
        margin-right: -15px;
    }
    .row-30 > div {
        padding-right: 15px;
        padding-left: 15px;
    }
    .row-40 {
        margin-left: -20px;
        margin-right: -20px;
    }
    .row-40 > div {
        padding-right: 20px;
        padding-left: 20px;
    }
    .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
        padding-left: 16px;
        padding-right: 16px;
    }

    .sp{display: none !important;}
    .pc{display: block !important;}
    span.pc{display: inline !important;}


    /* --------------------------------
        Parts
    -------------------------------- */

    /* heading */

    h2 {
        font-size: 24px;
        font-size: 2.4rem;
    }
    .page-heading {
        font-size: 32px;
        font-size: 3.2rem;
        border-bottom-style: solid;
        border-top: 0 none;
        padding: 16px 0 12px;
        margin: 0 16px 48px;
    }
    .heading01,
    .heading03 {
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: bold;
    }
    .heading02 {
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: bold;
        background: #EFEFEF;
        padding: 8px 12px;
    }
    .heading05 {
        font-size: 16px;
        font-size: 1.6rem;
    }

    /* btn */

    .btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333}
    .btn-sm{padding:8px 10px;font-size:14px;line-height:1.5}
    .btn-xs{padding:5px 8px;font-size:12px;line-height:1.5}

    /* badge */

    .badge {
        font-size:12px;
        font-size:1.2rem;
    }

    /* tableStyle */

    div.table .thead {
        display: table-header-group;
    }
    div.table ol {
        display: table-row;
        margin: 0;
    }
    div.table ol li {
        display: table-cell;
        padding: 16px;
        text-align: center;
        background: #F4F3F0;
        overflow-x:hidden;
        font-weight: bold;
    }
    div.table .tbody .tr > .td {
        padding: 16px;
    }

    /* tableish */

    .tableish {
        display: table;
        width: 100%;
    }
    .tableish .thead {
        display: table-header-group;
    }
    .tableish .tbody {
        display: table-row-group;
    }
    .tableish .tr {
        display: table-row;
    }
    .tableish .th,
    .tableish .td {
        display: table-cell;
        vertical-align: top;
    }

    /* dl-table */

    .dl_table {
        display: table;
        width: 100%;
    }
    .dl_table dl {
        display: table-row;
        border: 0 none;
    }
    .dl_table dt,
    .dl_table dd {
        display: table-cell;
        border-bottom: 1px dotted #ccc;
        padding: 16px 0;
    }
    .dl_table dt {
        width: 30%;
    }

    .dl_table dd {
        padding: 16px;
    }
    .dl_table dd .form-group {
        padding-top: 16px;
    }
    .dl_table .zip-search {
        margin-top: 16px;
    }

    /* pagination */

    .pagination {
        width: 100%;
    }


    /* topicpath */

    #topicpath {
        padding: 24px 16px;
        border: 0 none;
    }
    #topicpath ol {
        padding-top: 0.7em;
        padding-bottom: 0.7em;
        border-bottom: 1px solid #ccc;
    }
    #topicpath li {
        font-size: 1.5rem;
    }
    #topicpath a {
        color: #8d7c7c;
        background-color: #fbfaf4;
    }
    #topicpath a:hover {
        color: #2a1b1b;
        border-bottom: solid 1px #b5b3af;
    }

    /* intro */
    .intro {
        margin: 0;
        padding-top: 0.5em;
        padding-bottom: 28px;
    }

    /* message */
    .heading04 + .message {
        padding: 0;
    }
    .message .errormsg {
        padding: 16px;
    }


    /* flowline */

    .flowline {
        margin: 0;
        border-bottom: 0 none;
    }
    .flowline ul::before {
        top: 20px;
    }
    .flowline.step3 ul {
        max-width: 450px;
    }
    .flowline.step4 ul {
        max-width: 550px;
    }
    .flowline ul li {
        font-size: 14px;
        font-size: 1.4rem;
    }
    .flowline li .flow_number {
        line-height: 42px;
        width: 42px; height: 42px;
        font-size: 20px;
        font-size: 2rem;
    }

    /* .cart .item_box */

    #cart .inner {
        padding: 0 16px;
    }
    .cart .item_box > div,
    .cart .item_box > dl {
        padding: 16px 0;
    }
    .cart .item_box .item_photo {
        padding: 16px 8px 16px 0;
    }
    .cart .item_box .icon_edit {
        right: -7px; top: 10px;
    }

    .cart .btn_area {
        padding: 16px 0 8px;
    }

    /* error_box */
    .error_box {
        margin-bottom: 48px;
    }


    /****** Layout ********/


    /* header */
    .header_logo_area {
        position: relative;
    }

    #contents {
        min-height: 100%;
        z-index: 2;
    }


    #side_left {
        float: left;
        width: 250px;
        margin-right: 30px;
    }
    #side_right {
        float: right;
        width: 25%;
        padding-left: 16px;
    }

    /* -- main_left (side_right only) -- */

    /* main */
    .theme_side_right #main {
        width: auto;
        float: left;
    }

    /* -- main_right (side_left only) -- */

    /* main */
    .theme_side_left #main {
        width: auto;
        overflow:hidden;
        margin: 0;
    }

    /* -- main_only -- */

    /* main */
    .theme_main_only #main {
        width: 100%;
    }


    /* -- main_left_right (side_left & side_right) -- */

    /* main */
    .theme_side_both #main {
        width: 50%;
        float: left;
    }

    /* category_nav */
    #category {
        clear: both;
    }


    /****** Header Setting ********/

    #header {
        height: auto;
    }
    #header:after {
        content: "";
        display: table;
        clear: both;
    }
    #header .copy {
        font-size: 16px;
        font-size: 1.6rem;
    }
    .header_logo_area .header_logo {
        font-size: 40px;
        font-size: 4rem;
        margin: 0;
    }

    #header .header_bottom_area {
        clear: both;
    }

    /* header-buttons */

    .header-buttons {
        top: 18px;
        right: 4em;
    }

    /* cart_area */

    #header #cart_area {
        width: auto;
    }
    #header #cart_area p.cart-trigger a {
        position: relative;
        float: left;
    }
    #header #cart_area p.cart-trigger .cb-shopping-cart {
        position: relative;
        left: 9px;
    }
    #header #cart_area p.cart-trigger .badge {
        position: relative;
        left: 15px; top: 0;
    }
    #header #cart_area .cart_price {
        float: right;
        height: 44px;
        line-height: 44px;
        vertical-align: middle;
        margin-right: 16px;
    }

    /* search_area */

    #header .search .input_search {
        float: left;
    }
    .search select option {
        max-width: 246px;
    }




    /****** Side Setting ********/

    #btn_menu, #btn_cart {
        display: none;
    }
    .drawer {
        position: static;
        height: auto;
        width: auto;
        margin: 0 auto;
        overflow: visible;
        background: transparent;
        text-align: center;
    }
    .drawer:after {
        content: "";
        display: table;
        clear: both;
    }


    /*	Category navigation
    --------------------------- */

    /* category-nav */


    /* ----- category_nav in header ---- */

    #header #category {
        padding: 20px 0 0;
    }

    /* category-nav */

    #header .category-nav {
        border-top: 1px solid #D9D9D9;
        border-bottom: 1px solid #D9D9D9;
        text-align: center;
    }

    #header .category-nav .toggle {
        display: none;
    }
    #header .category-nav > li {
        margin: 0;
    }
    #header .category-nav li ul {
        display: block;
    }

    #header .category-nav li {
        position: relative;
        display: inline-block;
    }
    #header .category-nav > li > a {
        padding: 0 1em;
        height: 55px;
        line-height: 55px;
        border-bottom: none;
    }
    #header .category-nav li a {
        display: block;
    }
    #header .category-nav li ul {
        position: absolute;
        z-index: 100;
        top: 100%;
        left: 0;
        width: 200px;
        box-shadow: 1px 1px 2px rgba(0,0,0,0.1);
    }
    #header .category-nav li ul li {
        float: left;
        overflow: hidden;
        width: 100%;
        height: 0;
        transition: .2s;
    }
    #header .category-nav li ul li a {
        text-align: left;
    }
    #header .category-nav > li:hover > a {}
    #header .category-nav > li:hover li:hover > a {  background: rgba(204, 204, 204, 0.1)}
    #header .category-nav > li:hover > ul > li {
        overflow: visible;
        height: 50px;
    }
    #header .category-nav li ul li ul {
        top: 0;
        left: 100%;
    }
    #header .category-nav li:last-child ul li ul {
        left: 100%;
        width: 100%;
    }
    #header .category-nav li ul li ul:before {
        position: absolute;
        content: ">";
        top: 13px;
        left: -15px;
        width: 0;
        height: 0;
    }
    #header .category-nav li:last-child ul li ul:before {
        position: absolute;
        content: ">";
        top: 13px;
        left: -15px;
        width: 0;
        height: 0;
        /*
        content: "<";
        top: 13px;
        left: 200%;
        margin-left: -15px;
        */
    }
    #header .category-nav li ul li:hover > ul > li {
        overflow: visible;
        height: 50px;
    }
    #header .category-nav li ul li ul li a {}
    #header .category-nav li:hover ul li ul li a:hover {  background: rgba(204, 204, 204, 0.1)}

    #header .category-nav ul > li > a,
    #header .category-nav ul > li > ul > li > a,
    #header .category-nav ul > li > ul > li > ul > li a {
        padding-left: 10px;
    }



    /* ----- category_nav in side ---- */

    /* category-nav */

    .side .category-nav > li {
        display: block;
        margin: 0;
    }
    .side .category-nav li > a {
        width: 100%;
    }

    .side .category-nav > ul ul {
        width: 100%;
    }
    .side .category-nav > ul {
        width: 100%;
    }
    .side .category-nav > ul > li {
        width: 100%;
    }
    .side .category-nav > ul > li a {
        padding-left: 10px;
    }


    /* newslist */

    .newslist .heading01 {
        padding: 16px;
        text-align: left;
    }
    .newslist dt {
        padding: 20px 0;
        border-bottom: 1px solid #eadfd8;
    }
    .newslist dt .angle-circle {
        top: 14px;
        width: 25px; height: 25px;
    }
    .newslist dt .cb {
        font-size: 20px;
        top: 0; left: 3px;
    }
    .newslist dt .date {
        float: left;
        width: 6em;
        color: #ae001f;
    }
    .newslist dt .news_title {
        padding-left: 7em;
        padding-right: 30px;
    }
    .newslist dd {
        margin: 0 16px 16px;
    }

    /* infolist */
    .infolist .heading01 {
        padding: 16px;
        text-align: left;
    }
    .infolist dt {
        padding: 16px;
        border: none;
    }
    .infolist dt .angle-circle {
        top: 14px;
        width: 7em;
        height: 25px;
        font-weight: bold;
    }
    .infolist dt .news_title {
        display: block;
        width: 100%;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        padding-left: 0;
        padding-right: 10em;
    }
    .infolist dt.active .news_title {
        display: block;
        width: 100%;
        white-space: normal;
        text-overflow: ellipsis;
        overflow: auto;
    }
    .infolist dt .cb {
        font-size: 20px;
        top: 0; left: 3px;
    }
    .infolist dd {
        margin: 0 32px 16px 32px;
    }

    /* Item List Page
    ------------------------------------------- */

    .product_page .product_item {
        padding-bottom: 24px;
    }
    .item_photo {
        margin: 0 0 15px;
    }
    .item_comment {
        margin: 0 0 15px;
    }

    /* Item Detail Page
    ------------------------------------------- */

    #item_photo_area {
        padding-top: 0;
        padding-bottom: 0;
    }

    #item_detail_area .small {
        font-size: 12px;
        font-size: 1.2rem;
    }
    #item_detail_area .item_name {
        font-size: 32px;
        font-size: 3.2rem;
        margin-bottom: 10px;
    }
    #item_detail_area .item_detail .sale_price {
        font-size: 28px;
        font-size: 2.8rem;
    }
    #item_detail_area .item_detail .sale_price .small {
        font-size: 16px;
        font-size: 1.6rem;
    }
    #item_detail_area .item_detail .announce {
        padding: 14px 0;
    }
    #item_detail_area .item_detail .point {
        padding: 14px 0;
        border-top: 1px dotted #ccc;
    }
    #item_detail_area .item_detail .item_code {
        padding: 14px 0;
        border-top: 1px dotted #ccc;
    }
    #item_detail_area .item_detail .relative_cat {
        padding: 14px 0;
        border-top: 1px dotted #ccc;
        border-bottom: 1px dotted #ccc;
    }
    #item_detail_area .item_detail .item_comment {
        margin-top: 14px;
        margin-bottom: 14px;
    }
    .cart_area {
        padding-top: 14px;
    }
    .cart_area .classcategory_list li {
        margin-top: 16px;
    }
    .cart_area .classcategory_list li:first-child {
        margin-top: 8px;
    }
    .cart_area .classcategory_list li select {
        width: auto;
        width: 350px;
    }
    .cart_area .quantity {
        margin: 14px 0;
    }
    #item_detail .snsbtn_area {
        padding: 14px 0;
    }

    /* freearea */

    #item_detail .freearea p {
        margin-bottom: 40px;
    }
    #item_detail .freearea .heading01 {
        margin-bottom: 16px;
    }

    /* review_area */

    #review_area {
        border-top: none;
        padding-bottom: 16px;
    }
    #review_area dl {
        padding-bottom: 32px;
    }
    #review_area dl dt {
        padding: 16px;
    }
    #review_area dl dt .cb {
        position: absolute;
        right: 32px;
        top: 24px;
        font-size: 16px;
        font-size: 1.6rem;
    }
    #review_area dl dd {
        display: block;
        padding: 16px 0 0;
    }
    #review_area dl dd .review_btn {
        padding: 16px 0 0;
        text-align: center;
    }
    #review_area dl dd .review_btn a {
        width: auto;
        min-width: 350px;
    }
    #review_area .review_list {
        padding: 16px 0 0;
    }
    #review_area .review_list li {
        padding: 16px 0;
    }
    #review_area .review_list p {
        margin: 6px 0;
    }

    /* keyword_area */

    #keyword_area {
        border: 0 none;
    }
    #keyword_area .heading03 {
        border-top: 1px solid #E8E8E8;
        margin-top: 0;
        padding-top: 18px;
    }
    #keyword_area ul li a {
        font-size: 14px;
        font-size: 1.4rem;
    }
    #keyword_area .keyword_list {
        padding-bottom: 16px;
    }

    /* recommend_area */

    #recommend_area {
        border: 0 none;
    }
    #recommend_area .heading03 {
        border-top: 1px solid #E8E8E8;
        margin-top: 0;
        padding-top: 18px;
    }
    #recommend_area .carousel .product_item .btn_circle {
        right: 24px;
    }
    #recommend_area .carousel {
        margin-left: -16px;
        margin-right: -16px;
    }
    #recommend_area .carousel .product_item {
        padding: 0 16px;
    }
    #recommend_area .slick-next,
    #recommend_area .slick-prev {
        font-size: 37px;
        font-size: 3.7rem;
        top: -1.4em;
    }
    #recommend_area .slick-next {
        right: 14px;
    }
    #recommend_area .slick-prev {
        right: 74px;
    }

    #recommend_area .angle-circle {
        width: 35px; height: 35px;
        margin-top: 0;
    }
    #recommend_area .slick-prev .cb,
    #recommend_area .slick-next .cb {
        fill: #fff;
        position: relative;
        top: -4px; right: -2px;
        font-size: 25px;
        font-size: 2.5rem;
    }




    /* Cart Page
    ------------------------------------------- */

    .total_box {
        min-width: 256px;
        float: right;
        padding: 0;
    }
    .total_box dl {
        margin-left: 0;
    }
    .total_box .btn_group {
        padding: 16px 0;
    }
    .total_box .btn_group p {
        margin: 16px 0;
    }
    .total_box dl.total_price dt {
        padding-top: 0.3em;
    }
    .total_box dl.total_price dd {
        font-size: 24px;
        font-size: 2.4rem;
    }
    .cart_item {
        margin: 24px 0 16px;
        border-top: 0 none;
    }
    .cart_item .item_box .table {
        width:58.33333333%;
    }
    .cart_item .item_quantity::before {
        content: "";
    }
    .cart_item.table .tbody .tr > .item_quantity {
        text-align: center;
    }
    .cart_item .item_detail .item_subtotal {
        display: none;
    }
    .cart_item.table .tbody .tr div.item_subtotal {
        display: table-cell;
        text-align: right;
    }
    .cart_item .item_box .table .item_photo {
        min-width: 160px;
        padding-right: 16px;
    }
    .column p {
        margin: 16px 0;
    }
    .column .form-inline input,
    .column .form-inline select {
        margin-bottom: 16px;
    }

    div.table .tbody .addr_box .column {
        text-align: left;
        position: relative;
    }
    .addr_box .column.is-edit .btn_edit {
        top: 16px;
    }

    .multiple_column .item_box > div,
    .multiple_column .item_box > dl {
        padding: 16px 0;
        vertical-align: middle;
    }
    .multiple_column .item_box .item_photo {
        padding: 16px;
        max-width: 198px;
    }
    .multiple_column .item_box .item_detail .item_price {
        margin: 8px 0 16px;
    }
    .multiple_column .form-group {
        margin-top: 16px;
    }
    .complete_message {
        text-align: center;
    }
    .complete_message .heading01 {
        font-size: 32px;
        font-size: 3.2rem;
    }

    #confirm_side {
        top: 0;
    }

    /* payment_list */

    .payment_list .radio {
        display: inline;
        margin-right: 16px;
        vertical-align:middle;
    }
    .payment_list .radio input[type="radio"] {
        margin-right: 10px;
    }
    .payment_list li img {
        margin-top: 0;
        vertical-align:middle;
    }

    /* MyPage
    ------------------------------------------- */
    /* ナビゲーション項目が6件の場合
    .local_nav li {
        width: 16.66666667%
    }*/

    .local_nav li {
        width: 25%;
    }
    .local_nav.favorite li {
        width: 20%;
    }
    .historylist_column {
        border-top: 1px solid #ccc;
        margin: 0;
    }
    .historylist_column .order_date {
        font-size: 20px;
        font-size: 2rem;
        margin-top: 16px;
    }
    .historylist_column .table.item_box:first-child {
        border-top: 0 none;
    }
    .historylist_column .item_box .item_photo {
        min-width: 130px;
    }
    .historylist_column + .pagination {
        padding-top: 16px;
    }
    .unsubscribe_box h3 {
        font-size: 24px;
        font-size: 2.4rem;
    }
    .message_box h1 {
        font-size: 24px;
        font-size: 2.4rem;
    }

    /****** Footer Setting ********/

    #footer {
        padding-top: 32px;
        margin-top: 80px;
    }
    #footer ul {
    }
    #footer ul li {
        display: inline-block;
        margin: 0;
    }
    #footer ul li:first-child {
        margin-left: 0;
    }
    .footer_logo_area {
        margin-top: 88px;
    }
    .footer_logo_area .logo {
        font-size: 30px;
        font-size: 3rem;
        margin: 0;
    }
    .footer_logo_area .copyright {
        font-size: 16px;
        font-size: 1.6rem;
    }

    /****** Effect Setting ********/

    /* Overlay */
    .overlay {
        display: none;
    }

    /****** Each BlockParts Setting ********/

    /* Cart */
    .cart {
        height: 120px;
        top: 44px;
    }

    /* Search */

    /* ----- category_nav in header  ---- */

    #header #searchform select,
    #header #searchform input {
        float: left;
    }

    /* ----- category_nav in side ---- */

    .side #searchform select,
    .side #searchform input {
        float: none;
    }

    /* Member area */

    .member_link {
        margin: 0;
    }
    .member_link a {
        border: 0 none;
    }

    /* Menu area */

    .menu_link {
        margin: 0;
    }
    .menu_link a {
        border: 0 none;
    }

    /****** Each Page Setting ********/

    /* Item List Page
    ------------------------------------------- */

    /* Item Detail Page
    ------------------------------------------- */

    /* Cart Page
    ------------------------------------------- */

    .cart_page .dl_table {
        margin: 24px 0 32px;
    }
    .cart_page .dl_table dt {
        margin-bottom: 0;
    }
    #shopping_confirm .cart_item.table {
        border-top: 1px dotted #ccc;
    }
    #shopping_confirm .column .cart_item.table {
        margin-top: 0;
    }
    #shopping_confirm .total_box {
        margin-top: 24px;
        padding: 16px;
        min-width: 0;
        width: 100%;
        float: none;
    }
    #shopping_confirm .total_box dl {
        padding-top: 8px;
    }
    #shopping_confirm .total_box dl:first-child {
        padding-top: 0;
    }
    #shopping_confirm .total_box dl dt {
        font-size: 14px;
        font-size: 1.4rem;
    }
    #shopping_confirm .total_box .total_amount {
        margin-top: 16px;
    }
    #shopping_confirm .total_box .total_amount p.total_price {
        font-size: 14px;
        font-size: 1.4rem;
    }
    #shopping_confirm .total_box .total_amount p.total_price strong {
        font-size: 24px;
        font-size: 2.4rem;
    }
    #shopping_confirm .total_box .total_amount p.total_price strong .small {
        font-size: 14px;
        font-size: 1.4rem;
    }
    #shopping_confirm .heading02 {
        font-size: 20px;
        font-size: 2rem;
        margin-top: 32px;
    }
    #shopping_confirm .cart_item .item_box .table .item_photo {
        min-width: 80px;
        max-width: 96px;
    }
    #deliveradd_input .dl_table {
        border-top: 1px dotted #ccc;
    }

    /* MyPage
    ------------------------------------------- */
    .mypage .intro {
        padding-bottom: 16px;
    }
    .mypage #shopping_confirm .cart_item,
    .mypage #shopping_confirm .total_box {
        margin-top: 0;
    }
    .mypage #item_list .product_item {
        padding-bottom: 24px;
    }
    .mypage .title_hint {
        margin: 24px 0 0;
    }
    .mypage .title_hint + .form-group {
        padding-top: 8px;
    }

    /* My page address */
    #delivery_address_list div.is-edit p.btn_edit {
        top: 30%;
    }


    /* Registration Page
    ------------------------------------------- */

    .registration_page .dl_table {
        margin: 24px 0 32px;
    }


    /* Other Page
    ------------------------------------------- */


    /* Login Page */

    #login_box .column {
        padding: 16px 16px 40px;
    }
    #login_box .column p {
        margin-bottom: 8px;
    }
    #login_box .column .form-group {
        padding: 8px 0 8px 13%;
    }
    #login_box .column .btn_area p {
        float: left;
        width: 37%;
        min-width: 195px;
        margin-right: 3%;
    }
    #login_box .column .btn_area ul {
        margin-top: 0;
    }
    #login_box .column .btn_area button {
        width: 100%;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    #login_box .column .btn_area ul {
        float: left;
    }
    #login_box .column .btn_area ul li {
        margin: 4px 0;
    }

    #login_box .column input[type="text"],
    #login_box .column input[type="email"],
    #login_box .column input[type="password"]{
        width: 85%;
    }
    #login_box .column .btn_area,
    #login_box .column .message {
        padding: 8px 13%;
        margin: 0;
    }

    .login_cart .column .column_inner {
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    /* Forgot Page */

    #forgot_page .column {
        padding: 32px;
        margin-bottom: 16px;
    }
    #forgot_page .column .form-group {
        padding: 8px 0 8px 11%;
        width: 89%;
    }
    #forgot_page .column .btn_area {
        padding: 20px 0 0 21%;
        width: 79%;
    }
    #forgot_page .column .message {
        margin-bottom: 16px;
    }

    /* Error Page */

    .error_page .footer_logo_area {
        margin-top: 0;

    }
}

/* icon */
@font-face
{
    font-family: 'iconfont';

    src: url('../fonts/iconfont.woff2') format('woff2'), url('../fonts/iconfont.woff') format('woff');
}

[class^='icon-']::before,
[class*=' icon-']::before,
[class^='icon-']::after,
[class*=' icon-']::after
{
    font-family: 'iconfont';
    font-weight: normal;
    font-style: normal;
    font-variant: normal;

    position: relative;

    display: inline-block;
    /*  line-height: 1;*/

    vertical-align: middle;
    /* speak: none; only necessary if not using the private unicode range (firstGlyph option) */
    text-decoration: none;
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /*  top: -0.1em;*/
}

.icon-arrow-down::before
{
    content: '\F001';
}

.icon-arrow-right-bold::before
{
    content: '\F002';
}

.icon-arrow-right::before
{
    content: '\F003';
}

.icon-car::before
{
    content: '\F004';
}

.icon-cart::before
{
    content: '';
    background: url('../images/svg/cart.svg') no-repeat;
    width: 46px;
    height: 35px;
}

.icon-chevron-left::before
{
    content: '\F006';
}

.icon-chevron-right::before
{
    content: '\F007';
}

.icon-cross::before
{
    content: '\F008';
}

.icon-facebook::before
{
    content: '\F009';
}

.icon-fax::before
{
    content: '\F00A';
}

.icon-instagram::before
{
    content: '\F00B';
}

.icon-login::before
{
    content: '\F00C';
}

.icon-contact::before
{
    content: '\F00D';
}

.icon-note::before
{
    content: '\F00E';
}

.icon-pen::before
{
    content: '\F00F';
}

.icon-phone::before
{
    content: '\F010';
}

.icon-roses::before
{
    content: '\F011';
}

.icon-search::before
{
    content: '\F012';
}

.icon-star::before
{
    content: '\F013';
}

.icon-user::before
{
    content: '\F014';
}

.icon-arrow-right--after::after
{
    content: '\F003';
}

.icon-chevron-right--after::after
{
    content: '\F007';
}

/* カートボタン */
.p-header__content-info
{
    display: flex;

    align-items: center;
    order: 2;
}

/* p-phone
================================================== */
.p-phone
{
    padding: 0;
}
@media print, screen and (min-width: 1025px)
{
    .p-phone
    {
        display: flex;
        margin-left: auto;
        padding: 0;
        align-items: center;
    }
}
.p-phone__title
{
    font-size: 1.4rem;
    font-weight: bold;
    margin: 15px 0 0 0;
}

.p-phone__number
{
    font-family: arial;
    font-size: 3rem;
    font-weight: bold;
    padding-left: 30px;
    margin-bottom: -18px;
    margin-right: 20px;
    color: #333;
    background: url("../images/icon_header_tel.png") no-repeat;
    background-position-y: 8px;
}

.p-phone__description
{
    font-size: 1.4rem;
    font-weight: bold;
}

/* c-info-box */
.c-info-box
{
    display: flex;
    flex-direction: column;

    box-sizing: border-box;
    width: 300px;
    padding: 1.2rem 0;

    text-align: center;

    border: none;
    border-radius: 4px;
    background: #fff;

    height: 190px;
    box-shadow: 0 0 8px #eee;
    margin: 0 auto 15px;
}

.c-info-box .midium {
    font-size: 1.4rem;
    font-weight: bold;
}

.c-info-box .small {
    font-size: 1.2rem;
    font-weight: bold;
}

.c-info-box-tel strong {
    padding-top: 40px;
    background: url('../images/icon_footer_tel.png') no-repeat;
    background-position: center 0;
}

.c-info-box-fax strong {
    padding-top: 40px;
    background: url('../images/icon_fax.png') no-repeat;
    background-position: center -4px;
}

.c-info-box-form strong {
    padding-top: 40px;
    background: url('../images/icon_mail_red.png') no-repeat;
    background-position: center 15px;
}

.c-info-box-fax .btn-fax {
    margin-top: 15px;
}

@media only screen and  (min-width: 992px) {
    /* 横並びの時のマージン */
    .c-info-box-tel {
        margin-right: -30px;
    }
    .c-info-box-form {
        margin-left: -30px;
    }
}

.c-info-box-tel a.btn-darkred,
.c-info-box-form a.btn-darkred {
    color: white !important;
    background: url('../images/arrow_circle_red.png') no-repeat #690000;
    background-size: 15px 15px;
    background-position: right 12px center;
    margin: 15px 0;
}

.c-info-box-tel a.btn-darkred {
    padding: 5px;
}

.c-info-box .btn {
    min-width: 250px;
    padding: 8px 0;
    font-size: 1.5rem;
    border-radius: 0.1rem;
}

.p-inquire__number
{
    font-family: arial;
    font-size: 3.5rem;
    font-weight: bold;
}

.cricle_pink {
    color: #db3044;
}

.payment_info dd img {
    margin : 20px 0;
}

.p-about__table
{
    width: 100%;
    margin: 1.8rem 0 2.4rem;

    color: #333;
}
.p-about__table thead
{
    font-weight: 700;

    text-align: center;
}
.p-about__table thead tr
{
    display: flex;

    border-bottom: none;
}
.p-about__table tbody tr:first-child
{
    border-top: 1px solid #949494;
}
.p-about__table tr
{
    display: flex;

    padding: 1rem 0 1rem 2rem;

    border-bottom: 1px solid #d5d5d5;
}
.p-about__table th
{
    font-size: 1.4rem;

    width: 100%;
}
.p-about__table th:not(:first-child)
{
    text-align: right;
}
.p-about__table th:nth-child(2)
{
    margin-right: 1rem;
}
.p-about__table th span
{
    font-size: 1.2rem;
}
.p-about__table td
{
    font-size: 1.4rem;

    width: 100%;
}
.p-about__table td:nth-child(2)
{
    margin-right: 2rem;
}
.p-about__table td:not(:first-child)
{
    text-align: right;
}

/* p-header
================================================== */
.p-header__inquiry
{
    width: 125px;
    height: 70px;
    border: 1px solid #2a1b1b;
    text-align: center;
}

.p-header__cart,
.p-header__login,
.p-header__logout,
.p-header__entry,
.p-header__mypage
{
    float: left;
    width: 125px;
    height: 75px;
    text-align: center;
    top: 0;
    left: 0;
    border-left: 1px solid #a79191;
}

.p-header__inquiry a,
.p-header__cart a,
.p-header__login a,
.p-header__logout a,
.p-header__entry a,
.p-header__mypage a
{
    color: #2a1b1b;
    font-size: 1.4rem;
    font-weight: bold;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 45px;
}

.p-header__inquiry a:hover,
.p-header__cart a:hover,
.p-header__login a:hover,
.p-header__logout a:hover,
.p-header__entry a:hover,
.p-header__mypage a:hover {
    opacity: .8;
}

.p-header__inquiry a {
    padding-top: 35px;
    background: url("../images/icon_mail.png") no-repeat center 15px #f9f8f0;
}

.p-header__cart a {
    color: #fff;
    background: url("../images/icon_cart.png") no-repeat center 15px #be1629;
}

.p-header__login a {
    background: url("../images/icon_login.png") no-repeat center 15px;
}

.p-header__logout a {
    background: url("../images/icon_logout.png") no-repeat center 15px;
}

.p-header__entry a {
    background: url("../images/icon_member.png") no-repeat center 15px;
}

.p-header__mypage a {
    background: url("../images/icon_mypage.png") no-repeat center 15px;
}

.p-header__description
{
    font-size: 1.1rem;
    font-weight: 300;
    display: none;
    margin-bottom: 1rem;
    color: #666;
}
@media print, screen and (min-width: 768px)
{
    .p-header__description
    {
        display: block;
    }
}

.p-series__type {

    font-weight: 700;
    margin-bottom: 1rem;
    color: #333;
}

/* ie-11
================================================== */

@media all and (-ms-high-contrast: none) {
    *::-ms-backdrop, .l-wrapper {
        display: block;
    }
    .p-header__cart-warp {
        margin-left: auto;
    }
    .p-header__cart::before {
        font-size: 2rem;
    }
    .c-icon-menu__link::before {
        font-size: 2rem;
    }
    .c-external-list__link {
        height: auto;
        padding: 1rem 0;
    }
    .c-external-list__link::before {
        position: static;
    }
    .p-drawer__external .c-external-list__instagram span {
        margin-left: 1rem;
    }
    .p-drawer__external .c-external-list__facebook span {
        margin-left: 1rem;
    }
    .p-drawer__external .c-external-list__pen span {
        margin-left: 1rem;
    }
    .p-sidebar {
        display: block;
    }
    .p-thumbnail .slick-dots li {
        flex: 1;
    }
    .p-about__table {
        table-layout: fixed;
    }
    .p-about__table th {
        width: 200px;
    }
    .p-about__table td {
        width: 200px;
    }
    .l-main {
        flex: 1;
    }
    .c-table-price__tr :first-child.c-table-price__td {
        display: block;
    }
    .c-table-price__thaed {
        background: #fff1f2;
    }
    .c-table-price__thaed .c-table-price__th {
        min-width: 100px;
    }
}

/* main banner */
.main_banner {
    background: #690000;
    padding: 5px;
    text-align: center;
}

.main_banner a {
    color: white;
}

.main_banner h3 {
    color: white;
    font-size: 1.8rem;
    margin: 0;
}

.main_banner h3 span {
    font-size: 1.4rem;
    color: white;
}
.main_banner p {
    font-weight: bold;
    font-size: 1.4rem;
    color: #333;
    background: #ede066;
    margin: 0;
    padding: 5px;
}

/* content */
.content h2 {
    font-size: 27px;
    padding-bottom: 20px;
    border-bottom: solid 4px rgba(230, 0, 27, 0.16);
}
.content h3 {
    background: #FFF3F5;
    padding: 20px;
    font-size: 24px;
}
.content h4 {
    font-size: 22px;
    font-weight: bold;
    padding-bottom: 20px;
    border-bottom: solid 2px rgba(230, 0, 27, 0.16);
    margin-top: 0;
    margin-bottom: 0;
}
.content h5 {
    font-size: 22px;
}
.content h6 {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 0;
}

.content a {
    color: #ae001f;
}
.content a:hover {
    color: #f1d4d4;
}
.content a:active {
    color: #ae001f;
}
.content a:visited {
    color: #ae001f;
}

.content ul {
    list-style: disc;
    padding: 0.5em 0.5em 2em 2em;
}
.content ul li {
    padding: 0.5em 0;
}

ul.asterisk li {
    list-style-type: none;
    text-indent: -1em;
}
ul.asterisk li:before {
    display: inline;
    content: "※";
}

.link_button {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 1.4rem;
    font-weight: normal;
    width: auto;
    height: 30px;
    margin: 15px 10px 10px;
    letter-spacing: 0.1rem;
    background: url("../images/arrow_white.png") no-repeat center #690000;
    background-position: right 15px center;
    color: white !important;
}

.link_button:hover {
    filter: opacity(80%);
}

/* fotter entry */
.new_entry_banner_container {
    background: url("../images/footer_bk.png") no-repeat center;
    min-height: 260px;
    margin: 0;
    padding: 0;
}

.new_entry_banner_container .row {
    margin: 60px auto 0;
    padding-bottom: 0 !important;
    background: white;
    border-radius: 0.3rem
}

.new_entry_banner_container .row > div {
    padding-bottom: 0 !important;
}

.new_entry_banner {
    height: 260px;
    position: relative;
    text-align: center;
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
}

.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}

.inner-box {
    height: 140px;
}

.entry_banner_col_message {
    background: url("../images/icon_member_red.png") no-repeat 35px 50px;
    padding-right: 30px !important;
}

.entry_banner_col_message .inner-box {
    padding: 30px 0 0 90px;
}

.entry_sub_message {
    font-size: 1.6rem;
    color: #ae001f;
}

.entry_message {
    font-size: 3rem;
    font-weight: bold;
    padding-top: 5px;
}

.entry_banner_col_special {
    margin-left: -30px;
}

.entry_banner_col_special .inner-box {
    padding: 0 45px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.entry_banner_col_special dl {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-left: 10px;
}

.entry_banner_col_special dt {
    width: 15%;
    font-size: 1.4rem;
    color: #ae001f;
    padding-bottom: 10px;
}

.entry_banner_col_special dt span {
    font-family: Arial;
    padding-bottom: 5px;
    border-bottom: 1px solid #ae001f;
}

.entry_banner_col_special dd {
    width: 85%;
    font-size: 1.5rem;
    font-weight: bold;
}

.entry_banner_col_button {
    margin-left: -40px;
}

.entry_banner_col_button .inner-box {
    width: 150px;
    color: white;
    text-align: center;
    font-size: 1.7rem;
    font-weight: bold;
}

.entry_banner_col_button .inner-box a {
    display: block;
    width: 100%;
    height: 100%;
    color: white;
    padding-top: 35px;
    background: url("../images/arrow_circle_red.png") no-repeat center 90px #690000;
    background-size: 19px 19px;
    border-top-right-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}

.entry_banner_col_button .inner-box a:hover {
    opacity: 0.8;
}

.benefits ul {
    list-style: none;
}

.benefits li:nth-of-type(1) {
    padding-left: 110px;
    padding-bottom: 30px;
    line-height: 1.6em;
    background: url(../img/benefits1.png) no-repeat;
    background-size: 96px 62px;
}

.benefits li:nth-of-type(2) {
    padding-left: 110px;
    padding-bottom: 30px;
    line-height: 1.6em;
    background: url(../img/benefits2.png) no-repeat;
    background-size: 96px 62px;
}

/* about */
#help_about_box__nav .navi {
    display: inline-block;
    text-align: center;
    margin-bottom: 30px;
    width: 100%;
    padding: 0;
}

#help_about_box__nav .navi a {
    background: url("../images/icon_arrow2.png") no-repeat left center;
    padding-left: 15px;
}

#help_about_box__nav .navi a:hover {
    text-decoration: underline;
}

#help_about_box__nav .navi:nth-child(1) {
    max-width: 180px;
    border-right: 1px solid #e4d7cf;
}
#help_about_box__nav .navi:nth-child(2) {
    max-width: 235px;
    border-right: 1px solid #e4d7cf;
}
#help_about_box__nav .navi:nth-child(3) {
    max-width: 155px;
    border-right: 1px solid #e4d7cf;
}
#help_about_box__nav .navi:nth-child(4) {
    max-width: 175px;
    border-right: 1px solid #e4d7cf;
}
#help_about_box__nav .navi:nth-child(5) {
    max-width: 130px;
}

#thought h2,
#delivery h2,
#photos h2,
#school h2,
#access h2 {
    text-align: center;
    padding: 40px 0 20px 0;
    background: url('../images/footer_border.png') no-repeat center bottom;
    font-size: 3rem;
    margin-bottom: 70px;
}

#thought h3,
#delivery h3,
#photos h3,
#school h3,
#access h3 {
    font-size: 2.4rem;
}

#thought,
#delivery,
#photos,
#school,
#access {
    line-height: 1.6;
    font-size: 1.6rem;
}

#thought > .row {
    padding-left: 30px;
    padding-bottom: 100px;
}

#thought .col-left {
    padding-right: 30px;
}

#thought .col-right {
    padding: 0;
}


#thought .img_small02 {
    margin: 60px auto 0;
}

#thought .img_small05 {
    margin: 100px auto 0;
}

#thought .consultation {
    background: #f9f8f0;
    padding-bottom: 30px;
}

#thought .consultation h3 {
    color: #690000;
    font-size: 2.2rem;
    font-weight: normal;
}

#thought .consultation p {
    margin-top: 0;
}

#thought .consultation a {
    display: inline-block;
    width: 100%;
    height: 100%;
    color: white;
    background: url("../images/arrow_circle_red.png") no-repeat right 20px center #690000;
    background-size: 19px 19px;
    border-radius: 0.3rem;
    padding: 10px 45px 10px 10px;
    font-size: 1.6rem;
    font-weight: bold;
    word-break:break-word;
    max-width: 450px;
    text-align: center;
}

#thought .consultation > div:nth-child(3) {
    padding-right: 30px;
}

#delivery {
    background: #f4efeb;
}

#delivery h2 {
    margin-bottom: 20px;
}

.delivery_inner {
    padding: 0 50px 50px 50px;
}

.delivery_inner h3 > img {
    width: 40px !important;
    height: 40px !important;;
    margin-right: 0.5em;
}

#school p:last-of-type {
    margin-bottom: 60px;
}

.page_top {
    margin: 30px 0 100px;
    text-align: right;
}

.page_top a {
    background: url("../images/page_top.png") no-repeat left center;
    padding-left: 18px;
}

.page_top span {
    padding-bottom: 5px;
    border-bottom: 1px solid #e4d7cf;
}

#school .banner {
    background: #f9f8f0;
    border: 2px solid #e4d7cf;
    padding: 30px;
    text-align: center;
}

#school .banner .title {
    font-size: 2.2rem;
    font-weight: bold;
    color: #BE1629;
}

#school .banner .phone_number {
    font-family: Arial;
    font-size: 4rem;
    font-weight: bold;
    letter-spacing: 3px;
}

#school .banner .phone_number {
    margin-bottom: 16px;
}

#school .banner .phone_number:before {
    content:"";
    display:inline-block;
    width: 1.3em;
    height: 1em;
    background: url("../images/icon_tel.png") no-repeat;
    background-size:contain;
    vertical-align: middle;
}

.access_table {
    display: table;
    max-width: 550px;
    margin: 0 auto 40px;
}
.access_table dl {
    display: table-row;
    border: 0 none;
}
.access_table dt,
.access_table dd {
    display: table-cell;
    padding: 16px 0;
}
.access_table dt {
    width: 20%;
    font-weight: bold;
}

.access_table dd {
    padding: 16px;
}

#school .banner > .reception_hours {
    font-weight: bold;
}

.banner a.btn-darkred,
.banner a.btn-darkred {
    color: white !important;
    background: url('../images/arrow_circle_red.png') no-repeat #690000;
    background-size: 15px 15px;
    background-position: right 12px center;
    margin: 15px 0;
    font-size: 1.6rem;
    font-weight: normal;
}

.banner a.btn-darkred {
    padding: 5px;
}

.c-info-box .btn {
    min-width: 250px;
    padding: 8px 0;
    font-size: 1.5rem;
    border-radius: 0.1rem;
}


@media only screen and (max-width:1023px) {
    .p-header__cart-warp.pc {
        display: none !important;
    }

    .p-header__cart-warp.tablet {
        display: inline-block !important;
    }

    .p-header__cart-warp.tablet a {
        color: white !important;
    }
}

@media only screen and (min-width: 1024px) {
    .p-header__cart-warp.pc {
        display: block !important;
    }

    .p-header__cart-warp.tablet {
        display: none !important;
    }
}

/* sp style */
@media only screen and (max-width: 767px) {

    #main_block_top .search .sp {
        display: none !important;
    }

    /* menu */
    .p-header__login,
    .p-header__logout,
    .p-header__entry,
    .p-header__mypage
    {
        float: none;
        width: auto;
        height: auto;
        text-align: center;
        border-left: none;
    }

    .p-header__login a,
    .p-header__logout a,
    .p-header__entry a,
    .p-header__mypage a
    {
        background: none;
        padding-top: 0;
    }

    .p-header__login a::before {
        position: relative;
        top: 5px;
        margin: 0;
        content: url("../images/icon_login.png");
    }

    .p-header__logout a::before {
        position: relative;
        top: 5px;
        margin: 0;
        content: url("../images/icon_logout.png");
    }
    .p-header__entry a::before {
        position: relative;
        top: 5px;
        margin: 0;
        content: url("../images/icon_member.png");
    }
    .p-header__mypage a::before {
        position: relative;
        top: 5px;
        margin: 0;
        content: url("../images/icon_mypage.png");
    }

    /* search */
    .search h4 {
        font-size: 1.7rem;
    }

    .search_keyword button {
        font-size: 1.7rem;
        border-radius: 100vh;
        background: #f1d4d4;
        border: none;
        padding: 5px 20px;
        margin: 0 5px 15px 0;
    }


    .c-info-box {
        width: 100%;
        height: auto;
        max-width: 330px;
    }

    /* pagenation */
    .pagenation__item-previous {
        max-width: 80px;
    }
    .pagenation__item-next {
        max-width: 80px;
    }

    /* fotter entry */
    .new_entry_banner_container {
        min-height: 475px;
    }

    .new_entry_banner_container .row {
        width: 330px;
        margin: 25px auto 0;
    }

    .inner-box {
    }

    .entry_banner_col_message {
        height: 140px;
        background: url("../images/icon_member_red.png") no-repeat center 25px;
        padding-right: 8px !important;
    }

    .entry_banner_col_message .inner-box {
        padding: 75px 0 0 0;
        text-align: center;
    }

    .entry_banner_col_special {
        height: 180px;
        margin-left: 0;
    }

    .entry_banner_col_special .inner-box {
        height: 100%;
        padding: 0;
        text-align: center;
    }

    .entry_banner_col_special dl {
        display: block;
        flex-wrap: wrap;
        width: 100%;
        padding-left: 0;
        padding-top: 10px;
    }

    .entry_banner_col_special dt {
        width: 100%;
        font-size: 1.5rem;
        color: #ae001f;
        padding: 10px 0;
    }

    .entry_banner_col_special dd.special01 {
        width: 13em;
        margin: 0 auto;
    }

    .entry_banner_col_special dd {
        width: 100%;
        font-size: 1.6rem;
        font-weight: bold;
    }

    .entry_banner_col_button {
        margin-left: 0;
        height: 100px;
    }

    .entry_banner_col_button .inner-box {
        width: auto;
        color: white;
        text-align: center;
        font-size: 1.7rem;
        font-weight: bold;
        padding-top: 15px;
        padding-left: 13px;
    }

    .entry_banner_col_button .inner-box a {
        display: block;
        width: 290px;
        height: 55px;
        color: white;
        padding-top: 17px;
        background: url("../images/arrow_circle_red.png") no-repeat right 15px center #690000;
        background-size: 19px 19px;
        border-top-right-radius: 0.3rem;
        border-bottom-right-radius: 0.3rem;
    }

    .benefits li:nth-of-type(1) {
        padding-left: 80px;
        padding-bottom: 30px;
        line-height: 1.6em;
        background: url(../img/benefits1.png) no-repeat;
        background-size: 72px auto;
    }

    .benefits li:nth-of-type(2) {
        padding-left: 80px;
        padding-bottom: 30px;
        line-height: 1.6em;
        background: url(../img/benefits2.png) no-repeat;
        background-size: 72px auto;
    }

    .footer_upside {
        margin: 10px 20px;
    }

    .footer_txt {
        text-align: left;
        font-size: 1.4rem;
    }

    /* about */
    #thought h2,
    #delivery h2,
    #photos h2,
    #school h2,
    #access h2 {
        font-size: 2.5rem;
    }

    #thought h3,
    #delivery h3,
    #photos h3,
    #school h3,
    #access h3 {
        font-size: 2.1rem;
    }

    #help_about_box__nav {
        margin-bottom: 16px;
    }
    #help_about_box__nav .navi {
        text-align: left;
        margin-bottom: 10px;
        width: 100%;
        padding: 0 0 8px 0;
        font-size: 1.5rem;
    }

    #help_about_box__nav .navi:nth-child(1) {
        max-width: 150px;
        border-right: none;
    }
    #help_about_box__nav .navi:nth-child(2) {
        max-width: 170px;
        border-right: none;
    }
    #help_about_box__nav .navi:nth-child(3) {
        max-width: 150px;
        border-right: none;
    }
    #help_about_box__nav .navi:nth-child(4) {
        max-width: 170px;
        border-right: none;
    }
    #help_about_box__nav .navi:nth-child(5) {
        max-width: 150px;
    }

    .page_top {
        margin-bottom: 20px;
    }

    #thought h2,
    #delivery h2,
    #photos h2,
    #school h2,
    #access h2 {
        margin-bottom: 10px;
    }

    #thought > .row {
        padding-left: 0;
        padding-bottom: 0;
    }

    #thought .col-left {
        padding-right: 16px;
    }

    #thought .col-right {
        padding: 0;
    }

    #thought .consultation {
        margin-top: 50px;
        padding-bottom: 50px;
    }

    #thought .consultation > div:nth-child(3) {
        padding-right: 0;
    }

    #thought .consultation p {
        margin-top: 16px;
    }

    #thought .consultation a {
        text-align: left;
        padding-left: 20px;
    }

    #thought .consultation a > span {
        display: inline-block;
        width: 13em;
    }

    #delivery {
        margin-top: 60px;
    }

    .delivery_inner {
        padding: 0;
    }

    #photos h4 {
        margin: 5px 0 0 0;
    }

    #photos p {
        margin-top: 0;
        font-size: 1.4rem;
    }

    #school .banner .message {
        padding: 0;
    }

    #school .banner .phone_number {
        font-size: 3.5rem;
        letter-spacing: 0;
        margin-bottom: 0;
    }
    #school .banner .reception_hours {
        font-size: 1.4rem;
    }

    .access_table {
        display: block;
        max-width: 550px;
        margin: 0 auto 40px;
    }
    .access_table dl {
        display: block;
    }
    .access_table dt,
    .access_table dd {
        display: block;
        padding: 0;
    }
    .access_table dt {
        width: 20%;
        font-weight: bold;
    }

    .access_table dd {
        padding: 0 0 16px 0;
    }

    #page_mypage_login .page-heading,
    #page_shopping_login .page-heading {
        margin: 0;
        border-bottom: none;
    }
}

.alternate__inner {
    display: flex;
    flex-direction:row-reverse;
    margin-bottom: 10px;
}

.alternate__body {
    padding: 10px;
    color: #BE1529;
    text-align: center;
    background: url("../images/sp_top_bg20240215.png");
    min-width: 207px;
    background-size: 100% 112px;
    background-repeat: no-repeat;
    width: 58%;
}

.alternate__ttl {
    font-weight: 300;
    font-size: 12px;
    letter-spacing: 0.025em;
    margin: 25px 0 0 0;
}

.alternate__txt {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.025em;
    margin: 0;
    margin-bottom: 19px;
}

.alternate__thumb {
    width: 42%;
}

.alternate__thumb img {
    min-width: 148px !important;
    height: 112px;
    object-fit: cover;
}

.alternate section {
    display: contents;
}

.contents__explain {
    margin: 20px 0 38px 0;
}

@media screen and (min-width:768px),print {
    .alternate__inner {
        flex-direction: row-reverse;
        max-width: 445px;
        width: 48%;
        height: 170px;
    }
    .alternate__body {
        width: 251px;
        min-width: auto;
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background: url("../images/top_bg20240215.png");
        background-repeat: no-repeat;
        background-size: cover;
    }
    .alternate__ttl {
        font-size: 14px;
        margin: 20px 0 0 0;
    }
    .alternate__txt {
        font-size: 26px;
    }
    .alternate__thumb {
        width: 194px;
    }
    .alternate__thumb img {
        max-width: none;
        width: 100% !important;
        height: 170px;
        object-fit: cover;
    }
    .alternate {
        display: flex;
        gap: 22px;
        margin-bottom: 21px;
    }
}
