@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: #0092C4;
    text-decoration: none;
    cursor: pointer;
}
a:hover,
a:focus,
a:active { color: #33A8D0;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: 8px;
    padding-right: 8px;
}
.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 > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    padding:8px;
    line-height:1.42857143;
    vertical-align:top;
    border-top:1px solid #ddd
}
.table-bordered {
    border:1px solid #ddd
}
.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 #ddd
}
.table-bordered > thead > tr > th, .table-bordered > thead > tr > td {
    border-bottom-width:2px
}



/*	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: 16px;
    font-size: 1.6rem;
    padding:10px 16px;
    font-weight: bold;
}

.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 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: 0 3px 0 2px;
    text-align: center;
    position: relative;
}

.pagination ul li a {
    color: #525263;
    display: block;
    line-height: 1.8;
    padding: 5px 1em;
    text-decoration: none;
}
.pagination ul li a:hover, .pagination ul li a:focus {
    background: #f1f1f1;
}
.pagination ul li.active a {
    background: #F3F3F3;
    text-decoration: none;
}
.pagination ul li.active a:hover, .pagination ul li.active a:focus {
    background: #F3F3F3;
}
.pagination ul li.disabled a {
    color: #9797A0;
    text-decoration: none;
}
.pagination ul li.disabled a:hover, .pagination ul li.disabled a:focus {
    color: #9797A0;
}

/* 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: 12px;
    font-size: 1.2rem;
}
#topicpath li a {
    float: left;
    display: inline-block;
}

#topicpath li:after {
    content:"｜";
}
#topicpath li:last-child {
    font-weight: bold;
}
#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;
}

/* .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
-------------------------------- */

.inner {
    max-width: 1150px;
}

/****** 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;
    padding-top: 8px;
    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: 54px;
}
.header_logo_area .header_logo {
    font-size: 20px;
    font-size: 2rem;
    margin: 0;
}

/* 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;
}
.nav-trigger {
    color: transparent !important;
}

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 {
    margin: 0;
    position: absolute;
    right: 15px; top: 0;
    z-index: 11;
}

.nav-trigger span, .nav-trigger span::before, .nav-trigger span::after {
    /* hamburger icon in CSS */
    position: absolute;
    display: inline-block;
    height: 3px;
    width: 24px;
    background: #525263;
}
.nav-trigger span {
    /* line in the center */
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -2px;
    -webkit-transition: background 0.3s 0.3s;
    -moz-transition: background 0.3s 0.3s;
    transition: background 0.3s 0.3s;
}
.nav-trigger span::before, .nav-trigger span::after {
    /* other 2 lines */
    content: '';
    right: 0;
    /* 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;
    -webkit-transform-origin: 0% 50%;
    -moz-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    -o-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transition: -webkit-transform 0.3s 0.3s;
    -moz-transition: -moz-transform 0.3s 0.3s;
    transition: transform 0.3s 0.3s;
}
.nav-trigger span::before {
    /* menu icon top line */
    top: -6px;
}
.nav-trigger span::after {
    /* menu icon bottom line */
    top: 6px;
}
.drawer-open .nav-trigger span {
    /* hide line in the center */
    background: rgba(46, 50, 51, 0);
}
.drawer-open .nav-trigger span::before, .drawer-open .nav-trigger span::after {
    /* keep visible other 2 lines */
    background: #525263;
}
.drawer-open .nav-trigger span::before {
    -webkit-transform: translateX(4px) translateY(-3px) rotate(45deg);
    -moz-transform: translateX(4px) translateY(-3px) rotate(45deg);
    -ms-transform: translateX(4px) translateY(-3px) rotate(45deg);
    -o-transform: translateX(4px) translateY(-3px) rotate(45deg);
    transform: translateX(4px) translateY(-3px) rotate(45deg);
}
.drawer-open .nav-trigger span::after {
    -webkit-transform: translateX(4px) translateY(2px) rotate(-45deg);
    -moz-transform: translateX(4px) translateY(2px) rotate(-45deg);
    -ms-transform: translateX(4px) translateY(2px) rotate(-45deg);
    -o-transform: translateX(4px) translateY(2px) rotate(-45deg);
    transform: translateX(4px) translateY(2px) rotate(-45deg);
}


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

.drawer {
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    width: 260px;
    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 */

#drawer .category-nav {
    margin-bottom: 16px;
}
.category-nav a {
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 10px;
    color: #525263;
    font-size: 16px;
    font-size: 1.6rem;
    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 {
    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: #000;
}
.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 */

.bt_search {
    border: 0;
    background: none;
    position: absolute;
    right: 0; top: 0;
    display: block;
    width: 44px;
    height: 44px;
    overflow: hidden;
    white-space: nowrap;
    z-index: 1;
}
.bt_search .cb-search {
    fill: #636378;
    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: 50px;
    padding: 0 50px 0 1em;
    border-bottom: 1px solid #ccc;
    position: relative;
    margin-left: 1%;
}

.search input[type="search"] {
    height: 50px;
    width: 100%;
    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;
}


/* Member area */

.member_link {
    margin-bottom: 16px;
}
.member_link a {
    border-bottom: 1px solid #e8e8e8;
    color: #525263;
    display: block;
    font-size: 14px;
    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;
}
.member_link a .cb {
    font-size: 30px;
    font-size: 3rem;
    fill: #B8BEC4;
    margin-right: 5px;
    position: relative;
    top: -1px;
}
.member_link a:hover .cb {
    fill: #c6cbd0;
}

/* News List */

.newslist {
    border-bottom: 1px solid #f8f8f8;
}
.newslist dl {
    border-top: 1px dotted #ccc;
}
.newslist dt {
    cursor: pointer;
    padding: 8px;
    position: relative;
}
.newslist dt span {
    display: block;
}
.newslist dt .angle-circle {
    position: absolute;
    right: 16px;top: 17px;
    display: inline-block;
    width: 21px; height: 21px;
    border-radius: 50%;
    background: #B8BEC4;
}
.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;
}


/* 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;
}
.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: #525263;
    margin: 0 0 8px;
}
.item_price {
    color: #525263;
    font-weight: bold;
}
.item_price .small {
    font-size: 86%;
}

.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 .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 > p {
    margin: 0;
}
.relative_cat ol {
    list-style: none;
}
.relative_cat li {
    display: inline-block;
    color: #333;
}
.relative_cat li a {
    padding: 0 0.5em;
    display: inline-block;
}
.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_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 32px;
    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: 8px 10%;
}

/* 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 !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
}


/******************************
	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%;
    }

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

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

    .container-fluid {
        padding-left: 16px;
        padding-right: 16px;
    }
    .row {
        margin-left: -16px;
        margin-right: -16px;
        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: 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: 16px;
        font-size: 1.6rem;
    }

    /* 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: 25%;
        padding-right: 16px;
    }
    #side_right {
        float: right;
        width: 25%;
        padding-left: 16px;
    }

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

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

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

    /* main */
    .theme_side_left #main {
        width: 75%;
        float: right;
    }

    /* -- 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;
        padding-top: 15px;
    }
    #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;
        padding-top: 16px;
    }

    /* 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 {
        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 > li {
        text-align: left;
        margin: 0 1em;
        position: relative;
    }
    .category-nav ul {
        position: static;
        height: auto;
        width: auto;
        overflow: visible;
        z-index: 3;
        background: #fff;
    }
    .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;
    }



    /* ----- 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: 16px;
    }
    .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;
    }
    .newslist dt .news_title {
        padding-left: 7em;
        padding-right: 30px;
    }
    .newslist dd {
        margin: 0 16px 16px;
    }

    /* 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 li {
        display: inline-block;
        margin: 0 8px 8px;
    }
    #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;
    }

    /****** 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;

	}
}

/* add for my style */
.visible-xs{
  visibility: hidden;
}

.text-shadow{
  text-shadow: 0 0 5px #fff;
}

.red-span{
  color: #ff0000;
}

@media only screen and (max-width: 767px) {
  .hidden-xs{
    visibility: hidden;
  }
  .visible-xs{
    visibility: visible;
  }
}

/* TOP:カタログ一覧 */
.about__section{
  height: auto;
  padding: 120px 0;
}
.catalog__section{
  height: 500px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 90px 0;
}

.about__section h2,
.about__section p,
.catalog__section h2,
.catalog__section p{
  text-align: center;
  margin: 0;
}
.about__section .inner,
.catalog__section .inner{
  height: 100%;
}

.about__section h2{
  font-size: 40px;
  font-weight: normal;
  color: #000;
  margin-bottom: 30px;
}
.about__section h2 span{
  display: block;
  font-size: 0.75em;
}
.about__section p.contents{
  font-size: 16px;
  line-height: 2em;
  margin-bottom: 40px;
}
.about__section p.contents span.caption{
  display: inline-block;
  font-size: 24px;
  margin-bottom: 1em;
}

.about__section p.about__detail a{
  display: inline-block;
  font-family: 'Nunito', sans-serif;
  font-size: 16px;
  color: #000;
  width: 360px;
  border: 1px solid #000;
  letter-spacing: 3px;
  transform: scaleY(1.1);
  padding: 0.7em 0;
}
.catalog__section h2{
  margin-bottom: 52px
}
.catalog__section p.catalog__main{
  font-size: 32px;
  margin-bottom: 20px
}
.catalog__section p.catalog__sub{
  font-size: 16px;
  margin-bottom: 32px;
}
.catalog__section p.catalog_detail a{
  display: inline-block;
  font-size: 14px;
  width: 240px;
  padding: 1.5em 0;
}

.catalog__section .catalog_sub-detail{
  text-align: center;
  margin: 16px 0 0;
}

.catalog__section .catalog_sub-detail a{
  font-size: 14px;
  background-color: transparent;
  border: none;
  box-shadow: none;
  border-bottom: 1px solid #b7a15a;
  padding: 0 6px;
}

.catalog__section .catalog_sub-detail a::after{
  font-family: 'FontAwesome';
  content: '\f08e';
  margin-left: 8px;
}

.catalog__section01{
  background-image: url(../images/top/background_01.jpg);
}
.catalog__section01 .inner{
  background-image: url(../images/top/catalog_luxus.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
.catalog__section01 h2, .catalog__section01 p, .catalog__section01 a{
  color: #fff;
}
.catalog__section01 a{
  border: 1px solid #8e8e8e;
  background-color: rgba(0, 0, 0, 0.1);
}

.catalog__section02{
  background-image: url(../images/top/background_02.jpg);
}
.catalog__section02 .inner{
  background-image: url(../images/top/catalog_ocean-terre.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
}
.catalog__section02 h2, .catalog__section02 p, .catalog__section02 a{
  color: #404040;
}
.catalog__section02 a{
  border: none;
  background-color: rgba(255, 255, 255, 0.9);
}

.catalog__section03{
  background-image: url(../images/top/background_03.jpg);
}
.catalog__section03 .inner{
  background-image: url(../images/top/catalog_premeire.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
.catalog__section03 h2, .catalog__section03 p, .catalog__section03 a{
  color: #625547;
}
.catalog__section03 a{
  border: 1px solid #8f7f6e;
  background-color: rgba(255, 255, 255, 0.3);
}

.catalog__section04{
  background-image: url(../images/top/background_04.jpg);
}
.catalog__section04 .inner{
  background-image: url(../images/top/catalog_kiratto.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
}
.catalog__section04 h2, .catalog__section04 p, .catalog__section04 a{
  color: #251e1c;
}
.catalog__section04 a{
  border: 1px solid #251e1c;
  background-color: none;
}

.catalog__section05{
  background-image: url(../images/top/background_05.jpg);
  background-color: #2c2c31;
}
.catalog__section05 .inner{
  background-image: url(../images/top/catalog_ocean-terre-sweets.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
}
.catalog__section05 h2, .catalog__section05 p, .catalog__section05 a{
  color: #fff;
}
.catalog__section05 h2{
  margin-bottom: 16px;
}
.catalog__section05 p{
  text-shadow: 0 0 5px #000;
}
.catalog__section05 p.catalog__sub{
  margin-bottom: 32px;
}
.catalog__section05 a{
  border: 1px solid #fff;
  background-color: rgba(0, 0, 0, 0.5);
}

.catalog__section06{
  background-image: url(../images/top/background_06.jpg);
  background-color: #060240;
  padding: 70px 0 110px;
}
.catalog__section06 .inner{
  background-image: url(../images/top/catalog_pellfabore.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
}
.catalog__section06 h2, .catalog__section06 p, .catalog__section06 a{
  color: #fff;
}
.catalog__section06 h2{
  margin-bottom: 16px;
}
.catalog__section06 h2 img{
  width: 175px;
}
.catalog__section06 p{
  text-shadow: 0 0 5px #000;
}
.catalog__section06 p.catalog__sub{
  margin-bottom: 32px;
}
.catalog__section06 a{
  border: 1px solid #fff;
  background-color: transparent;
}
.catalog__section06 .catalog_detail a::after{
  font-family: FontAwesome;
  content: '\f08e';
  margin-left: 8px;
}

.catalog__section07{
  background-image: url(../images/top/background_07.jpg);
  background-color: #ffeaed;
  padding: 50px 0;
}
.catalog__section07 .inner{
  background-image: url(../images/top/catalog_ninas.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 240px;
}
.catalog__section07 h2, .catalog__section07 p, .catalog__section07 a{
  color: #b7a15a;
}
.catalog__section07 h2,
.catalog__section07 p{
  text-shadow: 
    1px 1px 10px #fff, -1px 1px 10px #fff,
    1px -1px 10px #fff, -1px -1px 10px #fff;  
}
.catalog__section07 h2{
  margin-bottom: 32px;
}
.catalog__section07 h2 img{
  height: 160px;
}
.catalog__section07 a{
  border: 1px solid #b7a15a;
  background-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0 0 8px 0 #fff;
}

.catalog__section08{
  background-image: url(../images/top/background_08.jpg);
  background-color: #fff;
  padding: 90px 0;
}
.catalog__section08 .inner{
  background-image: url(../images/top/catalog_ot-gourmet.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 240px;
}
.catalog__section08 h2, .catalog__section08 p, .catalog__section08 a{
  color: #251e1c;
}
.catalog__section08 h2,
.catalog__section08 p{
  text-shadow: 
    1px 1px 10px #fff, -1px 1px 10px #fff,
    1px -1px 10px #fff, -1px -1px 10px #fff;  
}
.catalog__section08 h2{
  margin-bottom: 32px;
}
.catalog__section08 h2 img{
  height: auto;
  max-height: 104px;
}
.catalog__section08 a{
  border: 1px solid #251e1c;
  background-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0 0 8px 0 #fff;
}
/* 210729: PELLFABORE 追加 */
.catalog__section09{
  background-image: url(../images/top/background_09.jpg);
  background-color: #fff;
  padding: 90px 0;
}
.catalog__section09 .inner{
  background-image: url(../images/top/catalog_pellfabore.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 260px auto;
}

.catalog__section09 .cover-image{
  max-width: 438px;
  margin-left: auto;
  margin-right: auto;
}



@media only screen and (min-width: 768px) and (max-width: 991px) {
  .catalog__section .inner{
    background-image: none;
  }
}
@media only screen and (max-width: 767px) {
  .about__section{
    height: auto;
    padding: 72px 0;
  }
  .about__section h2{
    font-size: 24px;
    margin-bottom: 28px;
  }
  .about__section p.contents{
    font-size: 15px;
    margin-bottom: 28px;
  }
  .about__section p.contents span.caption{
    font-size: 18px;
  }
  .about__section p.about__detail a{
    font-size: 14px;
    width: 240px;
  }

  .catalog__section{
    height: auto;
    background-image: none;
    padding: 40px 0 0;
    margin: 0;
  }
  .catalog__section:first-child{
    margin-top: 16px;
  }
  .catalog__section h2{
    font-size: 28px;
    margin-bottom: 20px;
  }
  .catalog__section h2 img{
    /* width: 50%; */
  }
  .catalog__section p.catalog__main{
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 16px;
  }
  .catalog__section p.catalog__sub{
    font-size: 14px;
    margin-bottom: 20px;
  }
  .catalog__section p.catalog_detail a{
    font-size: 13px;
    margin-bottom: 32px;
    padding: 0.8em 0 0.7em;
  }
  .catalog__section .inner{
    background-image: none;
  }
  .catalog__section01{
    background-color: #000;
  }
  .catalog__section02{
    background-image: none;
    background-color: #fff;
  }
  .catalog__section02 p.catalog_detail a{
    border: 1px solid #404040;
  }
  .catalog__section03{
    background-image: none;
    background-color: #fafaf5;
  }
  .catalog__section04{
    background-image: url('../images/top/bg_kiratto.jpg');
  }

  .catalog__section04 h2 img{
    width: 200px;
  }

  .catalog__section05{
  }
  .catalog__section06{
    padding: 40px 0 0;
  }
  .catalog__section07 h2 img{
    width: auto;
  }
  .catalog__section.catalog__section07 p.catalog_detail a{
    margin-bottom: 16px;
  }
  .catalog__section07 .catalog_sub-detail{
    margin-bottom: 32px;
  }
}

.visible-xs-custom{
  display: none!important;
}
.hidden-xs-custom{
  display: inline!important;
}
@media only screen and (max-width: 767px) {
  .visible-xs-custom{
    display: inline!important;
  }
  .hidden-xs-custom{
    display: none!important;
  }
}
.visible-xs-custom-block{
  display: none!important;
}
.hidden-xs-custom-block{
  display: block!important;
}
@media only screen and (max-width: 767px) {
  .visible-xs-custom-block{
    display: block!important;
  }
  .hidden-xs-custom-block{
    display: none!important;
  }
}


/* TOP:ギャラリー */
.item_gallery h2{
  font-size: 16px;
  font-weight: normal;
  border-bottom: 1px solid #c6d9d6;
  padding: 0 0 10px;
  margin-bottom: 14px;
}
.gallery_content{
  margin-bottom: 32px;
}
.gallery__detail{
  padding-left: 0;
}
.gallery__detail p{
  font-size: 12px;
  margin: 0 0 12px;
}
.gallery__detail p.price{
  margin-bottom: 0;
}
.gallery__detail span{
  font-size: 14px;
  margin-left: 4px;
}
.gallery__btn{
  display: table;
  background-color: #cb2619;
  padding: 0;
}
.gallery__btn p{
  display: table-cell;
  font-size: 12px;
  text-align: center;
  vertical-align: middle;
  padding: 10px 0;
  margin: 0;
}
.gallery__btn p a{
  display: block;
  color: #fff;
}
.gallery__btn span{
  display: block;
  font-size: 10px;
  margin-top: 4px;
}
@media only screen and (max-width: 991px) {
  .gallery__detail p{
    margin: 0 0 6px;
  }
  .gallery__detail p.price{
    margin-bottom: 12px;
  }
  .gallery__btn{
    display: block;
  }
  .gallery__btn p{
    display: block;
    font-size: 14px;
    color: #fff;
    text-align: center;
    padding: 10px 0;
    margin: 0;
  }
  .gallery__btn span{
    display: block;
    font-size: 12px;
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .gallery_content{
    margin-bottom: 16px;
  }
  .gallery__detail{
    padding: 0;
  }
  .gallery__detail p{
    margin: 0 0 4px;
  }
}
/* header */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  #header .category-nav > li.list-head p{
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px) {
  .fixed-head #header{
    position: fixed;
    top: 0;
    z-index: 500;
  }
  .fixed-head .header__after{
    padding: 157px 0 0;
  }
}
/* header */
.left-slick,
.right-slick{
  display: inline-block;
  width: 50%;
}
.left-slick{
  float: left;
}
.right-slick{
  float: right;
}
.slick__wrapper .slick-slider{
  margin-bottom: 0;
}
.main-cover{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}
@media only screen and (max-width: 767px) {
  .left-slick,
  .right-slick{
    float: none;
    width: 100%;
    vertical-align: bottom;
  }
}

.shop__func .logo{
  display: inline-block;
  float: left;
  margin-top: -1rem;
}
.shop__func .logo h1{
  font-family: 'Nunito', sans-serif;
  font-weight: lighter;
  letter-spacing: 3px;
  /*transform: scaleY(1.1);*/
  margin: 0;
}
.shop__func .logo a{
  color: #000;
}
.shop__func .logo img{
  width: 200px;
  height: auto;
}

/* footer */
#footer{
  /* height: 548px;
  background-image: url(../images/common/background_footer.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative; */
}
.footer_logo{
  height: 78px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.footer_logo p{
  text-align: center;
  margin: 0;
}
.footer_logo .logo{
  font-size: 40px;
  font-family: Nunito, sans-serif;
  /*transform: scaleY(1.1);*/
}
.footer_logo img{
  width: 75%;
  margin-bottom: 10px;
}
.footer_contents{
  display: inline-block;
  width: 280px;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  margin: -140px auto 0;
}
.hexagon {
  display: inline-block;
  position: relative;
  width: 280px;
  height: 161.66px;
  background-color: rgba(255,255,255,0.8);
  margin: 80.83px 0;
}

.hexagon:before,
.hexagon:after {
  content: "";
  position: absolute;
  width: 0;
  border-left: 140px solid transparent;
  border-right: 140px solid transparent;
}

.hexagon:before {
  bottom: 100%;
  border-bottom: 80.83px solid rgba(255,255,255,0.8);
}

.hexagon:after {
  top: 100%;
  width: 0;
  border-top: 80.83px solid rgba(255,255,255,0.8);
}

/* 商品ページ */
body:not(.front_page) #contents{
  background-image: url(../images/common/bg-gray.svg);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: 50%;
  background-attachment: fixed;
  padding-top: 100px;
  position: relative;
}
#page_product_list #contents{
  padding-top: 0;
}
@media only screen and (max-width: 767px) and (min-width: 481px) {
  body:not(.front_page) #contents{
    padding-top: 40px;
  }
  .product_page #contents{
    background-size: 65%;
    padding-top: 0;
  }
}
@media only screen and (max-width: 480px) {
  body:not(.front_page) #contents{
    padding-top: 40px;
  }
  .product_page #contents{
    background-size: 80%;
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  #item_photo_area .slides .slick-dots{
    margin: 0;
  }
}
#item_detail_area .item_detail .item_code,
#item_detail_area .item_detail .relative_cat{
  font-size: 14px;
}
#item_detail_area .item_detail h2.item_comment{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  line-height: 1.618em;
  margin-top: 1em;
}
#item_detail_area .item_detail p.item_comment{
}
.product_page .catalog__section{
  height: 400px;
  padding: 40px 0;
}
.product_page .catalog__section h2{
  padding-top: 20px;
  margin-bottom: 40px;
}
.product_page .catalog__section .catalog__sub{
  padding-bottom: 30px;
  margin-bottom: 0;
}

.product_page .catalog__section05 h2{
  padding-top: 0;
  margin-bottom: 10px;
}
.product_page .catalog__section05{
  padding: 30px 0;
}

.product_page .catalog__section05 p.catalog__main{
  margin-bottom: 10px;
}

.product_page .catalog__section07{
  height: 500px;
}

@media only screen and (max-width: 767px){
  .product_page .catalog__section{
    height: auto;
    margin: 0;
    padding: 32px 0 0;
  }
  .product_page .catalog__section h2{
    padding-top: 0;
  }
  .product_page .catalog__section .catalog__sub{
    padding-bottom: 28px;
  }

  .product_page .catalog__section07{
    height: auto;
  }  
}

/*　問い合わせフォーム回り */
#page_my_contact ul.member_link,
#page_my_contact #my-cart .badge{
  visibility: hidden;
}
@media only screen and (max-width: 767px){
  #page_my_contact ul.member_link,
  #page_my_contact #my-cart .badge{
    display: none;
  }
}
/* backボタン */
.btn_back{
  text-align: center;
}
.btn_back a{
  display: inline-block;
  padding: 1.5rem 10rem;
  background-color: #1d1d1d;
  color: #fff;
  position: relative;
}
.btn_back a::before{
  font-family: FontAwesome;
  content: '\f104';
  position: absolute;
  left: 1rem;
}
@media only screen and (max-width: 767px){
  .btn_back a{
    padding: 1.5rem 0;
    width: 100%;
  }
  .btn_back p{
    padding: 0 8px;
  }
}

/* 各ページ見出し */
h1.page-heading{
  font-family: "Sawarabi Mincho";
  font-weight: normal;
  text-align: center;
  border: none;
  padding: 0.8rem 0 1.2rem;
  margin: 0 0 2rem;
}
h1.page-heading span{
  display: block;
  font-family: "Mplus 1p";
  font-size: 0.6em;
  padding-top: 1rem;
}
h1.page-heading span::before,
h1.page-heading span::after{
  display: inline-block;
  content: '';
  width: 100px;
  height: 1px;
  background-color: #000;
  margin-bottom: 0.3em;
}
h1.page-heading span::before{
  margin-right: 4rem;
}
h1.page-heading span::after{
  margin-left: 4rem;
}
@media only screen and (max-width: 767px){
  h1.page-heading{
    font-size: 28px;
  }
  h1.page-heading span::before,
  h1.page-heading span::after{
    width: 75px;
  }
  h1.page-heading span::before{
    margin-right: 2rem;
  }
  h1.page-heading span::after{
    margin-left: 2rem;
  }
}

.sub-head{
  font-family: "Mplus 1p";
}

.sub-head_lead{
  margin-top: -10px;
  padding-left: 20px;
}

/* FAQページ */
#faq h2{
  font-family: "Mplus 1p";
  font-size: 1.8rem;
  font-weight: normal;
  text-align: center;
  border: 1px solid #000;
  margin: 0 0 1rem;
  padding: 1em 0;
}
#faq h3{
  font-size: 2.4rem;
  font-family: "Sawarabi Mincho";
  font-weight: normal;
  text-align: center;
  margin: 0 0 50px;
}
#product,
#payment,
#shipping{
  margin-top: -220px;
  padding-top: 220px;
}
@media only screen and (max-width: 767px){
  #faq h2{
    font-size: 1.6rem;
  }
  #faq h3{
    margin-bottom: 20px;
  }
  #product,
  #payment,
  #shipping{
    margin-top: -55px;
    padding-top: 55px;
  }

}

.faq__head-link{
  margin-bottom: 80px;
}
.faq__head-link a{
  color: #000;
}
.faq__contents{
  margin-bottom: 40px;
}
.faq__content-inner{
  border: 1px solid #bbbdbc;
  padding: 0 40px;
  margin-bottom: 40px;
}
.faq__content-inner h4{
  font-family: "Sawarabi Mincho";
  font-size: 18px;
  border-bottom: 1px solid #bbbdbc;
  margin: 0;
  padding: 1em 0 1em 3em;
  position: relative;
}
.faq__content-inner h4::before{
  display: inline-block;
  content: '';
  width: 2em;
  height: 2em;
  background-image: url(../images/page/faq/question-head.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  margin: 0 8px;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -1em;
}
.faq__content-inner p{
  font-size: 16px;
  margin-bottom: 1.5em;
}
@media only screen and (max-width: 767px){
  .faq__head-link{
    margin-bottom: 30px;
  }
  .faq__content-inner{
    padding: 0 15px;
    margin-bottom: 20px;
  }
  .faq__content-inner h4{
    font-size: 16px;
  }
  .faq__content-inner p{
    font-size: 14px;
  }
}

/* tradelaw */

#tradelaw .item__head,
#tradelaw .item__content{
  padding: 15px 10px 10px;
}
.item__head{
  border-bottom: 1px solid #003a6a;
}
.item__head p{
  font-family: "Sawarabi Mincho";
  font-size: 16px;
  font-weight: bold;
  margin: 0;
}
.item__head p::before{
  font-family: FontAwesome;
  content: '\f0da';
  color: #003a6a;
  margin-right: 10px
}
.item__content{
  border-bottom: 1px dashed #003a6a;
}
.item__content p{
  font-size: 16px;
  margin: 0;
}
@media only screen and (max-width: 991px){
  #tradelaw .item__head,
  #tradelaw .item__content{
    padding: 0 10px;
  }
  #tradelaw .item__head{
    padding-bottom: 10px;
  }
  #tradelaw .item__content{
    padding-top: 10px;
  }
  .item__head{
    border-bottom-style: dashed;
  }
  .item__content{
    border-bottom: none;
  }
  .item__content p{
    font-size: 14px;
    margin-bottom: 1.5em;
  }
}

/* guide */
.guide-box__item{
  margin-top: 60px;
}
#guide h2{
  font-family: "Sawarabi Mincho";
  font-size: 20px;
  margin: 0;
  padding: 1.5rem 0 1.5rem 40px;
  position: relative;
}
#guide h2::before{
  display: inline-block;
  content: '';
  border-top: 14px solid #000;
  border-left: 15px solid #000;
  border-right: 13px solid #fff;
  border-bottom: 14px solid #000;
  position: absolute;
  top: 50%;
  left: 4px;
  margin-top: -1.5rem;
}
#guide h2::after{
  display: block;
  content: '';
  width: 40%;
  height: 1px;
  background-color: #003a6a;
  position: absolute;
  top: 0;
  left: 0;
}
#guide p{
  font-size: 14px;
  line-height: 2em;
  margin-top: 0;
  padding: 0 10px;
}
#guide p.inner-head{
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 0;
  padding-left: 0;
}
#guide p.inner-head::before{
  font-family: FontAwesome;
  content: '\f0da';
}

@media only screen and (max-width: 767px){
  .guide-box__item{
    margin-top: 40px;
  }
  #guide h2::after{
    width: 80%;
  }
  #guide p{
    padding: 0;
  }
}

/* about us */
.about-section{
  margin-top: 60px;
  margin-bottom: 40px;
}
.about-section.map-area{
  margin-bottom: 120px;
}
#help_about .dl_table {
  border-top: 1px dashed #ccc;
}
#help_about .dl_table.dl_table-right{
  border-top: none;
}
#help_about .dl_table dl {
  padding: 8px 0;
  border-bottom: 1px dashed #ccc;
}
#help_about .dl_table dt,
#help_about .dl_table dd{
  line-height: 1.6em;
  padding: 8px;
}
#help_about .dl_table dd{
  padding: 8px 16px;
}
#help_about .dl_table dd span{
  font-size: 14px;
}
#help_about .office-box{
  margin: 5rem auto;
}
#help_about .office-box__inner{
  margin-bottom: 80px;
}
#help_about .sub-head{
  font-size: 30px;
  height: 1em;
  margin: 0 0 16px;
  padding-left: 1rem;
  position: relative;
}
#help_about .sub-head span{
  background-color: #fff;
  line-height: 1em;
  padding: 0 2rem 0 1rem;
  position: absolute;
  left: 1rem;
  bottom: 0;
  z-index: 50;
}
#help_about .sub-head::after{
  display: block;
  content: '';
  width: 8px;
  height: 32px;
  background-color: #ededed;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 0;
}
#help_about .sub-head::before{
  display: block;
  content: '';
  width: 75%;
  height: 18px;
  background-color: #ededed;
  position: absolute;
  left: 1rem;
  bottom: 0;
  z-index: 0;
}
#help_about .history-box .dl_table,
#help_about .history-box .dl_table dl,
#help_about .history-box .dl_table dt,
#help_about .history-box .dl_table dd,
#help_about .dl_table.dl_table-right{
  border: none;
}
#help_about .history-box .dl_table dt{
  padding-left: 36px;
  position: relative;
}
#help_about .history-box .dl_table dt::before{
  content: '';
  width: 30px;
  height: 100%;
  background-color: #555;
  position: absolute;
  top: 0;
  left: 0;
}
#help_about .history-box .dl_table dt::after{
  content: '';
  width: 30px;
  height: 21px;
  background-image: url(../images/common/arrow-bottom.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom;
  position: absolute;
  left: 0;
  bottom: 0;
}
#help_about .history-box .dl_table dl:last-child dt::after{
  background-image: url(../images/common/arrow-bottom_last.svg);
}
@media only screen and (max-width: 767px){
  #help_about_box{
    margin-top: 10px;
  }
  #help_about .dl_table dt,
  #help_about .dl_table dd{
    padding: 0 8px;
  }
  #help_about .dl_table dt::before{
    font-family: FontAwesome;
    content: '\f105';
    margin-right: 6px;
  }
  #help_about .dl_table dd{
    font-size: 14px;
    padding-left: 12px;
  }
  #help_about .sub-head::before{
    width: 100%;
  }
  #help_about .office-box{
    margin: 0;
  }
  #help_about .office-box__inner{
    margin-bottom: 60px
  }
  #help_about .office-box__inner:last-child{
    margin-bottom: 0;
  }
  #help_about .history-box .dl_table,
  #help_about .history-box .dl_table dl,
  #help_about .history-box .dl_table dt,
  #help_about .history-box .dl_table dd,
  #help_about .dl_table.dl_table-right{
    border: none;
  }
  #help_about .history-box .dl_table dt::before{
    display: none;
  }
  #help_about .history-box .dl_table dt::after{
    display: none;
  }
  #help_about .history-box .dl_table dt{
    padding-left: 12px;
  }
  #help_about .history-box .dl_table dd{
    padding-left: 20px;
  }
  #help_about .history-box .dl_table dl{
    padding: 0 0 16px 36px;
    position: relative;
  }
  #help_about .history-box .dl_table dl::before{
    content: '';
    width: 30px;
    height: 100%;
    background-color: #555;
    position: absolute;
    top: 0;
    left: 0;
  }
  #help_about .history-box .dl_table dl::after{
    content: '';
    width: 30px;
    height: 20px;
    background-image: url(../images/common/arrow-bottom.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  #help_about .history-box .dl_table dl:last-child::after{
    background-image: url(../images/common/arrow-bottom_last.svg);
  }
  #help_about .history-box .box01 .dl_table dl:first-child{
    padding-top: 8px;
  }
  #help_about .history-box .box01 .dl_table dl:last-child::after{
    background-image: url(../images/common/arrow-bottom.svg);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px){
  #help_about .dl_table.dl_table-right{
    border: none;
  }
  #help_about .history-box .dl_table dt,
  #help_about .history-box .dl_table dd{
    padding-top: 0;
    padding-bottom: 16px;
  }
  #help_about .history-box .box01 .dl_table dl:first-child dt,
  #help_about .history-box .box01 .dl_table dl:first-child dd{
    padding-top: 8px;
  }
  #help_about .history-box .box01 .dl_table dl:last-child dt::after{
    background-image: url(../images/common/arrow-bottom.svg);
  }
}
@media only screen and (min-width: 768px){
  #help_about .dl_table dl{
    border: none;
  }
  #help_about .dl_table dt,
  #help_about .dl_table dd {
      border-bottom: 1px dashed #ccc;
  }
  #help_about .history-box .dl_table,
  #help_about .history-box .dl_table dl,
  #help_about .history-box .dl_table dt,
  #help_about .history-box .dl_table dd{
    border: none;
  }
  #help_about .history-box .dl_table dt,
  #help_about .history-box .dl_table dd{
    padding-bottom: 24px;
  }
  #help_about .history-box .box01 .dl_table dl:first-child dt,
  #help_about .history-box .box01 .dl_table dl:first-child dd{
    padding-top: 12px;
  }
}
@media only screen and (min-width: 992px){
  #help_about .dl_table.dl_table-right{
    border-top: 1px dashed #ccc;
  }
  #help_about .dl_table.dl_table-bottom{
    margin-top: 48px;
  }
  #help_about .dl_table.dl_table-bottom dt{
    width: 15%;
  }
}

/* 問い合わせ */
.mailform-note{
  text-align: center;
  margin-bottom: 6rem;
}
.mailform dt{
  vertical-align: top;
}
.mailform dd input,
.mailform dd textarea{
  width: 100%;
}
.mailform dd textarea{
  height: 5em;
}
.mailform dd p{
  margin: 0;
}
.mailform dd input[type="radio"]{
  width: auto;
}
input[type="submit"],
input[type="button"]{
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;

  background-color: #000;
  color: #fff;
  border: 1px solid #000;
}
.submit_area{
  display: block;
  margin: 3rem auto;
  text-align: center;
}
.completion{
  font-size: 18px;
  text-align: center;
}
.confirmation{
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 3rem;
}
.submit_area input{
  display: inline-block;
  width: 140px;
  padding: 1rem 0;
}
.submit_area input[type="button"]{
  background-color: #fff;
  color: #000;
}
@media only screen and (min-width: 768px) {
  .mailform dd input{
    width: 80%;
  }
}

/* concept */
.hidden-height{
  background-image: url(../images/page/concept/bg_concept.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 900px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.concept-wrapper{
  height: 800px;
  text-align: center;
  position: relative;
  z-index: 50;
}
.concept-wrapper h2{
  display: inline-block;
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  font-size: 40px;
  font-weight: normal;
  position: relative;
  line-height: 2em;
  margin-top: 1.5em;
}
.concept-wrapper h2 span{
  font-size: 2em;
}
.concept-wrapper h2 small{
  font-family: Roboto, "游ゴシック", YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 0.5em;
  font-weight: lighter;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 1em;
}
.concept-contents{
  display: inline-block;
  text-align: left;
}
.concept-contents h3{
  font-family: "Sawarabi Mincho";
  font-size: 24px;
}
.concept-contents p{
  font-size: 18px;
  line-height: 2em;
}
.sign{
  text-align: right;
}
.concept-greeting h1.page-heading{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}
.greeting-img{
  text-align: center;
}
.concept-greeting h2{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  font-size: 30px;
}
.concept-greeting p{
  font-size: 14px;
  line-height: 2em;
}
.concept-greeting h2,
.concept-greeting p{
  text-align: center;
}

.about-ism{
  font-family: "Sawarabi Mincho";
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  margin: 1.5em 0;
}
.ism-images{
  text-align: center;
}
.ism-images img{
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px){
  .hidden-height{
    height: 650px;
  }
  .concept-wrapper{
    height: 550px;
  }
  .concept-wrapper h2{
    font-size: 28px;
  }
  .concept-contents h3{
    font-size: 18px;
  }
  .concept-contents p{
    font-size: 14px;
  }
  .sign img{
    max-width: 280px;
  }
  .concept-greeting h2{
    font-size: 21px;
  }
  .ism-images img{
    width: 100%;
    height: auto;
    max-width: 420px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px){
  .ism-images img{
    max-width: 640px;
  }
}

p.caution{
  font-weight: bold;
}
p.caution span{
  color: #e40000;
}
#confirm_side p.caution{
  font-size: 1.5rem;
  text-align: left;
  margin: 2rem 0;
}

.address__caution{
  font-size: 1.3rem;
  font-weight: bold;
  color: #e40000;
}

.bnr-area{
  margin-top: 5rem;
}
@media only screen and (max-width: 767px){
  .bnr-area{
    margin-top: 1.6rem;
  }
}
.front_page #contents .bnr-area .bnr-area__item{
  padding-bottom: 3.2rem;
}
@media only screen and (max-width: 767px){
  .front_page #contents .bnr-area .bnr-area__item{
    padding-bottom: 0.8rem;
  }
}

#employee_box{
  margin-top: 4rem;
}
.employee-item{
  margin-bottom: 4rem;
}
.employee-head,
.employee-content{
  padding: 1rem;
}
.employee-head{
  margin-bottom: 1rem;
}
.employee-content{
  padding-bottom: 1.6rem;
  position: relative;
}
.employee-content::after{
  display: inline-block;
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 60%;
  height: 1px;
  background-color: #ddd;
}
.employee-item h2{
  font-family: "Sawarabi Mincho", serif;
  font-weight: normal;
  line-height: 3.2rem;
  margin: 0;
}
.employee-item h2 span{
  display: inline-block;
  font-family: Roboto, "游ゴシック", YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 1.6rem;
  color: #fff;
  line-height: 3.2rem;
  background-color: #000;
  vertical-align: bottom;
  padding: 0 1rem;
  margin-right: 1rem;
}
.employee-item p{
  line-height: 1.6em;
  margin: 0;
}
.employee-item .employee-head{
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
}

@media only screen and (max-width: 767px){
  #employee_box{
    margin-top: 0;
  }
  .employee-item{
    margin-bottom: 3rem;
  }
  .employee-head{
    padding: 0.5rem;
  }
  .employee-content{
    padding: 0.5rem 0 1.2rem;
  }
  .employee-item h2{
    font-size: 2rem;
    line-height: 2.4rem
  }
  .employee-item h2 span{
    font-size: 1.2rem;
    line-height: 2.4rem;
  }
  .employee-item p{
    font-size: 1.4rem;
  }
}

/* Recruit */
.recruit-heading{
  margin-bottom: 30px;
}
.recruit-hero{
  margin-bottom: 60px;
}

.recruit-category{
  background-color: #000;
  border-right: 1px solid #ccc;
}
.recruit-category:last-child{
  border-right: none;
}
.recruit-category p{
  text-align: center;
  margin: 0;
}
.recruit-category a{
  display: block;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  padding: 1.6rem 0 1.2rem;
}
.recruit-category span{
  display: block;
  font-size: 14px;
  font-weight: normal;
  color: #dafaff;
}

.recruit-requirements{
  z-index: 35;
}
#recruit-new_and_career{
  z-index: 30;
}
#recruit-new{
  margin-bottom: 32px;
  z-index: 25;
}
#recruit-career{
  margin-bottom: 32px;
  z-index: 20;
}
#recruit-part{
  margin-bottom: 32px;
  z-index: 15;
}
#recruit-side{
  margin-bottom: 32px;
  z-index: 10;
}
#type-sales{
  z-index: -10;
}
#type-delivery{
  z-index: -15;
}
#type-designer{
  z-index: -20;
}

#recruit h2{
  font-family: "Sawarabi Mincho";
  font-size: 20px;
  margin: 0;
  padding: 1.5rem 0 1.5rem 40px;
  position: relative;
}
#recruit h2::before{
  display: inline-block;
  content: '';
  border-top: 14px solid #000;
  border-left: 15px solid #000;
  border-right: 13px solid #fff;
  border-bottom: 14px solid #000;
  position: absolute;
  top: 50%;
  left: 4px;
  margin-top: -1.5rem;
}

.recruit-type p{
  font-weight: bold;
  margin: 0 0 2px;
}
.recruit-type ul{
  margin-left: 0.6rem;
}
.recruit-type li{
  display: inline-block;
  margin-right: 1.6rem;
}
.recruit-type li::before{
  font-family: FontAwesome;
  content: '\f105';
  margin-right: 6px;
}
.recruit-type a{
  color: #333;
}

.type-detail{
  margin-bottom: 40px;
}
.type-detail h3{
  background-color: #fff7f6;
  border-left: 5px solid #de5d50;
  border-bottom: 1px solid #000;
  padding: 10px 10px 7px 14px;
  margin: 24px 0 16px;
}
.type-detail p{
  margin-bottom: 4px;
}
.type-detail p.is_requirements::before{
  font-family: FontAwesome;
  content: '\f0da';
  margin-right: 4px;
}
.type-detail li{
  display: inline-block;
  font-size: 14px;
  line-height: 20px;
  margin-right: 10px;
}
.type-detail .recruited{
  font-size: 16px;
  font-weight: bold;
  color: #0065b0;
  margin-right: 20px;
}
.type-detail .recruited.hiring{
  color: #da0000;
}
.type-detail span{
  display: inline-block;
  font-weight: normal;
  font-size: 12px;
  color: #fff;
  background: #333;
  border-radius: 4px;
  vertical-align: text-bottom;
  padding: 0 8px;
  margin-right: 4px;
}
.recruit-table.row{
  margin: 0;
}
.recruit-table{
  margin-bottom: 40px;
}

#recruit .item__head,
#recruit .item__content{
  padding: 15px 10px 10px;
}

#recruit .item__content span{
  display: inline-block;
  font-weight: bold;
}
#recruit .item__content span.skyblue-txt{
  font-weight: bold;
  color: #0065b0;
}
#recruit .item__content span.red-txt{
  font-weight: bold;
  color: #da0000;
}
#recruit .item__content.works-list{
  padding-left: 0;
}
#recruit .item__content.works-list p{
  border-bottom: 1px solid #ddd;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 10px;
  margin-bottom: 0;
}
#recruit .item__content.works-list p:last-child{
  border-bottom: none;
}


.entry-area{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
}
.entry-btn{
  text-align: center;
}
.entry-btn a{
  display: inline-block;
  font-size: 18px;
  color: #fff;
  min-width: 280px;
  width: 40%;
  background-color: #76c706;
  padding: 2rem 0;
  position: relative;
}
.entry-btn a::after{
  font-family: FontAwesome;
  font-size: 24px;
  content: '\f105';
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
}

@media only screen and (max-width: 767px){
  #recruit .page-heading span::before,
  #recruit .page-heading span::after{
    width: 60px;
  }
  .recruit-heading{
    margin-bottom: 16px;
  }
  .recruit-hero{
    margin-bottom: 36px;
  }

  .recruit-category{
    border-bottom: 1px solid #ccc;
  }
  .recruit-category:nth-child(2n){
    border-right: none;
  }
  .recruit-category a{
    font-size: 16px;
    line-height: 1.2;
    text-align: left;
    padding: 1rem 0.4rem 0.8rem;
  }
  .recruit-category span{
    text-align: right;
  }
}

@media only screen and (max-width: 991px){
  #recruit .item__head,
  #recruit .item__content{
    padding: 0 10px;
  }
  #recruit .item__head{
    padding-bottom: 10px;
  }
  #recruit .item__head p{
    margin-bottom: 0;
  }
  #recruit .item__content{
    padding-top: 10px;
  }
  .type-detail{
  margin-bottom: 0;
  }
  .type-detail p{
    margin-bottom: 16px;
  }
  #recruit .recruit-table{
    padding-bottom: 0;
  }
  .entry-btn{
    margin-bottom: 30px;
  }
}

/* headerにメニュー追加 */
#header .category-nav > li:not(.list-head){
  width: 13.88888%;
  /* メニューにお知らせ追加：180803 to 181217 */
  /* width: 11.90477%; */
}

/* aboutに社会貢献を追加 */
.title-image{
  margin-bottom: 10px;
}
.about-community{
  margin-top: -80px;
  margin-bottom: 40px;
}
.about-community{
  font-size: 14px;
}

@media only screen and (max-width: 767px){
  .about-community{
    margin-top: 40px;
  }
}
/* ISO9001認証について */
.concept-iso p{
  font-size: 14px;
  line-height: 2;
  text-align: center;
}
.concept-iso p.head-text{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 8px;
}
.concept-iso p.head-text + p{
  margin-top: 0;
}
.iso-img img{
  display: block;
  max-width: 220px;
  margin: 0 auto;
}
.sign-img{
  margin-top: 24px;
  margin-bottom: 16px;
  text-align: right;
}

/* footer 調整 */
body.front_page #footer .footer_contents.sub-footer{
  display: none;
}
body:not(.front_page) #footer .footer_contents.home-footer{
  display: none;
}

body:not(.front_page) #footer{
  height: auto;
  background-image: none;
}
body:not(.front_page) #footer .footer_contents.sub-footer{
  display: block;
  position: relative;
  margin: 0 auto;
}
body:not(.front_page) #footer .footer_contents.sub-footer .footer_logo{
  position: relative;
}
body:not(.front_page) #footer .footer_contents.sub-footer .footer_logo .copyright{
  padding-bottom: 16px;
}

/* 180803：お知らせページ */
.document-box h2{
  text-align: center;
}
.document-box h3{
  font-size: 16px;
  font-weight: normal;
}
.document-box .info-introduction{
  font-weight: bold;
  text-align: center;
}
.document-box img{
  display: block;
  margin: 0 auto 16px;
}
.document-box p{
  line-height: 1.75;
}
.document-box p .head{
  display: inline-block;
  font-weight: bold;
  margin-top: 20px;
}
.document-box table{
  width: 100%;
  text-align: center;
  margin-bottom: 32px;
}
.document-box table th,
.document-box table td{
  border: 1px solid #555;
  padding: 8px 4px;
}

/* 180807 お知らせ領域 */
body.has-info{
  /* padding-top: 95px; */
}
body.has-info.has-info__double{
  /* padding-top: 46px; */
}
body.has-info.has-info__double.front_page{
  /* padding-top: 95px; */
}
.header_info p{
  font-size: 13px;
  text-align: center;
  background-color: #ffdbd8;
  text-decoration: underline;
  margin: -30px 0 15px;
  padding: 7px 5px;
  position: fixed;
  top: 75px;
  left: 0;
  right: 0;
  z-index: -1;
}

@media (min-width: 768px) {
  body.has-info,
  body.has-info.has-info__double,
  body.has-info.has-info__double.front_page{
    padding-top: 0;
  }
  .header_info p{
    font-size: 14px;
    padding: 7px 5px;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
}

/* faqにリスト追加 */
.faq__content-inner ul{
  list-style: decimal;
  padding-left: 1em;
  margin-bottom: 1.5em;
}
.faq__content-inner li{
  margin-bottom: 5px;
}

/* instafeed 実装 */
.instagram-feed{
  margin: 32px 0;
}

.instagram-feed a{
  color: #333;
}

@media screen and (min-width: 992px){
  .instafeed-feed{
    margin: 60px 0;
  }
}

.instagram-feed h2{
  font-size: 14px;
  font-weight: normal;
  text-align: center;
  line-height: 1;
  margin-bottom: 16px;
}

@media screen and (min-width: 768px){
  .instagram-feed h2{
    font-size: 16px;
    margin-bottom: 28px;
  }
}
.instagram-feed h2::before{
  font-family: FontAwesome;
  content: '\f16d';
  display: block;
  font-size: 40px;
  margin-bottom: 2px;
}
@media screen and (min-width: 768px){
  .instagram-feed h2::before{
    font-size: 48px;
  }
}


.instafeed-grid{
  margin-bottom: 16px;
  position: relative;
}
.instafeed-grid::before{
  display: block;
  content: '';
  padding-top: 100%;
}

.instafeed-grid a{
  display: block;
  width: calc(100% - 16px);
  height: 100%;
  position: absolute;
  top: 0;
  overflow: hidden;
}

.instafeed-grid img{
  width: 100%;
  object-fit: cover;
  box-shadow: 0px 1px 3px 0 rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 768px){
  .instafeed-grid{
    margin-bottom: 32px;
  }

  .instafeed-grid a{
    width: calc(100% - 32px);
  }
}

.product-page_information p{
  font-size: 18px;
  text-align: center;
}

/* 商品ページ用軽減税率お知らせ */
@media screen and (min-width: 768px){
  .product-page_information p{
    margin-top: 32px;
    margin-bottom: 0;
  }
}

#page_product_detail .product-page_information{
  margin-top: -56px;
}

#page_product_detail .product-page_information p{
  margin-top: 0;
  margin-bottom: 48px;
}

#welcome_message .info{
  margin-bottom: 0;
  text-align: left;
}

/* 200228：グランパスコラボ */
.catalog__grampus{
  background-image: url(../images/top/grampus/grampus-bg.jpg);
  background-color: #c40c17;
  padding: 50px 0;
}
.catalog__grampus .inner{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-image: url(../images/top/grampus/grampus-item.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 320px;
  position: relative;
}
.catalog__grampus h2, .catalog__grampus p, .catalog__grampus a{
  color: #fff;
}
.catalog__grampus h2{
  margin-bottom: 32px;
}
.catalog__grampus h2 img{
  height: 160px;
}
.catalog__grampus a{
  border: 1px solid #fff;
  background-color: rgba(255, 255, 255, 0);
}
.grampus-logo_sp{
  position: absolute;
  left: 0;
  height: 300px;
}

.grampus-logo_sp img{
  height: 100%;
  width: auto;
}

@media only screen and (max-width: 991px) {
  .catalog__grampus .inner{
    background-image: none;
  }

  .catalog__grampus h2 img{
    width: auto;
    height: 120px;
  }

  .grampus-logo_sp{
    display: block;
    height: 120px;
    width: auto;
    margin-bottom: 24px;
    position: relative;
    left: auto;
  }
}

@media only screen and (max-width: 767px){
  .catalog__grampus{
    height: auto;
    margin: 0;
    padding: 32px 0 0;
  }
}

/* 200313: ocean terre goumet */
.page-goumet #wrapper #contents{
  padding-top: 0;
}
.container-fluid.no-gutter{
  padding-left: 0;
  padding-right: 0;
}

.container-fluid.no-gutter .row{
  margin-left: 0;
  margin-right: 0;
}

.container-fluid.no-gutter .col-xs-1, .container-fluid.no-gutter .col-sm-1, .container-fluid.no-gutter .col-md-1, .container-fluid.no-gutter .col-lg-1, .container-fluid.no-gutter .col-xs-2, .container-fluid.no-gutter .col-sm-2, .container-fluid.no-gutter .col-md-2, .container-fluid.no-gutter .col-lg-2, .container-fluid.no-gutter .col-xs-3, .container-fluid.no-gutter .col-sm-3, .container-fluid.no-gutter .col-md-3, .container-fluid.no-gutter .col-lg-3, .container-fluid.no-gutter .col-xs-4, .container-fluid.no-gutter .col-sm-4, .container-fluid.no-gutter .col-md-4, .container-fluid.no-gutter .col-lg-4, .container-fluid.no-gutter .col-xs-5, .container-fluid.no-gutter .col-sm-5, .container-fluid.no-gutter .col-md-5, .container-fluid.no-gutter .col-lg-5, .container-fluid.no-gutter .col-xs-6, .container-fluid.no-gutter .col-sm-6, .container-fluid.no-gutter .col-md-6, .container-fluid.no-gutter .col-lg-6, .container-fluid.no-gutter .col-xs-7, .container-fluid.no-gutter .col-sm-7, .container-fluid.no-gutter .col-md-7, .container-fluid.no-gutter .col-lg-7, .container-fluid.no-gutter .col-xs-8, .container-fluid.no-gutter .col-sm-8, .container-fluid.no-gutter .col-md-8, .container-fluid.no-gutter .col-lg-8, .container-fluid.no-gutter .col-xs-9, .container-fluid.no-gutter .col-sm-9, .container-fluid.no-gutter .col-md-9, .container-fluid.no-gutter .col-lg-9, .container-fluid.no-gutter .col-xs-10, .container-fluid.no-gutter .col-sm-10, .container-fluid.no-gutter .col-md-10, .container-fluid.no-gutter .col-lg-10, .container-fluid.no-gutter .col-xs-11, .container-fluid.no-gutter .col-sm-11, .container-fluid.no-gutter .col-md-11, .container-fluid.no-gutter .col-lg-11, .container-fluid.no-gutter .col-xs-12, .container-fluid.no-gutter .col-sm-12, .container-fluid.no-gutter .col-md-12, .container-fluid.no-gutter .col-lg-12{
  padding-left: 0;
  padding-right: 0;
}

.page_oceanterre-goumet p{
  margin-top: 0;
  margin-bottom: 16px;
}

.goumet-head{
  margin-bottom: 40px;
}

.goumet-head p{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  font-size: 26px;
  color: #fff;
  background-color: #000;
  text-align: center;
  padding: 4px 12px;
  margin: 0;
}

.goumet-item_head{
  font-family: "M PLUS Rounded 1c";
}

.goumet-item_head h2{
  font-size: 28px;
  font-weight: 100;
  color: #fff;
  letter-spacing: 3px;
  padding: 12px;
  margin-top: 0;
  margin-bottom: 16px;
}

.goumet-item_head h2 span{
  letter-spacing: normal;
  margin-left: 12px;
}

.goumet-yummy .goumet-item_head h2{
  background-color: #142450;
}

.goumet-umai .goumet-item_head h2{
  background-color: #213a1f;
}

.goumet-bouno .goumet-item_head h2{
  background-color: #6a0a00;
}

.goumet-delicious .goumet-item_head h2{
  background-color: #3c2518;
}

.goumet-content{
  overflow: hidden;
  margin-bottom: 72px;
}

.goumet-item_detail{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
  padding: 24px 48px;
}

.goumet-item_detail .catalog-image,
.goumet-item_detail .catalog-price,
.goumet-item_detail .catalog-login{
  padding: 0 10px;
}

.goumet-item_detail .catalog-image{
  width: 25%;
}

.goumet-item_detail .catalog-image p{
  font-size: 14px;
}

.goumet-item_detail img{
  margin-bottom: 12px;
}

.goumet-item_detail .catalog-price{
  display: flex;
  flex-direction: column;
  width: 25%;
}

.goumet-item_detail .catalog-price .price,
.goumet-item_detail .catalog-price .price-info{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}

.goumet-item_detail .price{
  font-size: 30px;
  line-height: 1;
  border-bottom: 1px solid #000;
  padding-bottom: 6px;
}

.goumet-item_detail .price-info{
  font-size: 12px;
}

.goumet-item_detail .card-image img{
  max-width: 60%;
}

.goumet-item_detail .card-image{
  font-size: 14px;
  margin-top: auto;
}

.goumet-item_detail .catalog-login{
  width: 50%;
  margin-bottom: 24px;
}

.goumet-item_detail .catalog-login p{
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 12px;
}

.goumet-item_detail .catalog-login dl{
  display: flex;
  flex-wrap: wrap;
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}

.goumet-item_detail .catalog-login dl dt,
.goumet-item_detail .catalog-login dl dd{
  text-align: center;
  padding: 6px 0;
  margin-bottom: 12px;
}
  
.goumet-item_detail .catalog-login dl dt{
  color: #fff;
  background-color: #251d1b;
  border: 1px solid #251d1b;
  width: calc(100% / 3);
}

.goumet-item_detail .catalog-login dl dd{
  border: 1px solid #251d1b;
  width: calc(100% / 3 * 2);
}

.goumet-item_detail .catalog-login a{
  display: block;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  background-color: #919192;
  text-align: center;
  padding: 12px 6px;
}

@media only screen and (max-width: 767px){
  .goumet-content{
    margin-bottom: 32px;
  }
  
  .goumet-item_detail{
    padding: 12px;
  }

  .goumet-item_detail .catalog-image{
    width: 50%;
  }
  
  .goumet-item_detail .catalog-price{
    width: 50%;
  }
  
  .goumet-item_detail .catalog-login{
    width: 100%;
  }
}

@media only screen and (max-width: 480px){
  .goumet-item_head h2{
    font-size: 18px;
    letter-spacing: normal;
  }
}

@media only screen and (min-width: 481px){
  .d-sm-none{
    display: none;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1600px){
  .goumet-item_detail .catalog-image{
    width: 40%;
  }
  
  .goumet-item_detail .catalog-price{
    width: 40%;
  }
  
  .goumet-item_detail .catalog-login{
    width: 90%;
  }
}

/* 205008: 食品ロス大バナー設置 */
.catalog__section-loss{
  height: auto;
  padding: 0;
}

/* 200601: TOP掲載お知らせ */
.front-info{
  text-align: center;
  margin-bottom: 80px;
}

.front-info_inner{
  display: inline-block;
  max-width: 800px;
  margin: 0 auto;
}

.front-info h3,
.front-info p{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}

.front-info h3{
  font-size: 24px;
}

.front-info p{
  line-height: 1.625;
}

.front-info .signature{
  font-size: 18px;
  font-weight: bold;
  text-align: right;
  margin-top: 48px;
}

@media (max-width: 767px){
  .front-info h3{
    font-size: 22px;
  }

  .front-info{
    margin-bottom: 48px;
  }

  .front-info p{
    font-size: 14px;
    text-align: left;
  }

  .front-info .signature{
    margin-top: 24px;
  }

  .front-info_inner p br:not(.not-hidden){
    display: none;
  }
  
}

/* 200902: TOP改修
/*******************************************/
.catalog-tile{
  margin-top: 80px;
}

.catalog-tile .head{
  text-align: center;
  margin-bottom: 32px;
}

.catalog-tile .head h2{
  font-family: 'M PLUS 1p';
  font-size: 32px;
  margin-bottom: 16px;
}

.catalog-tile .head p{
  font-size: 14px;
  margin-top: 0;
}

.catalog-tile_inner{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  max-width: 1560px;
  margin-left: auto;
  margin-right: auto;
}

.catalog-tile .catalog-item{
  width: 260px;
  text-align: center;
  padding: 0 30px;
  margin-bottom: 48px;
}

.catalog-tile .catalog-item:last-child{
  margin-right: auto;
}

.catalog-tile .catalog-item.catalog_empty{
  height: 0;
  margin: 0;
}

.catalog-tile .catalog-item a:not(.ninas-link){
  display: block;
  position: relative;
}

.catalog-tile .catalog-item a:not(.ninas-link) .hover-img{
  opacity: 0;
  width: 100%;
  height: 100%;
  transition: all 500ms ease-out;
  position: absolute;
  top: 0;
  left: 0;
}

.catalog-tile .catalog-item a.ninas-link{
  display: block;
  font-size: 14px;
  width: 150px;
  color: #fff;
  background-color: #ffacb6;
  text-align: center;
  margin-top: 16px;
  margin-left: auto;
  margin-right: auto;
  padding: 12px;
}

.catalog-tile .catalog-item a:hover .hover-img{
  opacity: 1;
}

@media screen and (max-width: 767px){
  .catalog-tile{
    margin-top: 32px;
  }
  
  .catalog-tile .catalog-item{
    width: 50%;
    padding: 0 15px;
  }

  .catalog-tile .catalog-item a:hover .hover-img{
    display: none;
  }
}

/* 201015: add */
#yummy,
#umai,
#bouno,
#delicious{
  margin-top: -180px;
  padding-top: 180px;
  width: 100%;
}

#yummy{
  margin-top: 0;
  padding-top: 0;
  position: relative;
  z-index: 40;
}

#umai{
  position: relative;
  z-index: 30;
}

#bouno{
  position: relative;
  z-index: 20;
}

#delicious{
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 767px){
  #yummy,
  #umai,
  #bouno,
  #delicious{
    margin-top: -48px;
    padding-top: 48px;
  }

  #yummy{
    margin-top: 0;
    padding-top: 0;
  }
}

.goumet__section .goumet-inner{
  position: relative;
}

.goumet-inner .goumet-image img{
  max-width: none;
  width: 100%;
}

.goumet-inner .goumet-link{
  text-align: center;
  position: absolute;
  top: 75%;
  left: 0;
  right: 0;
}

.goumet-inner .goumet-link a{
  display: inline-block;
  font-size: 14px;
  color: #252525;
  border: 1px solid #252525;
  padding: 16px 32px;
}

@media screen and (max-width: 991px){
  .goumet-inner .goumet-link{
    top: 60%;
  }
  
  .goumet-inner .goumet-link a{
    font-size: 12px;
    padding: 10px 32px;
  }
}

.gourmet-catalogs{
  margin-top: 48px;
}

.gourmet-catalogs img{
  max-width: none;
  width: 100%;
}

.gourmet-catalogs p{
  font-family: "Mplus 1p";
  font-size: 18px;
  text-align: center;
  color: #252525;
}

.gourmet-catalogs p span{
  display: block;
  font-size: 14px;
}

/* privacy policy */
.privacy-policy__contents h2{
  margin-top: 48px;
  margin-bottom: 8px;
}

.privacy-policy__contents p,
.privacy-policy__contents ul li{
  line-height: 1.75;
  margin-bottom: 16px;
}

.privacy-policy__contents ul,
.privacy-policy__contents ol{
  padding-left: 24px;
}

.privacy-policy__contents ul{
  list-style: disc;
}

.privacy-policy__contents ol{
  list-style: decimal;
  margin-top: 16px;
}

.privacy-policy__contents ol li{
  padding-left: 4px;
  margin-bottom: 4px;
}

.privacy-policy__contents .date{
  text-align: right;
  margin-top: 60px;
}

/* lalala */
.page_has-head #wrapper #contents{
  padding-top: 0;
}
.catalog__section_lalala{
  background-color: #000;
  margin-bottom: 60px;
}
.catalog__section_lalala.cat-archive{
  margin-bottom: 0;
}
.catalog__section_lalala h2, .catalog__section_lalala p, .catalog__section_lalala a{
  color: #fff;
}
.catalog__section_lalala h2,
.catalog__section_lalala p{
  text-shadow: 
    1px 1px 10px rgba(0, 0, 0, 0.5), -1px 1px 10px rgba(0, 0, 0, 0.5),
    1px -1px 10px rgba(0, 0, 0, 0.5), -1px -1px 10px rgba(0, 0, 0, 0.5);  
}
.catalog__section_lalala p.catalog__main{
  font-size: 24px;
}
.catalog__section_lalala h2{
  margin-bottom: 32px;
}
.catalog__section_lalala.cat-archive h2{
  margin-top: 0;
}
.catalog__section_lalala h2 img{
  max-width: 50%;
}
.catalog__section_lalala a{
  border: 1px solid #fff;
  background-color: rgba(255, 255, 255, 0);
}

.catalog__section_lalala a:hover{
  background-color: rgba(255, 255, 255, 0.05);
}

.page__lalala .catalog__item{
  margin: 0 0 32px;
}

.page__lalala .catalog__list a{
  color: #333;
}

.page__lalala .catalog__list h2{
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin: 8px 0 0;
}

.page__lalala .catalog__list h2 .alp{
  display: flex;
  align-items: center;
  margin-left: 8px;
}

.page__lalala .catalog__list h2 .alp::before{
  display: block;
  content: '';
  width: 12px;
  height: 1px;
  background-color: #333;
  margin-right: 8px;
}

.page__lalala .catalog__list h2 small{
  align-self: flex-start;
  font-size: calc(100% / 3 * 2);
  line-height: 1;
}

.page__lalala .catalog__list .price{
  font-weight: bold;
  text-align: center;
  margin: 6px 0 0;
}

.page__lalala .catalog__list .price span{
  font-size: 14px;
  font-weight: normal;
}

.page__lalala .catalog__list .more{
  font-size: 12px;
  text-align: right;
  margin: 4px 0 0;
}

.page__lalala .catalog__list .more::after{
  font-family: 'FontAwesome';
  content: '\f105';
  margin-left: 12px;
}

@media (min-width: 768px) {
  .catalog__section_lalala{
    height: 440px;
    background-image: url(../images/page/lalala/background_lalala_pc.png);
    padding: 50px 0;
  }
  .product_page .catalog__section{
    height: 440px;
  }
  .catalog__section_lalala h2{
    margin-top: 50px;
  }  
  .catalog__section_lalala h2 img{
    max-width: none;
  }
}

@media (min-width: 992px) {
  .catalog__section_lalala{
    margin-bottom: 120px;
  }

  .catalog__section_lalala.cat-archive{
    margin-bottom: 0;
  }

  .catalog__section_lalala .inner{
    background-image: url(../images/page/lalala/lalala_h.jpg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 240px;
  }

  .page__lalala .catalog__item{
    padding: 0 15px;
    margin-bottom: 48px;
  }

  .page__lalala .catalog__list h2{
    font-size: 24px;
    margin-top: 12px;
  }

  .page__lalala .catalog__list .more{
    font-size: 16px;
    margin-top: 6px;
  }
}

#item_detail_area .item_detail .price_notax{
  font-size: 12px;
  font-weight: normal;
  color: #aaa;
  margin: 4px 0 8px 1em;
}

#item_detail_area .item_detail .price_notax .small{
  font-size: 10px;
  margin-left: 0.5em;
}

@media (min-width: 768px) {
  #item_detail_area .item_detail .price_notax{
    font-size: 16px;
  }

  #item_detail_area .item_detail .price_notax .small{
    font-size: 12px;
  }
}

/* SimpleCoupon Plugin */
#coupon_entry__body input{
  width: 100%;
}

#page_plg_simplecoupon_front_coupon #result_list_main__list table{
  display: table;
  width: 100%;
  max-width: 480px;
}

#page_plg_simplecoupon_front_coupon #result_list_main__list tr *:nth-child(1)
#page_plg_simplecoupon_front_coupon #result_list_main__list tr *:nth-child(2){
  width: 40%;
}

#page_plg_simplecoupon_front_coupon #result_list_main__list tr *:nth-child(3){
  width: 20%;
}

#page_plg_simplecoupon_front_coupon #result_list_main__list td{
  text-align: center;
}

/* agreement */
.agreement{
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 20px;
}

.cart-agreement{
  align-items: flex-end;
  margin-bottom: 30px;
}

#total_box__next_button .btn-primary{
  transition: all 300ms ease-out;
}

.btn-disable{
  pointer-events: none;
  opacity: 0.5;
}

.agreement p{
  display: inline-block;
}

.agreement .checkbox{
  display: inline-block;
  border: 1px solid #ddd;
  padding: 10px 20px;
}

.agreement .checkbox label{
  margin-left: 10px;
}

.confirmation_btn{
  transition: all 300ms ease-out;
}

.confirmation_btn:disabled{
  opacity: 0.1;
}

/* 221102: OT Goumet edit */
.goumet-online-catalog{
  text-align: center;
  padding: 0 15px;
  margin: 60px 0 80px;
}

.goumet-online-catalog img{
  display: block;
  max-width: 272px;
  width: 100%;
  margin: 0 auto 20px;
}

.goumet-online-catalog a{
  display: inline-block;
  font-size: 14px;
  color: #fff;
  background-color: #252525;
  padding: 16px 32px;
}

@media (min-width: 768px) {
  .goumet-online-catalog{
    margin: 100px 0 150px;
  }

  .goumet-online-catalog img{
    margin-bottom: 40px;
  }
}

/* 221208: Pallet OT Goumet edit */
.product_page .catalog__section.catalog__section_p-ot_goumet{
  background-image: url(../images/page/palette/p-ot_goumet_bg.png);
  height: 588px;
}

.product_page .catalog__section.catalog__section_p-ot_life{
  background-color: #dacec0;
  background-image: url(../images/page/ot_life/p-ot_life_bg.png);
  height: 588px;
}

.product_page .catalog__section.catalog__section_p-ot_life h2 img{
  width: 60%;
}


.catalog__section_p-ot_goumet p.catalog_detail a,
.catalog__section_p-ot_life p.catalog_detail a{
  color: #000;
  background-color: #fff;
  border: 1px solid #000;
  width: 300px;
  text-align: center;
  padding: 16px;
  margin-bottom: 12px;
}

.catalog__section_p-ot_goumet p.catalog_detail.black-detail a,
.catalog__section_p-ot_life p.catalog_detail.black-detail a{
  border: none;
  color: #fff;
  background-color: #000;
}

@media only screen and (max-width: 767px) {
  .product_page .catalog__section.catalog__section_p-ot_goumet,
  .product_page .catalog__section.catalog__section_p-ot_life{
    height: auto;
  }

  .product_page .catalog__section.catalog__section_p-ot_goumet h2 img,
  .product_page .catalog__section.catalog__section_p-ot_life h2 img{
    display: block;
    width: 350px;
    margin: 0 auto;
  }

  .catalog__section_p-ot_goumet p.catalog_detail a,
  .catalog__section_p-ot_life p.catalog_detail a{
    padding: 16px;
  }

  .product_page .catalog__section.catalog__section_p-ot_goumet .sp-img,
  .product_page .catalog__section.catalog__section_p-ot_life .sp-img{
    display: block;
    margin-top: 32px;
  }
}

/* 230622: ADD - Pallet OT Plus */
.product_page .catalog__section.catalog__section_p-ot_plus{
  background-color: #dfcfc1;
  background-image: url(../images/page/palette/p-ot_plus_bg.jpg);
  height: 588px;
}

.catalog__section_p-ot_plus p.catalog_detail a{
  color: #000;
  background-color: #dfcfc1;
  border: 1px solid #000;
  width: 300px;
  text-align: center;
  padding: 16px;
  margin-bottom: 12px;
}

.catalog__section_p-ot_plus p.catalog_detail.black-detail a{
  color: #000;
  background-color: #dfcfc1;
}

@media only screen and (max-width: 767px) {
  .product_page .catalog__section.catalog__section_p-ot_plus{
    height: auto;
  }

  .product_page .catalog__section.catalog__section_p-ot_plus h2 img{
    display: block;
    width: 350px;
    margin: 0 auto;
  }

  .catalog__section_p-ot_plus p.catalog_detail a{
    padding: 16px;
  }

  .product_page .catalog__section.catalog__section_p-ot_plus .sp-img{
    display: block;
    margin-top: 32px;
  }
}

/* 230622: ADD - New OT Life */
.page__lalala .catalog__section_p-ot_life{
  margin-bottom: 120px;
}

@media only screen and (max-width: 767px) {
  .page__lalala .catalog__section_p-ot_life{
    margin-bottom: 60px;
  }
}

/* 230622: ADD - SHIKISAI */
.product_page .catalog__section.catalog__section_shikisai{
  background-color: #dfcfc1;
  background-image: url(../images/page/shikisai/shikisai_bg.png);
  height: 588px;
}

.product_page .catalog__section.catalog__section_shikisai .inner{
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

.catalog__section_shikisai p.catalog_detail a{
  color: #000;
  background-color: #fff;
  border: 1px solid #000;
  width: 300px;
  text-align: center;
  padding: 16px;
  margin-bottom: 12px;
}

.catalog__section_shikisai p.catalog_detail.black-detail a{
  color: #000;
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  .product_page .catalog__section.catalog__section_shikisai{
    height: auto;
    background-image: none;
    background-color: #fff;
    border: 1px solid #eee;
    border-bottom: none;
  }

  .product_page .catalog__section.catalog__section_shikisai h2 img{
    display: block;
    width: 350px;
    margin: 0 auto;
  }

  .catalog__section_shikisai p.catalog_detail a{
    padding: 16px;
  }

  .product_page .catalog__section.catalog__section_shikisai .sp-img{
    display: block;
    margin-top: 32px;
  }
}

/* NICHI 追加 */
.front__nichi .image img{
  display: block;
  max-width: 790px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* 250826: ADD - SHIKISAI ONE */
.product_page .catalog__section.catalog__section_shikisai-one{
  background-color: #dfcfc1;
  background-image: url(../images/page/shikisai-one/shikisaione_bg.png);
  height: 588px;
}

.product_page .catalog__section.catalog__section_shikisai-one .inner{
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

.catalog__section_shikisai-one p.catalog_detail a{
  color: #000;
  background-color: #fff;
  border: 1px solid #000;
  width: 300px;
  text-align: center;
  padding: 16px;
  margin-bottom: 12px;
}

.catalog__section_shikisai-one p.catalog_detail.black-detail a{
  color: #000;
  background-color: #fff;
}

@media only screen and (max-width: 767px) {
  .product_page .catalog__section.catalog__section_shikisai-one{
    height: auto;
    background-image: none;
    background-color: #fff;
    border: 1px solid #eee;
    border-bottom: none;
  }

  .product_page .catalog__section.catalog__section_shikisai-one h2 img{
    display: block;
    width: 350px;
    margin: 0 auto;
  }

  .catalog__section_shikisai-one p.catalog_detail a{
    padding: 16px;
  }

  .product_page .catalog__section.catalog__section_shikisai-one .sp-img{
    display: block;
    margin-top: 32px;
  }
}
