@charset "UTF-8";
@import url("https://image.raku-uru.jp/cms/fontcss/font.css");

/* reset
--------------------------------------*/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
    word-wrap: break-word;
    word-break: break-all;
    font-family: 'Noto Serif JP', serif!important;
    font-weight: 300;
    letter-spacing: 0.3rem;
}

a {
    font-weight: 300;
    color: #333;
    line-height: 1.6;
}

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

ins {
    background-color: #f2f82f;
    color: #171216;
    text-decoration: none;
}

mark {
    background-color: #f2f82f;
    color: #171216;
    font-weight: bold;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

del {
    text-decoration: line-through;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #d2d2d2;
    margin: 1.0rem 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}

img {
    border: none;
    vertical-align: middle;
    line-height: 0;
}


/*--------------------------------------
  'sm': 'screen and(max-width: 480px)
  'md': 'screen and(min-width: 768px)
  'lg': 'screen and(min-width: 960px)
  'xl': 'screen and(min-width: 1200px)

  #common
--------------------------------------*/

* {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
}

body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: {
        {
            nomalCharColor
        }
    }
    ;
    background: {
        {
            backColor
        }
    }
    {
        {
            backImageUrl
        }
    }
    ;
}

input,
textarea,
button,
select,
i {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a,
a:visited {
    color: {
        {
            linkCharColor
        }
    }
    ;
    text-decoration: none;
}

a:hover,
button:hover {
    color: {
        {
            linkActiveCharColor
        }
    }
    ;
    text-decoration: underline;
}

a img:hover {
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

a,
a:hover {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

img {
    max-width: 100%;
    height: auto;
    border: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-feature-settings: "palt";
}


/*  TEXTカラー
--------------------------------------*/

.txt-wt {
    color: #fff;
}

.txt-red,
.red {
    color: #d70035;
}

.txt-blue {
    color: #006eb0;
}


/*  調整用
--------------------------------------*/

.none_bg {
    background: none !important;
}

.none_bd {
    border: none !important;
}

.none_bd_top {
    border-top: none !important;
}


/* 改行 */

.no_br br {
    display: none;
}

.on_br br {
    display: block;
}

@media screen and (min-width: 960px) {
    .no_br br {
        display: block;
    }
    .on_br br {
        display: none;
    }
}


/* TEXT配置 */

.txt_center {
    text-align: center !important;
}

.txt_right {
    text-align: right !important;
}

.txt_left {
    text-align: left !important;
}


/*  文字ツメ */

.txt_spac {
    letter-spacing: -1px;
}

.txt_spac_pl {
    letter-spacing: 2px;
}

.bold {
    font-weight: bold;
}


/* margin・padding
--------------------------------------*/

.mt0 {
    margin-top: 0px !important;
}

.mb0 {
    margin-bottom: 0px !important;
}

.pt0 {
    padding-top: 0px !important;
}

.pb0 {
    padding-bottom: 0px !important;
}

.mt5 {
    margin-top: 5px !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.pt5 {
    padding-top: 5px !important;
}

.pb5 {
    padding-bottom: 5px !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.pt15 {
    padding-top: 15px !important;
}

.pb15 {
    padding-bottom: 15px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.mt25 {
    margin-top: 25px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.pt25 {
    padding-top: 25px !important;
}

.pb25 {
    padding-bottom: 25px !important;
}


/*  共通CSS
--------------------------------------*/

em,
i,
cite {
    font-style: normal;
}

strong,
b {
    font-weight: bold;
}

blockquote,
q {
    border-left: 4px solid #d2d2d2;
    margin: 0 0 2.4em 1rem;
    position: relative;
    display: block;
    color: #4a515c;
}

blockquote:after,
q:after {
    content: "”";
    font-size: 90px;
    line-height: 0em;
    color: #dcdce0;
    position: absolute;
    right: 0;
    top: 100%;
}

blockquote p:last-child,
q p:last-child {
    margin-bottom: 0;
}


/* FOAM
--------------------------------------*/


/* OSi　リセット */

input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}

input,
textarea,
select {
    outline: 0;
}


/* 基本スタイル */

input[type="text"],
input[type="email"],
input[type="url"] {
    background: #fff;
    border: 1px solid #d2d2d2;
    padding: 0.2em 15px;
}

input[type="text"]::focus,
input[type="text"]:hover,
input[type="email"]::focus,
input[type="email"]:hover,
input[type="url"]::focus,
input[type="url"]:hover {
    border: 1px solid #00AEE3;
}

button {
    cursor: pointer;
}

input[type='checkbox'],
input[type="radio"],
input[type="submit"] {
    cursor: pointer;
}

textarea {
    border: 1px solid #d2d2d2;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    height: 230px;
    margin: auto;
}


/* 基本table
--------------------------------------*/

table {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    margin: auto;
}

table table {
    width: 100%;
}

th,
td {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #d2d2d2;
    margin: 0 0 -1px 0;
    vertical-align: middle;
    padding: 5px;
    display: block;
}

table tr:last-child td:last-child {
    margin-bottom: 0;
}

th {
    background: #f6f6f7;
}


/* ご利用ガイド用スタイル */

table.about-tbl {
    margin: 24px auto;
    width: 100%;
}

table.about-tbl th,
table.about-tbl td {
    padding: 10px;
}

table.about-tbl a {
    text-decoration: underline;
}

table.shipment-tbl {
    margin-bottom: 30px;
}

table.shipment-tbl table {
    margin-bottom: 15px;
}

table.shipment-tbl th,
table.shipment-tbl td {
    font-size: 14px;
}

table.shipment-tbl td {
    padding: 5px 10px;
}

table.shipment-tbl thead th,
table.shipment-tbl thead td {
    text-align: center;
    font-weight: bold;
}

.shipment-tbl-normal-shippoint-point span {
    display: inline-block;
}

.shipment-tbl-tkbsize-defined {
    margin-top: 30px;
}

.shipment-tbl-tkbsize-defined thead td {
    background: #f6f6f7;
}

.shipment-tbl-tkbsize-defined tbody tr td:last-child {
    border-bottom-width: 2px;
}

.shipment-tbl-eidome a {
    text-decoration: underline;
}

@media screen and (min-width: 768px) {
    table.shipment-tbl th {
        max-width: 22em;
    }
    table.shipment-tbl table th {
        max-width: 10em;
    }
    .shipment-tbl-tkbsize-defined tbody tr td:last-child {
        border-width: 1px;
    }
}


/* clearfix */

.cl,
#header,
#container,
#main,
.main,
#secondary,
#footer {
    *zoom: 1;
}

.cl::after,
#header::after,
#container::after,
#main::after,
.main::after,
#secondary::after,
#footer::after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}


/* キャリア別表示・非表示 */

.pc {
    display: none;
}

.sp {
    display: block;
}

@media screen and (min-width: 768px) {
    table table {
        min-width: 80%;
        max-width: 100%;
        width: auto;
    }
    th,
    td {
        margin-right: -1px;
        display: table-cell;
    }
}

@media screen and (min-width: 960px) {
    .pc {
        display: block;
    }
    .sp {
        display: none;
    }
}


/*--------------------------------------
  layout
--------------------------------------*/

#wrapper {
    position: relative;
    height: 100%;
    width: 100%;
}

#header {
    margin: 0 auto;
    position: relative;
    z-index: 2000;
}

#container {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    position: relative;
    overflow: hidden;
}

#main,
.main {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.one-column #main,
.one-column .main {
    width: 100%;
    margin: auto;
}

.inner {
    width: 94%;
    margin: 0 3%;
    height: auto;
    position: relative;
}

@media screen and (min-width: 768px) {
    .inner {
        width: 100%;
        max-width: 1040px;
        margin: 0 auto;
        padding: 0 3%;
    }
}

@media screen and (min-width: 1200px) {
    .inner {
        padding: 0;
    }
}

@media (min-width: 1018px) and (max-width: 1159px) {
    #wrapper {
        width: 95%;
    }
    .inner {
        padding: 0 1%;
    }
}

.inner_980 {
    width: 94%;
    margin: 0 3%;
    height: auto;
    position: relative;
}

@media screen and (min-width: 768px) {
    .inner_980 {
        width: 100%;
        max-width: 980px;
        margin: 0 auto;
        padding: 0 3%;
    }
}

@media screen and (min-width: 1200px) {
    .inner_980 {
        padding: 0;
    }
}

.no_inner {
    width: 100%;
    height: auto;
    margin: 0;
    position: relative;
}

@media screen and (min-width: 768px) {
    .no_inner {
        max-width: 1040px;
        margin: 0 auto;
    }
}

#secondary {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

#footer {
    text-align: center;
    position: relative;
}

.layer-bk,
.layer-wh {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 4;
    padding: 0.5em 0;
}

.layer-bk {
    background: rgba(0, 0, 0, 0.44);
}

.layer-wh {
    background: rgba(255, 255, 255, 0.8);
}


/*--------------------------------------
  共通パーツ
--------------------------------------*/


/* SNS */

.sns li {
    display: inline;
}

.sns li a {
    color: #333;
}

.sns li a i {
    font-size: 24px;
    font-size: 2.4rem;
}


/* もっとリンク 右矢印 */

.more-link {
    text-align: right;
    margin-bottom: 1.5em;
    font-size: 14px;
    font-size: 1.4rem;
}

.more-link a {
    display: inline-block;
    text-decoration: none;
}

.more-link a::after {
    content: "\e902";
    font-family: "icomoon";
    color: #0079ff;
    margin-left: 5px;
}

.more-link a:hover {
    color: #106aa7;
    text-decoration: none !important;
}

.more-link a:hover::after {
    color: #106aa7;
}


/* パンくず */

.breadcrumbs {
    margin: 0 10px;
    padding: 6px 10px;
    text-align: left;
    background-color: #eee;
}

.breadcrumbs strong {
    font-weight: normal;
}

.breadcrumbs li {
    max-width: 100%;
    display: inline-block;
    color: #6d6d72;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.78;
}

.breadcrumbs a {
    text-decoration: underline;
}

.breadcrumbs li::after {
    content: " > ";
    margin: 0 5px;
    color: #c9c9c9;
}

.breadcrumbs li:last-child::after {
    content: "";
}

@media screen and (min-width: 600px) {
    .breadcrumbs {
        margin: 0;
        padding: 10px;
    }
}

@media screen and (min-width: 768px) {
    .breadcrumbs li {
        font-size: 14px;
        font-size: 1.4rem;
    }
}


/* ページ送り */

.pager {
    position: relative;
    margin: 0 auto;
    text-align: center;
    width: 94%;
}

.pager .prev,
.pager .next {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    height: 20px;
}

.pager .prev a,
.pager .next a {
    position: relative;
    color: #1a130c;
    line-height: 20px;
}

.pager .prev a::after,
.pager .next a::after {
    position: absolute;
    width: 14px;
}

.pager .prev {
    left: 0;
}

.pager .prev a {
    padding-left: 24px;
}

.pager .prev a::after {
    left: 0;
    content: "\e905";
    font-family: "icomoon";
    font-size: 16px;
}

.pager .next {
    right: 0;
}

.pager .next a {
    padding-right: 24px;
}

.pager .next a::after {
    right: 0;
    content: "\e90b";
    font-family: "icomoon";
    font-size: 16px;
}

@media screen and (min-width: 768px) {
    .pager {
        width: 60%;
    }
}

.page-num {
    display: inline-block;
}

.page-num ul {
    font-size: 0;
}

.page-num ul li {
    font-size: 14px;
    display: inline-block;
    margin: 0 15px;
}

.page-num ul li span {
    font-weight: bold;
    font-size: 16px;
}


/* 〇 */

.page-num2 {
    display: inline-block;
}

.page-num2 ul {
    font-size: 0;
}

.page-num2 ul li {
    font-size: 14px;
    display: inline-block;
    margin: 0 5px;
}

.page-num2 ul li a {
    display: block;
    width: 36px;
    height: 36px;
    text-align: center;
    line-height: 36px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid {
        {
            linkCharColor
        }
    }
    ;
    color: {
        {
            linkCharColor
        }
    }
    ;
}

.page-num2 ul li a:hover {
    background-color: {
        {
            linkActiveCharColor
        }
    }
    ;
    color: #fff;
    text-decoration: none;
}

.page-num2 ul li span a {
    font-weight: bold;
    background-color: {
        {
            linkCharColor
        }
    }
    ;
    color: #fff;
}


/* □ */

.page-num3 {
    display: inline-block;
}

.page-num3 ul {
    font-size: 0;
}

.page-num3 ul li {
    font-size: 14px;
    display: inline-block;
    margin: 0 5px;
}

.page-num3 ul li a {
    display: block;
    width: 36px;
    height: 36px;
    text-align: center;
    line-height: 36px;
    border: 1px solid {
        {
            linkCharColor
        }
    }
    ;
    color: {
        {
            linkCharColor
        }
    }
    ;
}

.page-num3 ul li a:hover {
    background-color: {
        {
            linkActiveCharColor
        }
    }
    ;
    color: #fff;
    text-decoration: none;
}

.page-num3 ul li span a {
    font-weight: bold;
    background-color: {
        {
            linkCharColor
        }
    }
    ;
    color: #fff;
}


/* CSSボタン */

.css-batu,
.css-plus {
    display: inline-block;
    position: relative;
    margin: 0 20px 0 7px;
    padding: 0;
    width: 4px;
    height: 20px;
    background: #333;
    cursor: pointer;
}


/* ×ボタン */

.css-batu {
    transform: rotate(45deg);
}

.css-batu::before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: -8px;
    width: 20px;
    height: 4px;
    margin-top: -2px;
    background: #333;
}


/* +ボタン */

.css-plus::before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: -8px;
    width: 20px;
    height: 4px;
    margin-top: -2px;
    background: #333;
}


/*  TOPへ戻る */

#page-top {
    position: fixed;
    height: 44px;
    bottom: 10px;
    right: 0;
    margin: 0 10px;
    font-size: 20px;
    font-size: 2rem;
    z-index: 999;
}

#page-top a {
    text-decoration: none;
    background: #333;
    opacity: 0.7;
    width: 40px;
    height: 40px;
    line-height: 36px;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

#page-top a::after {
    content: "\e912";
    font-family: 'icomoon';
    color: #fff;
    font-size: 14px;
}

#page-top a:hover {
    text-decoration: none;
}


/*  TOPへ戻る〇 */

#page-top2 {
    position: fixed;
    height: 44px;
    bottom: 20px;
    left: 86%;
    font-size: 20px;
    font-size: 2rem;
    z-index: 999;
}

#page-top2 a {
    background: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    color: #333;
    width: 44px;
    height: 44px;
    text-align: center;
    display: inline-block;
    line-height: 44px;
    vertical-align: middle;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

#page-top2 a::after {
    content: "\e912";
    font-family: 'icomoon';
    color: #fff;
    font-size: 14px;
}

#page-top2 a:hover {
    text-decoration: none;
}

@media screen and (min-width: 960px) {
    #page-top2 {
        position: absolute;
        top: 0;
    }
}


/*--------------------------------------------
  検索フォームスタイル
--------------------------------------------*/

.searchform1,
.searchform2,
.searchform3,
.searchform4 {
    position: relative;
    height: 36px;
}

.searchform1 input,
.searchform2 input,
.searchform3 input,
.searchform4 input {
    border: none;
}

.searchform1 input[type="text"],
.searchform2 input[type="text"],
.searchform3 input[type="text"],
.searchform4 input[type="text"] {
    padding: 0 15px;
    position: absolute;
}

.searchform1 input[type="submit"],
.searchform2 input[type="submit"],
.searchform3 input[type="submit"],
.searchform4 input[type="submit"] {
    position: absolute;
    padding: 0;
}

.searchform1 button,
.searchform2 button,
.searchform3 button,
.searchform4 button {
    position: absolute;
    padding: 0;
}


/* 虫眼鏡ボタン付き検索（searchform1）
--------------------------------------------*/

.searchform1 input[type="text"] {
    background: #eee;
    border-right: none;
}

.sbox1 {
    height: 36px;
    left: 0;
    top: 0;
    width: 260px;
    width: -webkit-calc(100% - 40px);
    width: calc(100% - 40px);
    border-radius: 2px 0 0 2px;
}

.sbox1:hover {
    border: none;
    background: #FFFDF4;
}

.sbtn1 {
    width: 40px;
    height: 36px;
    right: 0;
    top: 0;
    border-radius: 0 2px 2px 0;
    background: #333;
    color: #fff;
    border: none;
    border-left: none;
    font-size: 16px;
    font-size: 1.6rem;
}

.sbtn1::after {
    content: "\e92b";
    font-family: "icomoon";
    font-size: 20px;
    color: #fff;
}

.sbtn1:hover {
    background: #333;
    color: #fff;
}


/* 検索ボタン付き検索（searchform2）
--------------------------------------------*/

.searchform2 input[type="text"] {
    border-right: none;
    border: 1px solid #bfbfbf;
    background: #fff;
}

.searchform2 input[type="text"]:hover {
    /* border: solid 1px #00b7ee; */
}

.sbox2 {
    height: 36px;
    left: 0;
    top: 0;
    width: 240px;
    width: -webkit-calc(100% - 60px);
    width: calc(100% - 60px);
}

.sbtn2 {
    width: 60px;
    height: 36px;
    right: 0;
    top: 0;
    background: #444444;
    color: #fff;
    border: none;
    border-left: none;
    font-size: 16px;
    font-size: 1.6rem;
}

.sbtn2:hover {
    background: #444444;
    color: #fff;
}


/* 虫眼鏡フレーム内検索（#searchform3）
--------------------------------------------*/

.searchform3 {
    /* border: 2px solid #bfbfbf; */
    height: 40px;
}

.searchform3 input[type="text"] {
    border-right: none;
    border: none;
    background: none;
    font-size: 1.2rem;
}

.searchform3:hover {
    border: none;
}

.sbox3 {
    height: 36px;
    left: 0;
    top: 0;
    width: 260px;
    width: -webkit-calc(100% - 40px);
    width: calc(100% - 40px);
    background: none;
}

.sbox3:hover {
    border: none;
}

.sbtn3 {
    width: 40px;
    height: 36px;
    right: 0;
    top: 0;
    background: none;
    color: #333;
    border: none;
    border-left: none;
    font-size: 16px;
    font-size: 1.6rem;
}

.sbtn3::after {
    content: "\e92b";
    font-family: "icomoon";
    font-size: 20px;
    color: #333;
    vertical-align: middle;
}

.sbtn3:hover {
    background: none;
    color: #333;
    border: none;
}


/* 伸びる検索（searchform4）
--------------------------------------------*/

.searchform4 {
    height: 44px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    width: 44px;
}

.searchform4 input[type="text"] {
    background: #ccc;
    border: none;
    border-radius: 22px;
    color: #333;
    cursor: pointer;
    height: 44px;
    opacity: 0;
    outline: none;
    padding: 5px;
    position: absolute;
    top: 0;
    right: 0;
    transition: all 0.7s;
    width: 44px;
    z-index: 5;
}

.searchform4 input[type="text"]:focus {
    cursor: text;
    opacity: 1;
    width: 300px;
}

.searchform4 input[type="submit"] {
    display: none;
}

.sbtn4 {
    border-radius: 50%;
    display: inline-block;
    height: 44px;
    line-height: 44px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    text-align: center;
    width: 44px;
}

.sbtn4::after {
    content: "\e92b";
    font-family: "icomoon";
    font-size: 20px;
    color: #fff;
}


/*------------------------------
  slider
------------------------------*/

#main-image {
    position: relative;
    margin: 0 auto;
    text-align: center;
    overflow: hidden;
}

#main-image img {
    max-width: 100%;
    max-height: 100%;
}

.main-image-slider {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 1040px;
    height: auto;
    margin: 0 auto;
}

.main-image-slider>ul {
    position: absolute;
    z-index: 100;
    top: 0;
    left: 0;
    display: inline-block;
    overflow: hidden;
    height: 336px;
}

.main-image-slider>ul>li {
    display: inline;
    float: left;
    overflow: hidden;
    width: 1040px;
    height: 336px;
    list-style-type: none;
}

.main-image-slider>ul>li span,
.main-image-slider>ul>li a {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.main-image-prev {
    position: absolute;
    right: 10px;
    top: 50%;
    z-index: 999;
    font-size: 22px;
    margin-top: -16px;
}

.main-image-next {
    position: absolute;
    left: 10px;
    top: 50%;
    z-index: 999;
    font-size: 22px;
    margin-top: -16px;
}

.main-image-prev a,
.main-image-next a {
    display: block;
    width: 24px;
    height: 24px;
    line-height: 30px;
    text-align: center;
}

.main-image-prev a:hover,
.main-image-next a:hover {
    text-decoration: none;
}

.main-image-indicator {
    position: absolute;
    z-index: 999;
    right: 0;
    bottom: 5px;
    left: 0;
}

.main-image-indicator ul {
    text-align: center;
}

.main-image-indicator ul li {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: 0 8px;
    pacity: .6;
    border: #FFE18C solid 1px;
    border-radius: 50%;
    background-color: transparent;
}

.main-image-indicator ul li.active {
    background-color: #FFE18C;
}

@media screen and (min-width: 600px) {
    #main-image {
        width: 100%;
        overflow: hidden;
        margin: 0;
        text-align: center;
    }
    .main-image-slider>ul {
        height: 460px;
    }
    .main-image-slider>ul>li {
        width: 100%;
    }
    .main-image-indicator {
        bottom: 6px;
    }
    .main-image-indicator ul {
        font-size: 0;
        margin: 0;
        padding: 0;
    }
    .main-image-indicator ul li {
        width: 10px;
        height: 10px;
        margin: 0 4px;
    }
}

@media screen and (min-width: 1019px) {
    .main-image-prev a,
    .main-image-next a {
        display: block;
        width: 30px;
        height: 30px;
        line-height: 20px;
        text-align: center;
    }
}


/*--------------------------------------
  calendar
--------------------------------------*/

.months {
    font-family: 'メイリオ', 'Meiryo', 'Meiryo UI';
    text-align: center;
    padding: 8px 0;
    margin: auto;
    font-size: 18px;
    font-size: 1.8rem;
}

.schedule-area {
    text-align: center;
    margin-bottom: 24px;
}

.schedule-area .months {
    width: 94%;
    color: #fff;
    background-color: #333;
    padding: 8px 0;
    margin-bottom: 1.0em;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    border-radius: 30px;
}

.schedule-area2 {
    text-align: center;
}

.schedule-area2 .months {
    text-align: left;
    padding: 10px;
}


/* カレンダー線あり
--------------------------------------------*/

.calendar table {
    width: 94%;
    margin: auto;
}

.calendar th,
.calendar td {
    font-size: 13px;
    font-weight: normal;
    padding: 5px 0;
    width: -webkit-calc(94% / 7);
    width: calc(94% / 7);
    text-align: center;
    border: 2px solid #fff;
    margin: 0;
    display: table-cell;
}

.calendar thead th {
    padding: 10px 0;
}

.calendar thead th:first-child {
    color: #d70035;
}

.calendar thead th:last-child {
    color: #006eb0;
}

.calendar td i {
    display: inline-block;
    width: 26px;
    height: 26px;
    line-height: 26px;
}


/* カレンダー線なし
--------------------------------------------*/

.calendar-2 {
    margin-bottom: 24px;
}

.calendar-2 table {
    width: 94%;
    margin: auto;
}

.calendar-2 th,
.calendar-2 td {
    font-size: 13px;
    font-weight: normal;
    padding: 0;
    width: -webkit-calc(94% / 7);
    width: calc(94% / 7);
    text-align: center;
    border: none;
    display: table-cell;
}

.calendar-2 thead {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.calendar-2 thead th {
    background: rgba(246, 246, 247, 0);
    padding: 10px 0;
}

.calendar-2 thead th:first-child {
    color: #d70035;
}

.calendar-2 thead th:last-child {
    color: #006eb0;
}

.calendar-2 tbody {
    padding-top: 10px;
}

.calendar-2 tbody td {
    vertical-align: middle;
    padding: 5px 3px;
}

.calendar-2 tbody td i {
    display: inline-block;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    line-height: 26px;
}


/* イベント色分け */

.e1 i {
    color: #333;
    background-color: #d7d8d8;
    border-radius: 20px;
}

.e2 i {
    color: #fff;
    background-color: #333;
    border-radius: 20px;
}

.e3 i {
    color: #fff;
    background-color: #929292;
    border-radius: 20px;
}

.list-event {
    border-top: 1px solid #d2d2d2;
    padding: 15px 0;
    margin: 0 3%;
    text-align: left;
}

.list-event li {
    display: inline-block;
    line-height: 24px;
    position: relative;
    min-height: 24px;
    margin-bottom: 5px;
    margin-right: 10px;
    padding-left: 32px;
    text-align: left;
    list-style: none;
    font-size: 13px;
    font-size: 1.3rem;
}

.list-event li::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 24px;
    height: 24px;
    content: '';
}

.list-event li.event1::before {
    background-color: #d7d8d8;
    border-radius: 20px;
}

.list-event li.event2::before {
    background-color: #333;
    border-radius: 20px;
}

.list-event li.event3::before {
    background-color: #929292;
    border-radius: 20px;
}


/*--------------------------------------
  header
--------------------------------------*/

#header {
    width: 100%;
    max-width: 1040px;
    height: 75px;
    margin: 0;
    z-index: auto;
}

#header a:hover {
    text-decoration: none;
}

.header-top {
    text-align: center;
    z-index: 1000;
}

.logo {
    width: -webkit-calc(100% - 100px);
    width: calc(100% - 100px);
    margin: auto;
}


/* LOGO画像・テキスト */

.site-name {
    height: 55px;
    font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
    margin: 0;
    padding: 0 5px;
    text-align: left;
    font-size: 16px;
    font-size: 1.6rem;
    color: {
        {
            linkCharColor
        }
    }
    ;
    position: relative;
    overflow: hidden;
}

.site-name img {
    max-width: 100%;
    max-height: 55px;
    width: auto;
    height: auto;
    margin: auto;
}

.site-name a {
    max-height: 55px;
    width: calc(100% - 20px);
    display: block;
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


/* menu */

.menubtn {
    width: 55px;
    height: 55px;
    line-height: 55px;
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1001;
    background: #333;
}

.menubtn a {
    display: block;
}


/* メニューボタン */

#jq-open-btn {
    display: inline-block;
    position: relative;
    width: 55px;
    height: 55px;
}

#jq-open-btn::before {
    content: "\e926";
    font-family: "icomoon";
    font-size: 16px;
    color: #fff;
    line-height: 55px;
}

#jq-open-btn:hover {
    text-decoration: none;
    background: {
        {
            linkActiveCharColor
        }
    }
    ;
}

#jq-open-btn.close::before {
    content: "\e904";
    font-family: "icomoon";
    font-size: 16px;
    color: #fff;
    line-height: 55px;
}

#jq-open-btn b {
    display: none;
}


/* 検索
------------------------------*/

.search-area {
    width: 100%;
    margin: auto;
    padding: 10px;
    background-color: #eee;
}

.searchform3 {
    height: 30px;
    margin: auto;
    background: #fff;
    border-radius: 40px;
}

.searchform3:hover {
    /* border: 1px solid #00b7ee; */
}

.sbox3 {
    left: 40px;
    height: 28px;
    width: -webkit-calc(100% - 40px);
    width: calc(100% - 40px);
}

.sbtn3 {
    height: 28px;
    left: 0;
}


/* グローバルナビ
------------------------------*/

#global-nav {
    display: none;
    z-index: 999;
    width: 100%;
}


/* ヘッダーメニュー
------------------------------*/

.header-menu {
    width: 100%;
    list-style: none;
    margin: 0;
    overflow: hidden;
}

.header-menu li {
    margin: 0;
    float: left;
    font-size: 14px;
    font-size: 1.4rem;
    width: 33.3%;
    width: -webkit-calc(100% / 3);
    width: calc(100% / 3);
}

*::-ms-backdrop,
.header-menu li {
    width: 33.33%;
    /* IE11 */
}

.header-menu li:first-child.mypage,
.header-menu li:nth-child(2).cart {
    width: 50%;
}

.header-menu li:only-child {
    width: 100%;
}

.header-menu li a {
    display: block;
    background-color: #333;
    border-bottom: solid 2px #333;
    color: #fff;
    height: 50px;
    line-height: 50px;
}

.header-menu li a:hover {
    background-color: #333;
    color: #FFF;
    text-decoration: none;
}

.header-menu li a::before {
    content: "";
    font-family: "icomoon";
    color: #fff;
    font-size: 14px;
    margin-right: 6px;
}

.header-menu li.entry a::before {
    content: "\e90a";
}

.header-menu li.logout a::before {
    content: "\e931";
}

.header-menu li.mypage a::before {
    content: "\e927";
}

.header-menu li.cart a::before {
    content: "\e918";
}

.entry a:hover::before,
.logout a:hover::before,
.mypage a:hover::before,
.cart a:hover::before {
    color: #FFF;
}


/* カテゴリーリスト */

.cat-menu {
    width: 100%;
}

.cat-menu li {
    background: #fff;
    border-top: 1px solid #eee;
    font-size: 14px;
    font-size: 1.4rem;
}

.cat-menu li b {
    display: block;
    padding: 15px;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    position: relative;
    border-top: 2px solid #eee;
    letter-spacing: 0.7rem;
}

.cat-menu li b::after {
    content: "\e93b";
    font-family: "icomoon";
    color: #fff;
    font-size: 11px !important;
    position: absolute;
    left: 90%;
    top: 50%;
    /* margin-top: -5px; */
}

.cat-menu li a {
    display: block;
    padding: 15px;
}

.cat-menu li a:hover {
    background-color: #F7F7F7;
}

.cat-menu li li li {
    border-top: none;
}

.cat-menu li li li a {
    font-size: 12px;
    padding: 9px 9px 9px 30px;
}


/*------------------------------
  #container
------------------------------*/

#container {}

@media screen and (min-width: 960px) {
    #container {}
    .site-name a {
        max-height: 180px;
    }
    .site-name img {
        max-width: 100%;
        max-height: 180px;
        height: auto;
        margin: auto;
    }
}

#main,
.main {
    margin: 0 3% 30px;
}

.main {
    margin: 30px;
}

#top-main {
    margin: 0 3%;
}


/* LP */

#body-lp #main {
    margin-top: 0;
}

#body-lp .logo {
    margin-top: 0;
}

#body-lp .item-order {
    width: 100%;
    padding-top: 30px;
}

#body-lp footer {
    position: relative;
}

#body-lp footer .sns {
    text-align: center;
    margin-top: 10px;
}

.lp-img {
    margin-bottom: 30px;
    text-align: center;
}

#main,
.main {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: left;
}

@media screen and (min-width: 960px) {
    .main-article {
        max-width: 1000px;
        margin: 0 auto;
    }
    /* LP */
    #body-lp #header {
        height: auto;
    }
    #body-lp #main {
        margin-top: 0;
    }
    #body-lp .logo {
        margin-top: 0;
    }
}


/* section item block
------------------------------*/

.section-block,
.cat-block {
    clear: both;
    padding: 16px 0 20px;
    width: 100%;
}


/* 見出し */

.section-head,
.item-head {
    padding: 10px 3px;
    margin: 0 0 30px;
    text-align: left;
    border-bottom: 1px solid #929292;
    border-top: 1px solid #929292;
    color: #929292;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
    line-height: 1.0;
    font-feature-settings: "palt";
}

.section-head h2,
.item-head h2 {
    font-weight: normal;
    margin: 0 auto;
    padding: 20px 0;
    letter-spacing: 0.6rem;
    color: #333;
}


/* 見出しh2 */

.title1,
.ttl h2 {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    order: 2;
    font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
    padding-top: 10px;
    font-feature-settings: "palt";
    color: #ccc;
}

.title2 {
    font-size: 20px;
    font-size: 2rem;
    font-weight: normal;
    line-height: 1.5;
    text-align: left;
    font-family: "sans-serif";
}


/* ディスクリプション */

.lead-txt {
    padding: 10px 0 0;
    text-align: center;
}

.lead-txt p {
    text-align: center;
    line-height: 1.5;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 1.0em;
}


/* 見出し:サブタイトル */

.sub-title {
    font-size: 24px;
    font-size: 2.4rem;
    order: 1;
    padding: 0 10px 0 0;
    margin: 0 10px 0 0;
}

.sub-title2 {
    font-size: 20px;
    font-size: 2rem;
}

@media (min-width: 375px) {
    .title1,
    .sub-title {
        font-size: 1.8rem;
    }
    .secondary-head {
        padding: 10px;
    }
    .guide-nav {
        padding: 0 10px;
    }
    .main {
        margin: 0px 20px 30px;
    }
    table.about-tbl {
        margin: 4px auto;
    }
    .list-info {
        padding: 0 20px;
    }
}

@media screen and (min-width: 600px) {
    .main {
        margin: 0px 20px 30px;
    }
    .section-head {
        flex-direction: row;
        margin: 0 0 10px;
    }
    .title1 {
        padding: 0;
        font-size: 1.8rem;
    }
    .title2 {
        font-size: 1.8rem;
    }
    table.about-tbl {
        margin: 4px auto;
    }
    .sub-title .section-head h2 {
        font-size: 1.8rem;
    }
    .footer-logo {
        width: auto;
    }
    .footer-logo img {
        max-width: 200px;
        margin: 0 auto;
    }
    .secondary-head {
        padding: 10px;
    }
    .guide-nav {
        padding: 0 10px;
    }
    .ttl {
        padding: 0px 0 10px;
    }
    .list-info {
        padding: 0 10px;
    }
}

@media (min-width: 1018px) and (max-width: 1159px) {
    #wrapper {
        width: 95%;
    }
    #main-image {
        width: 100%;
    }
    .sub-title,
    .section-head h2 {
        font-size: 2rem;
    }
    .icon-rank {
        width: 26px;
        height: 26px;
        line-height: 26px;
    }
    .icon-rank span {
        font-size: 16px;
    }
    .ttl {
        padding: 20px 0 10px;
    }
    .list-info {
        padding: 0 10px;
    }
}


/* TOP
----------------------------------*/


/* フリーエリア */

#top-shop-message1 {
    text-align: center;
    font-family: serif;
    font-size: 20px;
    line-height: 34px;
    margin: 0;
}

#top-shop-message1,
#top-shop-message2 {
    margin: 0 auto 24px;
    /* max-width: 1000px; */
}

#top-shop-message2 {
    margin: 0;
    padding: 20px;
    border-top: 1px solid #333;
}

#top-shop-message1 h2,
#top-shop-message2 h2 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    padding: 10px 0;
    position: relative;
}

#top-shop-message1 p,
#top-shop-message2 p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 1.5em;
}

#top-shop-message1 .bnr-col3,
#top-shop-message2 .bnr-col3 {
    text-align: center;
}

#top-shop-message1 .bnr-col3 img,
#top-shop-message2 .bnr-col3 img {
    margin: auto;
    margin-bottom: 6px;
}


/* SP landscape 横 */

@media (min-width: 375px) {
    #top-shop-message1 {
        font-size: 1.8rem;
    }
}

@media screen and (min-width: 600px) {
    .section-block #top-shop-message1 {
        font-size: 16px;
        line-height: 2;
    }
    #top-shop-message2 {
        margin: 0;
        padding: 10px;
    }
}

@media screen and (min-width: 960px) {
    #top-shop-message1 .bnr-col3,
    #top-shop-message2 .bnr-col3 {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: center;
    }
}

@media (min-width: 1018px) and (max-width: 1159px) {
    #top-shop-message2 {
        margin: 10px 0;
    }
}


/* お知らせ */

.list-info {
    list-style: none;
    padding: 0 10px;
}

.list-info li {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 10px 0;
    text-align: left;
    line-height: 1.5;
}

.list-info li span {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    margin-bottom: 6px;
}

.list-info li a {
    display: block;
}


/* 商品リスト
----------------------------------*/


/* カラム */

.col-2,
.col-3,
.col-4,
.col-5,
.col-6 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.col-2 li,
.col-3 li,
.col-4 li,
.col-5 li,
.col-6 li {
    width: 50%;
}

.item-photo {
    overflow: hidden;
    margin: auto;
    margin-bottom: 10px;
    position: relative;
    max-width: 250px;
    max-height: 250px;
}

.item-photo img {
    display: block;
    max-width: 100%;
    max-height: 250px;
    width: auto;
    height: auto;
    margin: auto;
}


/* アイコン */

.icon-rank {
    position: absolute;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: #333;
    color: #fff;
    left: 0px;
    top: 0px;
    z-index: 100;
}

.icon-rank span {
    font-weight: bold;
    font-size: 18px;
}

.icon-rank:hover {
    background-color: #333;
    opacity: 50%;
}

.icon-rank-secondary {
    background-color: #d7d8d8;
}

@media screen and (min-width: 600px) {
    .icon-rank span {
        font-size: 1.6rem;
    }
    .icon-rank {
        width: 26px;
        height: 26px;
        line-height: 26px;
    }
}


/* バッチ */

/* バッチ */

  .icon-badge22923::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }

  .icon-badge22923::before{
    content: "おすすめ";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #000;
    color: #fff;
    padding: 4px;
  }

  .icon-badge22924::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }

  .icon-badge22924::before{
    content: "人気";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #dfdfdf;
    color: #000;
    padding: 4px;
  }

  .icon-badge53011::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }

  .icon-badge53011::before{
    content: "お得";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #929292;
    color: #fff;
    padding: 4px;
  }

  .icon-badge53012::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }

  .icon-badge53012::before{
    content: "割引中";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #000;
    color: #fff;
    padding: 4px;
  }

.icn-reservation::before {
  content: "予約商品";
  font-size: 11px;
  line-height: 20px;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 66px;
  height: 20px;
  text-align: center;
  color: #1a130c;
  background: #f3f3f3;
}

a .icn-reservation::before {
  color: #1a130c;
  background: #f3f3f3;
}

.item-detail-name.icn-reservation::before {
  font-size: 16px;
  line-height: 32px;
  position: relative;
  float: left;
  width: 96px;
  height: 32px;
  margin-right: 10px;
}

.item-info {
  text-align: center;
}
.item-info .item-name {
  line-height: 1.3;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 10px;
font-weight: bold;
}
.item-info .item-price {
  margin-top: 10px;
}
.item-info .item-nonstock {
  display: inline-block;
  vertical-align: top;
  font-size: 11px;
  font-weight: normal;
  line-height: 18px;
  margin-right: 6px;
  padding: 0 3px;
  text-align: center;
  color: #f33;
  background: #fff;
}

.tax {
  font-size: 70% !important;
color:b0b0b0;
}

.list-product {
  padding: 0 1%;
}
.list-product li {
  list-style: none;
  margin: 15px 0;
  padding: 0 1.5% 0;
}
.list-product li a {
  display: block;
}


/* 検索・カテゴリーページ
----------------------------------*/

.cat-head {
    padding: 10px;
}

.frame-block,
.ttl {
    padding: 20px 0 10px;
}

.frame-block .title1,
.ttl h2 {
    color: #929292;
}


/* カテゴリ名 */

.cat-name {
    border-bottom: 1px solid #d2d2d2;
    display: block;
    padding: 0 5px 10px;
    font-size: 14px;
    margin-bottom: 10px;
}


/*　並び順／ページ送り */

.sort {
    text-align: right;
    margin-bottom: 1.5em;
}

.cat-head+.sort {
    border-top: 1px solid #e5e5e5;
}

.sort ul {
    padding: 10px 0;
}

.sort ul li {
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 0 6px;
    border-right: 1px solid #333;
}

.sort a {
    text-decoration: underline;
}

.sort ul li:last-child,
.sort ul li:first-child {
    border: none;
}

.item-list-itemcount {
    border-top: 1px solid #e5e5e5;
    text-align: right;
    margin: 15px 0;
    padding: 15px 0;
    font-size: 12px;
    font-size: 1.2rem;
}


/* 検索結果0 */

.product-list {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6;
}


/* 詳細ページ
----------------------------------*/

#item-detail {
    padding-top: 10px;
}

.item-2column {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
}

@media screen and (min-width: 960px) {
    .item-2column {
        -webkit-justify-content: space-between;
        justify-content: space-between;
        flex-direction: row;
    }
}

.item-detail-block {
    margin-bottom: 24px;
}

.item-footer {
    clear: both;
    margin-bottom: 60px;
}

.item-detail-left {
    width: 100%;
    margin-top: 20px;
}

.item-detail-right {
    width: 100%;
}

.item-detail-head {
    border-top: 1px solid #d2d2d2;
    text-align: left;
    padding: 10px 5px;
}

.item-detail-head .ttl {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 10px;
}

.item-detail-head p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.4;
    margin-top: 10px;
}


/* 販売価格 */

.item-detail-price {
    padding: 15px;
    border-top: 1px solid #d2d2d2;
    border-bottom: 1px solid #d2d2d2;
    margin-bottom: 20px;
}

.item-detail-price dt {
    font-size: 18px;
    font-size: 1.8rem;
    display: table-cell;
    vertical-align: middle;
    width: 120px;
}

.item-detail-price dd {
    display: table-cell;
    vertical-align: middle;
}

.item-detail-price .price {
    font-size: 22px;
    font-size: 2.2rem;
}

.item-block a {
    text-decoration: underline;
}


/* 価格・スペック */

.item-detail-block-in,
.item-detail-spec {
    width: 100%;
    padding: 0 3%;
    margin-bottom: 20px;
}

.item-detail-block-in dl,
.item-detail-spec dl {
    display: table;
    width: 98%;
    margin: 0 auto 15px;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
}

.item-detail-block-in dl {
    padding: 0;
}

.item-detail-block-in dt,
.item-detail-spec dt {
    display: table-cell;
    vertical-align: middle;
    width: 120px;
    padding: 0px;
}

.item-detail-block-in dd,
.item-detail-spec dd {
    display: table-cell;
    vertical-align: middle;
    padding: 3px;
    line-height: 1.4;
}

.item-detail-block-in dt {
    width: 7em;
}

.item-detail-category {
    font-size: 14px;
    font-size: 1.4rem;
}

.item-detail-name {
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: normal;
}


/* カートエリア */

.item-detail-cart {
    width: 100%;
    padding: 0 3%;
    margin-bottom: 25px;
}

.item-detail-cart p {
    font-size: 14px;
    margin-bottom: 10px;
    text-align: left;
}

@media (min-width: 600px) and (max-width: 1019px) {
    .item-detail-cart,
    .item-detail-spec {
        padding: 0;
    }
}

@media screen and (max-width: 600px) {
    .item-detail-spec {
        padding: 0;
    }
    .item-footer {
        margin: 10px;
    }
}

@media (min-width: 375px) {
    .item-detail-cart {
        padding: 0 2%;
    }
}


/* バリエーション */


/* select text */

.item-detail-select,
.item-detail-inputtext {
    position: relative;
    width: 100%;
    margin-bottom: 20px;
}

.item-detail-select label,
.item-detail-inputtext input {
    position: relative;
    display: inline-block;
    overflow: hidden;
    width: 100%;
    height: 56px;
    vertical-align: middle;
    border: 1px solid #d2d2d2;
    background-color: #fff;
}

.item-detail-select::before {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 20px;
    width: 0;
    height: 0;
    margin-top: -3px;
    content: '';
    border-width: 8px 5px 0 5px;
    border-style: solid;
    border-color: #333 transparent transparent transparent;
}

.item-detail-select select {
    font-size: 16px;
    line-height: 56px;
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    width: -webkit-calc(100%);
    height: 56px;
    margin: 0;
    padding: 0 45px 0 15px;
    border: 0;
    outline: none;
    background: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

select::-ms-expand {
    display: none;
}


/* radio */

.item-detail-radio {
    overflow: hidden;
    width: 100%;
    margin-bottom: 18px;
    text-align: left;
    overflow: hidden;
    width: 100%;
    margin-bottom: 18px;
}

.item-detail-radio div {
    margin-bottom: 10px;
    padding-bottom: 1px;
}

.item-detail-radio input {
    position: absolute;
    opacity: .0;
}

.item-detail-radio input+label {
    max-width: 100%;
    font-size: 16px;
    line-height: 1;
    position: relative;
    display: inline-block;
    padding-left: 30px;
}

.item-detail-radio input+label::before {
    position: absolute;
    top: 1px;
    left: 0;
    display: block;
    width: 15px;
    height: 15px;
    margin-top: -1px;
    content: '';
    border: 1px solid #999;
    border-radius: 50%;
}

.item-detail-radio input:checked+label::after {
    position: absolute;
    top: 3px;
    left: 3px;
    display: block;
    width: 11px;
    height: 11px;
    content: '';
    border-radius: 50%;
    background-color: #333;
}

.item-detail-radio label {
    font-size: 18px;
    line-height: 2;
    display: block;
    padding: 0;
}

.item-detail-num-count {
    font-size: 0;
    display: flex;
    width: 100%;
    margin-bottom: 18px;
}

.item-detail-num-plus {
    font-size: 14px;
    display: inline-block;
    vertical-align: middle;
}

.item-detail-num-plus a,
.item-detail-num-minus a {
    font-size: 24px;
    line-height: 55px;
    display: block;
    width: 55px;
    height: 55px;
    text-align: center;
    text-decoration: none;
    background-color: #f1f1f1;
    color: #333;
    border: 1px solid #ddd;
}

.item-detail-num-minus {
    font-size: 14px;
    display: inline-block;
    margin-right: 12px;
    vertical-align: middle;
}

.item-detail-num {
    height: 55px;
    margin-right: 12px;
    padding: 0;
    vertical-align: middle;
}

.item-detail-num input[type=number] {
    font-size: 14px;
    line-height: 55px;
    display: block;
    width: 55px;
    height: 55px;
    text-align: center;
    border: solid 1px #d2d2d2;
    -moz-appearance: textfield;
}

.item-detail-num input[type=number]::-webkit-inner-spin-button,
.item-detail-num input[type=number]::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.item-detail-num-select {
    position: relative;
    display: inline-block;
    overflow: hidden;
    width: 100%;
    height: 56px;
    margin-bottom: 18px;
    vertical-align: middle;
    border: 1px solid #d2d2d2;
    background-color: #fff;
}

.item-detail-num-select label::before {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 20px;
    width: 0;
    height: 0;
    margin-top: -3px;
    content: '';
    border-width: 7px 5px 0 4px;
    border-style: solid;
    border-color: #333 transparent transparent transparent;
}

.item-detail-num-select select {
    font-size: 14px;
    line-height: 56px;
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    width: -webkit-calc(100%);
    height: 56px;
    margin: 0;
    padding: 0 0 0 20px;
    text-indent: .01px;
    text-overflow: '';
    border: 0;
    outline: none;
    background: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


/* カートボタン */

.item-detail-cart-btn {
    width: 100%;
    margin-bottom: 20px;
    position: relative;
}

.item-detail-cart-btn a {
    display: block;
    font-size: 20px;
    line-height: 55px;
    width: 100%;
    height: 55px;
    text-align: center;
    color: #fff;
    background-color: #666;
    border-bottom: solid 4px #333;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.item-detail-cart-btn a::before {
    content: "\e918";
    font-family: "icomoon";
    font-size: 26px;
    margin-right: 15px;
}

.item-detail-cart-btn a:hover {
    background-color: #666;
    opacity: 0.5;
    text-decoration: none;
}

.item-detail-txt1,
.item-detail-txt2,
.item-detail-txt3 {
    width: 100%;
}

.item-detail-txt1 p,
.item-detail-txt2 p,
.item-detail-txt3 p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: left;
}

.item-detail-txt2 {
    margin-top: 15px;
    color: #929292;
    font-family: serif;
    font-size: 2.0rem;
    text-align: center;
}

.item-detail-txt3 {
    padding: 20px;
    background: #eee;
    font-size: 1.4rem;
}

@media screen and (min-width: 600px) {
    .item-detail-txt2 {
        font-size: 22px;
    }
}

@media screen and (min-width: 960px) {
    .item-detail-txt2 {
        margin-top: 30px;
    }
}

.item-detail-share {
    margin-bottom: 0;
    text-align: left;
}

.item-detail-share ul {
    padding: 15px 0;
}

.item-detail-share li {
    display: inline-block;
    width: 120px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    margin: 0;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.item-detail-share li a {
    display: block;
    font-size: 14px;
    color: #fff;
}

.item-detail-share li a:hover {
    text-decoration: none;
}

.item-detail-share li.twitter {
    background-color: #55acee;
}

.item-detail-share li.twitter a:hover {
    background-color: #1689e0;
}

.item-detail-share li.facebook {
    background-color: #3b5998;
}

.item-detail-share li.facebook a:hover {
    background-color: #263961;
}

.item-dtail-nostock,
.item-dtail-outofoperiod {
    font-size: 14px;
    font-size: 1.4rem;
    color: #d70035;
    line-height: 1.6;
    margin-bottom: 24px;
}

.item-dtail-stock0 {
    color: #d70035;
}


/* サムネイル付き商品画像
----------------------------*/


/* オープン画像 */


/*overlay*/

.overlay {
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(51, 51, 51, 0.8);
}

.modal-open {
    /* overflow: hidden; */
}

.modal-open .overlay {
    display: block;
}


/* modal */

.modal {
    position: absolute;
    z-index: 9999;
    display: none;
    background-color: #fff;
}

.modal-open .modal {
    display: block;
}

.modal-inner {
    position: relative;
    width: 100%;
}

.modal-img {
    width: 100%;
}

.modal-img img {
    max-width: 640px;
    max-height: 640px;
    width: auto;
    height: auto;
}

.modal-close {
    position: absolute;
    top: -42px;
    right: 0px;
}

.modal-close a {
    display: block;
    width: 32px;
    height: 32px;
}

.modal-close a::before {
    content: "\e904";
    font-family: "icomoon";
    color: #333;
    font-size: 32px;
}


/* 1枚目画像 */

.item-detail-photo-main {
    position: relative;
    padding: 0;
}

.item-detail-photo {
    position: relative;
    overflow: hidden;
    width: 380px;
    height: 380px;
    margin: 0 auto 10px;
}

.item-detail-photo li {
    list-style: none;
    float: left;
    width: 380px;
    height: 380px;
    position: relative;
}

.item-detail-photo img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    margin: auto;
}


/* 商品画像:矢印 */

.item-detail-photo-backbtn,
.item-detail-photo-nextbtn {
    position: absolute;
    top: 50%;
    display: block;
    margin-top: -15px;
}

.item-detail-photo-backbtn a,
.item-detail-photo-nextbtn a {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    color: #fff;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    line-height: 40px;
    text-align: center;
    font-size: 16px;
    background-color: {
        {
            linkCharColor
        }
    }
    ;
}

.item-detail-photo-backbtn a::before,
.item-detail-photo-nextbtn a::before {
    position: absolute;
}

.item-detail-photo-backbtn a:hover,
.item-detail-photo-nextbtn a:hover {
    text-decoration: none;
}

.item-detail-photo-backbtn {
    left: 0;
}

.item-detail-photo-backbtn a::before {
    content: "\e905";
    font-family: "icomoon";
    left: 12px;
}

.item-detail-photo-nextbtn {
    right: 0;
}

.item-detail-photo-nextbtn a::before {
    content: "\e90b";
    font-family: "icomoon";
    right: 10px;
}


/* 商品画像:サムネイル */

.item-detail-thumb {
    width: 100%;
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
}

.item-detail-thumb-photo {
    display: inline-block;
    vertical-align: top;
    width: 60px;
    height: 60px;
    margin: 0 0 10px;
    overflow: hidden;
    position: relative;
    border: 1px solid #d2d2d2;
}

.item-detail-thumb-photo img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: 60px;
    max-width: inherit;
}

.ttl-reservation {
    font-size: 16px;
    line-height: 33px;
    display: inline-block;
    width: 100px;
    height: 33px;
    margin-right: 12px;
    text-align: center;
    font-weight: normal;
    color: #1a130c;
    background: #f3f3f3;
}

@media screen and (max-width: 960px) {
    /* 1枚目画像 */
    .item-detail-photo {
        width: 480px;
        height: 480px;
    }
    .item-detail-photo li {
        width: 480px;
        height: 480px;
    }
}

@media screen and (max-width: 600px) {
    /* サムネイル付き商品画像
  ----------------------------*/
    /* オープン画像 */
    .nav-open {
        overflow: hidden;
    }
    .nav-open .overlay {
        display: block;
    }
    /* modal */
    .modal-img img {
        max-width: 340px;
        max-height: 340px;
        width: auto;
        height: auto;
    }
    .modal-close {
        position: absolute;
        top: -30px;
    }
    .modal-close a {
        display: block;
        width: 24px;
        height: 24px;
    }
    .modal-close a::before {
        font-size: 24px;
    }
    /* 1枚目画像 */
    .item-detail-photo-main {
        margin: 0 auto;
    }
    .item-detail-photo {
        width: 300px;
        height: 300px;
    }
    .item-detail-photo ul {
        width: 100%;
        height: 300px;
        margin: 0 auto;
    }
    .item-detail-photo ul li {
        display: block;
        width: 300px;
        height: 300px;
        margin: 0;
    }
    /* 商品画像:サムネイル */
    .item-detail-thumb-photo {
        width: 48px;
        height: 48px;
    }
}


/*--------------------------------------
  #secondary
--------------------------------------*/

#secondary {
    width: 100%;
    padding: 20px 0;
    border-top: 1px solid #333;
}

#secondary .left-block,
#secondary .right-block {
    width: 100%;
    padding: 0 3%;
    margin: 0 auto;
}


/* 見出し */

.secondary-head {
    padding: 10px 0;
    position: relative;
    margin-bottom: 1.0em;
    color: #929292;
}

.guide-nav {
    width: 100%;
    text-align: left;
}

.guide-nav li {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 10px;
}

.guide-nav li a {
    display: block;
    padding: 0 30px 0 0;
}

.guide-nav li a:hover {
    display: block;
    padding: 0 30px 0 0;
}


/* カレンダー
--------------------------------------------*/

.schedule-area2 {
    margin-bottom: 10px;
    width: 100%;
}

.schedule-area2 .months {
    text-align: left;
    padding: 10px;
    font-size: 16px;
    font-size: 1.6rem;
}

.list-event {
    margin: 0;
    padding: 20px 0;
    text-align: right;
}

.list-event li {
    font-size: 12px;
    font-size: 1.2rem;
}

.footer-logo {
    width: 90%;
    text-align: center;
    font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
    margin: auto;
    margin-bottom: 15px;
}

.footer-logo a {
    font-size: 18px;
    font-size: 1.8rem;
    display: inline-block;
}

.footer-logo img {
    margin: 0 auto 15px;
}


/* SNS
--------------------------------------------*/

.sns {
    padding: 0 3%;
    margin-bottom: 15px;
}

.sns li {
    text-align: center;
    margin: 0 5px;
}

.sns li a {
    display: block;
    width: 34px;
    height: 34px;
    line-height: 34px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: #fff;
    font-size: 26px;
    color: #333;
    text-decoration: none;
}

.sns li a::before {
    content: "";
    font-family: 'icomoon';
    color: #333;
}

.sns li a.twitter::before {
    content: "\e913";
}

.sns li a.facebook::before {
    content: "\ea90";
}


/*--------------------------------------
  #footer
--------------------------------------*/

#footer {
    width: 100%;
    max-width: 1040px;
    padding: 15px 3%;
    margin: 0 auto;
    text-align: center;
    border-top: 3px solid #333;
}

.copyright {
    line-height: 1.4;
    font-size: 11px;
    font-size: 1.1rem;
    width: 100%;
    padding: 0 3%;
}

@media screen and (min-width: 768px) {
    /* ----------------------------
    768px
  ---------------------------- */
    /* LP */
    #body-lp #container {
        padding: 30px 0;
    }
    #body-lp .item-order {
        width: 60%;
        margin: 0 auto;
    }
    #body-lp #page-top {
        bottom: 48px;
    }
    #body-lp footer .sns {
        position: absolute;
        right: 0;
        top: 10px;
    }
    /* section item block
  ------------------------------*/
    .section-block,
    .cat-block {
        padding: 20px 0 20px;
    }
    /* お知らせ */
    .list-info li {
        text-align: left;
        clear: both;
    }
    .list-info li span {
        width: 120px;
        float: left;
    }
    .list-info li a {
        margin-left: 120px;
    }
    /* 商品リスト
  ---------------------------*/
    /* カラム */
    .col-3 li,
    .col-4 li,
    .col-5 li,
    .col-6 li {
        width: 33.3333%;
        width: -webkit-calc(100% * 0.33333);
        width: calc(100% * 0.33333);
        padding: 0 1.5%;
    }
    .item-photo {
        max-height: 260px;
    }
    /*--------------------------------------
    #secondary
  --------------------------------------*/
    #secondary {
        padding: 24px 0;
    }
    /* カレンダー */
    .block-in {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex-flow: wrap;
    }
    .schedule-area2 {
        width: 46%;
        margin-right: 2%;
    }
    /*--------------------------------------
    #footer
  --------------------------------------*/
    .footer-logo a {
        font-size: 20px;
        font-size: 2rem;
    }
    .footer-logo img {
        width: auto;
    }
}

@media screen and (min-width: 960px) {
    /* ----------------------------
    960px
  ---------------------------- */
    #main,
    .main {
        margin: 0 10px 30px;
    }
    #top-main {
        margin: 0;
    }
    /*--------------------------------------
    header
  --------------------------------------*/
    #header {
        height: 80px;
    }
    .header-top {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        height: 80px;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: spsace-between;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding-top: 0;
        border-bottom: 1px solid #333;
        background-color: #fff;
    }
    /* menu */
    .menubtn {
        display: none;
    }
    .logo {
        width: 100%;
        text-align: center;
        overflow: hidden;
        height: 260px;
    }
    /* LOGO画像・テキスト */
    .site-name {
        height: 330px;
        margin: auto;
        padding: 15px;
        font-size: 20px;
        font-size: 2rem;
    }
    .site-name img {
        margin: 0 auto;
    }
    .site-name a {
        height: auto;
    }
    /* 検索
  ------------------------------*/
    .search-area {
        background-color: transparent;
        width: 280px;
        margin: 0 auto;
        padding: 0;
    }
    .searchform3 {
        background: #f4f4f4;
    }
    .searchform3 input[type=text] {
        max-width: 250px;
        width: 100%;
    }
    /* グローバルナビ
  ------------------------------*/
    #global-nav {
        display: block;
    }
    /* ヘッダーメニュー
  ------------------------------*/
    .header-menu {
        width: 38%;
        margin: 0 0 0 auto;
    }
    .header-menu li {
        width: 30.8%;
        margin-left: 4px;
    }
    .header-menu li:only-child {
        width: 98%;
    }
    .header-menu li:first-child.mypage,
    .header-menu li:nth-child(2).cart {
        width: 48%;
    }
    .header-menu li a {
        height: 34px;
        line-height: 30px;
        border-radius: 4px;
    }
    /* カテゴリーリスト */
    .cat-menu {
        width: 20%;
        text-align: center;
        height: 35px;
        margin-bottom: 0px;
        background: #808080;
        margin-right: auto;
        border-radius: 5px;
    }
    .cat-menu li {
        background-color: transparent;
        display: inline-block;
        font-size: 14px;
        font-size: 1.4rem;
        border-top: none;
        line-height: 0.2rem;
    }
    .cat-menu li b {
        border-top: none;
    }
    .cat-menu li b::after {
        left: 85%;
    }
    .cat-menu li a {
        text-align: left;
    }
    li.cat-dropdown {
        position: relative;
    }
    li.cat-dropdown b {
        padding: 16px 30px;
        font-size: 16px;
        font-size: 1.4rem;
        color: #fff;
        letter-spacing: 0.1rem;
    }
    li.cat-dropdown b::after {
        content: "\e93b";
        margin-left: 6px;
    }
    li.cat-dropdown>ul {
        position: absolute;
        top: 35px;
        left: -40px;
        width: 271px;
        z-index: 2000;
    }
    li.cat-dropdown>ul>li {
        display: block;
        width: 80%;
        border-top: 1px solid #eee;
    }
    li.cat-dropdown>ul>li li {
        width: 100%;
        border-top: 1px solid #eee;
    }
    li.cat-dropdown>ul li a {
        display: block;
        background-color: rgba(255, 255, 255, 0.9) !important;
        border: none !important;
        padding: 6px 15px !important;
        text-align: left;
        line-height: 1.4;
    }
    li.cat-dropdown>ul li a::after {
        content: "";
    }
    .cat-menu li ul {
        display: none;
    }
    .cat-menu li ul li ul {
        width: 100%;
    }
    .cat-menu li ul li ul li a {
        padding-left: 30px !important;
    }
    .cat-menu li:hover ul {
        display: block;
    }
    /* section item block
  ------------------------------*/
    .section-block,
    .cat-block {
        padding: 30px 0;
    }
    /* 見出し */
    .item-head {
        margin-bottom: 2.0em;
        flex-direction: row;
    }
    .section-head {
        margin-bottom: 100px;
        flex-direction: row;
    }
    .section-head.news_head {
        margin-bottom: 50px;
        flex-direction: row;
    }
    /* 見出しh2 */
    .title1,
    .ttl h2 {
        font-size: 22px;
        font-size: 2.2rem;
        padding: 0;
    }
    .title2 {
        font-size: 16px;
        font-size: 1.6rem;
        font-family: sans-serif;
        font-weight: bold;
        letter-spacing: 0.1rem;
        color: #333;
    }
    /* 見出し:サブタイトル */
    .sub-title {
        font-size: 22px;
        font-size: 2.2rem;
        border-right: 1px solid #929292;
        padding: 0 10px 0 0;
        margin: 0 10px 0 0;
    }
    .sub-title2 {
        font-size: 24px;
        font-size: 2.4rem;
    }
    /* TOP
  ----------------------------------*/
    #top-shop-message1,
    #top-shop-message2 {
        margin: 0 auto 30px;
        padding: 0;
    }
    #top-shop-message1 h2,
    #top-shop-message2 h2 {
        font-size: 26px;
        font-size: 2.6rem;
        padding: 15px 0;
    }
    #top-shop-message1 p,
    #top-shop-message2 p {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.65;
    }
    #top-shop-message2 {
        padding: 30px 10px;
        border-top: 1px solid #333;
    }
    /* 商品リスト
  ---------------------------*/
    /* カラム */
    .col-3 li {
        padding: 0 2% 0 0;
    }
    /* カラム */
    .col-4 li {
        width: 25%;
        margin: 0 0 30px;
        padding: 0 2% 0 0;
    }
    .col-5 li {
        width: 20%;
        margin: 0 0 30px;
        padding: 0 2% 0 0;
    }
    .col-6 li {
        width: -webkit-calc(100% * 0.1666);
        width: calc(100% * 0.1666);
        margin: 0 0 30px;
        padding: 0 1%;
    }
    .list-product {
        padding: 0;
    }
    /* 検索・カテゴリーページ
  ----------------------------------*/
    .cat-head,
    .frame-block,
    .ttl {
        padding: 20px 0 30px;
    }
    /*　並び順／ページ送り */
    .sort {
        margin-bottom: 40px;
    }
    .sort ul {
        padding: 20px 0;
    }
    .sort ul li {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 0 10px;
    }
    .item-list-itemcount {
        font-size: 14px;
        font-size: 1.4rem;
    }
    /* 詳細ページ
  ----------------------------------*/
    .item-detail-left {
        width: 560px;
        margin-top: 40px;
    }
    .item-detail-right {
        width: -webkit-calc(100% - 600px);
        width: calc(100% - 600px);
        margin-top: 40px;
    }
    /* 価格・スペック */
    .item-detail-block-in,
    .item-detail-spec {
        padding: 0;
    }
    /* カートエリア */
    .item-detail-cart {
        padding: 0;
    }
    .item-detail-txt1,
    .item-detail-txt2,
    .item-detail-txt3 {
        padding: 0;
    }
    /*--------------------------------------
    #secondary
  --------------------------------------*/
    #secondary {
        padding: 40px 0;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
    }
    #secondary .left-block {
        width: 300px;
        padding: 0 30px;
    }
    #secondary .right-block {
        width: -webkit-calc(100% - 300px);
        width: calc(100% - 300px);
    }
    .nav-1 li {
        list-style-type: circle;
    }
    .nav-1 li ul li {
        list-style-type: none;
        display: inline-block;
        margin-right: 15px;
    }
    /*--------------------------------------
    #footer
  --------------------------------------*/
    #footer {
        padding: 30px 0;
    }
    .copyright {
        font-size: 12px;
        font-size: 1.2rem;
    }
    #body-lp .copyright {
        font-size: 12px;
        font-size: 1.2rem;
    }
}


/* ログインページ
----------------------------------*/

#main-image+div#login-error-message {
    border-top-width: 1px;
    border-top-style: solid;
}

#top-shop-message1 {
    margin: 30px 0;
}

#top-shop-message2 {
    margin: 30px 0;
}

#login-error-message {
    font-size: 12px;
    margin: 20px 10px;
    padding: 10px;
    text-align: center;
}

#login-message {
    margin: 30px 10px 0;
}

.login-tbl {
    display: block;
    width: calc(100% - 20px);
    margin: 20px 10px 20px;
}

.login-tbl tbody,
.login-tbl tr {
    display: block;
    width: 100%;
}

.login-tbl th {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.2;
    display: block;
    padding: 10px;
    text-align: left;
    border: none;
    background: none;
}

.login-tbl td {
    font-size: 14px;
    font-weight: normal;
    display: block;
    padding: 10px;
    vertical-align: top;
    border: none;
}

.login-tbl td input[type=text],
.login-tbl td input[type=password] {
    font-size: 16px;
    line-height: 36px;
    width: 100%;
    height: 36px;
    padding: 0 10px;
    border: #d0d0d0 solid 1px;
}

.login-link ul li {
    margin-top: 1em;
}

.login-btn {
    font-size: 15px;
    margin-bottom: 25px;
    text-align: center;
}

.login-btn a {
    font-size: 16px;
    font-weight: normal;
    line-height: 44px;
    position: relative;
    display: inline-block;
    width: 152px;
    height: 44px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background-color: #666;
}

.login-link {
    margin-bottom: 60px;
}

.login-link ul li {
    text-align: center;
    list-style: none;
}

.login-link ul li a {
    text-decoration: underline;
}

@media screen and (min-width: 960px) {
    .body-login .main {
        float: none;
        width: 785px;
        margin-right: auto;
        margin-left: auto;
    }
    .body-login .footer-logo {
        float: none;
        width: 100%;
        text-align: center;
    }
    #login-error-message {
        font-size: 14px;
        margin: 30px 0 40px;
        padding: 8px 15px;
        text-align: left;
        color: #e6503f;
        border: #e6503f solid 1px;
    }
    #login-message {
        margin: 30px 0;
        text-align: center;
    }
    .login-tbl {
        max-width: 785px;
        display: table;
        margin: 15px auto;
    }
    .login-tbl tbody {
        display: table-row-group;
    }
    .login-tbl tr {
        display: table-row;
    }
    .login-tbl th {
        font-size: 16px;
        font-weight: normal;
        line-height: 36px;
        width: 200px;
        text-align: left;
        vertical-align: top;
        display: table-cell;
    }
    .login-tbl td {
        text-align: left;
        display: table-cell;
    }
}


/* 特商法・送料についてページ
----------------------------------*/

.payment-content tr:first-child td {
    font-weight: bold;
    background: #f6f6f7;
    text-align: center;
}

.payment-content td {
    text-align: right;
}


/* notfoundページ
----------------------------------*/

.notfound {
    font-size: 24px;
    margin-top: 90px;
    margin-bottom: 60px;
}

@media only screen and (max-width: 600px) {
    .notfound {
        font-size: 16px;
        margin: 50px 10px 0;
    }
}

@media screen and (min-width: 1200px) {
    /* ----------------------------
    1200px
  ---------------------------- */
}

.wysiwyg-data html,
.wysiwyg-data address,
.wysiwyg-data blockquote,
.wysiwyg-data body,
.wysiwyg-data dd,
.wysiwyg-data div,
.wysiwyg-data dl,
.wysiwyg-data dt,
.wysiwyg-data fieldset,
.wysiwyg-data form,
.wysiwyg-data frame,
.wysiwyg-data frameset,
.wysiwyg-data h1,
.wysiwyg-data h2,
.wysiwyg-data h3,
.wysiwyg-data h4,
.wysiwyg-data h5,
.wysiwyg-data h6,
.wysiwyg-data noframes,
.wysiwyg-data ol,
.wysiwyg-data p,
.wysiwyg-data ul,
.wysiwyg-data center,
.wysiwyg-data dir,
.wysiwyg-data hr,
.wysiwyg-data menu,
.wysiwyg-data pre {
    display: block;
    unicode-bidi: embed;
}

.wysiwyg-data {
    padding: 20px;
    line-height: normal;
    text-align: left;
    font-size: 14px;
}

.wysiwyg-data li {
    display: list-item;
}

.wysiwyg-data head {
    display: none;
}

.wysiwyg-data table {
    display: table;
}

.wysiwyg-data tr {
    display: table-row;
}

.wysiwyg-data thead {
    display: table-header-group;
}

.wysiwyg-data tbody {
    display: table-row-group;
}

.wysiwyg-data tfoot {
    display: table-footer-group;
}

.wysiwyg-data col {
    display: table-column;
}

.wysiwyg-data colgroup {
    display: table-column-group;
}

.wysiwyg-data td,
.wysiwyg-data th {
    display: table-cell;
}

.wysiwyg-data caption {
    display: table-caption;
}

.wysiwyg-data th {
    font-weight: bolder;
    text-align: center;
}

.wysiwyg-data caption {
    text-align: center;
}

.wysiwyg-data body {
    margin: 8px;
}

.wysiwyg-data h1 {
    font-size: 20px;
    font-size: 2rem;
    margin: .67em 0;
}

.wysiwyg-data h2 {
    font-size: 18px;
    font-size: 1.8rem;
    margin: .75em 0;
}

.wysiwyg-data h3 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: .83em 0;
}

.wysiwyg-data h4,
.wysiwyg-data p,
.wysiwyg-data blockquote,
.wysiwyg-data ul,
.wysiwyg-data fieldset,
.wysiwyg-data form,
.wysiwyg-data ol,
.wysiwyg-data dl,
.wysiwyg-data dir,
.wysiwyg-data menu {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 1.12em 0;
    color: #333;
}

.wysiwyg-data h5 {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 1.5em 0;
}

.wysiwyg-data h6 {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 1.67em 0;
}

.wysiwyg-data h1,
.wysiwyg-data h2,
.wysiwyg-data h3,
.wysiwyg-data h4,
.wysiwyg-data h5,
.wysiwyg-data h6,
.wysiwyg-data b,
.wysiwyg-data strong {
    font-weight: normal;
}

.wysiwyg-data blockquote {
    margin-left: 40px;
    margin-right: 40px;
}

.wysiwyg-data i,
.wysiwyg-data cite,
.wysiwyg-data em,
.wysiwyg-data var,
.wysiwyg-data address {
    font-style: italic;
}

.wysiwyg-data pre,
.wysiwyg-data tt,
.wysiwyg-data code,
.wysiwyg-data kbd,
.wysiwyg-data samp {
    font-family: monospace;
}

.wysiwyg-data pre {
    white-space: pre;
}

.wysiwyg-data button,
.wysiwyg-data textarea,
.wysiwyg-data input,
.wysiwyg-data select {
    display: inline-block;
}

.wysiwyg-data big {
    font-size: 120%;
}

.wysiwyg-data small,
.wysiwyg-data sub,
.wysiwyg-data sup {
    font-size: 86%;
}

.wysiwyg-data sub {
    vertical-align: sub;
}

.wysiwyg-data sup {
    vertical-align: super;
}

.wysiwyg-data table {
    border-spacing: 2px;
}

.wysiwyg-data thead,
.wysiwyg-data tbody,
.wysiwyg-data tfoot {
    vertical-align: middle;
}

.wysiwyg-data td,
.wysiwyg-data th,
.wysiwyg-data tr {
    vertical-align: inherit;
}

.wysiwyg-data s,
.wysiwyg-data strike,
.wysiwyg-data del {
    text-decoration: line-through;
}

.wysiwyg-data hr {
    border: 1px inset;
}

.wysiwyg-data ol,
.wysiwyg-data ul,
.wysiwyg-data dir,
.wysiwyg-data menu,
.wysiwyg-data dd {
    margin-left: 40px;
}

.wysiwyg-data ol {
    list-style-type: decimal;
}

.wysiwyg-data ol ul {
    margin-top: 0;
    margin-bottom: 0;
}

.wysiwyg-data ul ol,
.wysiwyg-data ul ul {
    margin-top: 0;
    margin-bottom: 0;
}

.wysiwyg-data ol ol {
    margin-top: 0;
    margin-bottom: 0;
}

.wysiwyg-data u,
.wysiwyg-data ins {
    text-decoration: underline;
}

.wysiwyg-data br:before {
    content: "\A";
    white-space: pre-line;
}

.wysiwyg-data center {
    text-align: center;
}

.wysiwyg-data :link,
.wysiwyg-data :visited {
    text-decoration: underline;
}

.wysiwyg-data :focus {
    outline: thin dotted invert;
}

.wysiwyg-data table {
    border: solid 1px;
    border-collapse: separate;
    border-color: #c0c0c0 #c0c0c0 #808080 #808080;
    border-spacing: 2px;
    width: auto;
}

.wysiwyg-data table tr td {
    border: solid 1px;
    border-color: #808080 #808080 #c0c0c0 #c0c0c0;
    padding: 0;
}

.item-comment .wysiwyg-data table tr td {
    background: #fff;
}

.wysiwyg-data ul {
    list-style-type: disc;
}

.wysiwyg-data ul li {
    list-style-type: disc;
}

.wysiwyg-data ol {
    list-style-type: decimal;
}

.wysiwyg-data BDO[DIR="ltr"] {
    direction: ltr;
    unicode-bidi: bidi-override;
}

.wysiwyg-data BDO[DIR="rtl"] {
    direction: rtl;
    unicode-bidi: bidi-override;
}

.wysiwyg-data *[DIR="ltr"] {
    direction: ltr;
    unicode-bidi: embed;
}

.wysiwyg-data *[DIR="rtl"] {
    direction: rtl;
    unicode-bidi: embed;
}

@media print {
    .wysiwyg-data h1 {
        page-break-before: always;
        page-break-after: avoid;
    }
    .wysiwyg-data h2,
    .wysiwyg-data h3,
    .wysiwyg-data h4,
    .wysiwyg-data h5,
    .wysiwyg-data h6 {
        page-break-after: avoid;
    }
    .wysiwyg-data ul,
    .wysiwyg-data ol,
    .wysiwyg-data dl {
        page-break-before: avoid;
    }
}

ata *[DIR="rtl"] {
    direction: rtl;
    unicode-bidi: embed;
}


/* orignal
----------------------------------*/

.mainv {
    width: 100%;
}

.mainv img {
    width: 100%;
    margin: 0 auto;
}

.inner2 {
    max-width: 1080px;
    margin: 0 auto;
    width: 100%;
}

.flex {
    display: flex;
}

.jc-sb {
    justify-content: space-between;
}

.jc-c {
    justify-content: center;
}

.fw-w {
    flex-wrap: wrap;
}

.ai-fs {
    height: auto;
    align-items: flex-start;
}

.ai-c {
    align-items: center;
}

.header h1 {
    display: none;
}

.message-size {
    line-height: 2!important;
    font-weight: 500;
    font-size: 17px;
    color: #808080;
}

.left-posi::after {
    max-width: 250px;
    display: block;
    content: "";
}

.section-head h2 {
    font-weight: bold;
}

p.f-bold {
    font-weight: 700;
    line-height: 1.7;
    color: #333;
}

#top-shop-message2 {
    margin: 30px 0 0;
}

.section-block, .cat-block {
    padding: 30px 0 0;
}

@media (max-width: 1080px) {
    .inner2 {
        padding: 0 20px;
    }
}

@media (max-width: 500px) {
    .header-top .inner2 {
        padding: 0;
    }
    .inner2.shop-inner {
        padding: 0;
    }
    #top-shop-message1 {
        font-size: 1.5rem;
    }
}
