@charset "utf-8";

*,
*:before,
*:after {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
}

/* reset */
body {
    margin: 0;
    padding: 0;
    border: 0;
    line-height: 1.5;
    word-wrap: break-word;
    letter-spacing: 0.05em;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}


#sps-menu #cart-icon .number_comma {
    line-height: 15px;
}

div.sps-cartaddCartlink {
    background: #C90916;
}

input:not(input[type="radio"], input[type="checkbox"]),
select {
    vertical-align: middle;
    -webkit-appearance: none;
}

input[name="search"] {
    border: 1px solid #707070;
}


input,
select,
textarea {
    font-size: 16px;
    background-color: transparent;
}

input::placeholder,
select::placeholder,
textarea::placeholder {
    font-size: 14px;
}

ul,
li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}


blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
    color: #383838;
}

a:hover {
    color: #3B91D6
}

ins {
    background-color: #ff9;
    color: #383838;
    text-decoration: none;
}

mark {
    background-color: #ff9;
    color: #383838;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

form {
    margin: 0;
}

hr {
    margin: 0 auto;
}

.titlebar+aside .listmenu li,
.footer ul li,
.formlist ul li {
    margin: 0;
    background: transparent;
}

/* tag setting */
body {
    font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
    background: white;
}

input,
textarea {
    font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
    padding: 2px;
}

pre {
    font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}

textarea {
    width: 100%
}

select {
    font-size: 14px;
    padding: 2px 5px;
}

img {
    max-width: 100%
}

p {
    margin: 0;
    padding: 0;
}

/* system class */
p.full {
    margin: 10px;
}

.full_img {
    width: 100%;
}

.productimg {
    width: 100%;
}

.logoimg {
    width: 260px;
}

.searchbutton {
    width: 60px;
    height: 50px;
}

.imgharf {
    width: 50%
}

.catalogimg {
    width: 142px;
}

.img72 {
    margin: 0 1px;
    width: 17%;
}

.img100 {
    margin: 0 1px;
    width: 100px;
}

.clearof {
    overflow: hidden;
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.text_s {
    font-size: 12px;
}

.text_1 {
    color: #383838;
    font-size: 12px;
}

.border_1 {
    margin: 10px 0;
    padding: 10px;
}

.more {
    text-align: right
}

.red {
    color: #C90916 !important;
}

.gray {
    color: #7E7E7E
}

.f_l {
    float: left;
}

.f_r {
    float: right;
}

.input_l input {
    width: 100%
}

.input_m input {
    width: 50%
}

.input_s input {
    width: 20%;
}

.input_2 input {
    width: 40%;
}

.dib {
    display: inline-block;
}

/* layout */
#page {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    font-size: 14px;
    color: #383838;
}

#main {
    margin: 0 auto;
    text-align: center
}

#sps-menu {
    box-shadow: 0 2px 3px #eaeaea;
}


#sps-menu ul li {
    height: 40px;
}

#sps-comhead-logo img {
    height: 100%;
}


/* header */
#header {
    margin: 0 auto 10px;
}

#header section {
    margin: 0;
    width: 100%;
}

#header nav {
    margin: 10px auto 10px;
    text-align: center;
    width: 100%;
}

#header nav a {
    text-decoration: none
}

/* header common */
#header ul {
    list-style-type: disc;
    padding: 0 25px
}

#header ol {
    list-style-type: decimal;
    padding: 0 25px
}

/* header toppage */
#top_header ul {
    list-style-type: disc;
    padding: 0 25px
}

#top_header ol {
    list-style-type: decimal;
    padding: 0 25px
}

.logo {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.logo .l {
    float: left;
}

.logo .r {
    float: right;
}

/* contents */
#contents {
    padding: 0 16px;
}

#contents>#contents {
    padding: 0;
}

.formbox section {
    background: transparent;
}

/* footer */
#footer {
    background: transparent;
}

#footer section {
    background: transparent;
    padding: 0;
    border: none;
}

#footer section>p.ch {
    background: #C90916;
    color: white;
    font-size: 14px;
    font-weight: bold;
    margin: 0;
    padding: 10px 0 0;
    text-align: center;
}

#footer section>p.ch a {
    color: white;
}

#footer section>p.copy {
    background: #C90916;
    color: white;
    font-size: 12px;
    margin: 0;
    padding: 10px 0;
    text-align: center;
}

#footer .footer aside ul.listmenu {
    border: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-box-shadow: none;
    background: transparent;
    padding-top: 5px;
    margin: 5px 0 15px;
}

#footer .footer aside ul.listmenu li {
    background: transparent;
    border: none;
    line-height: 1;
}

#footer .footer aside ul.listmenu li a {
    color: #383838;
    border: none;
    border-bottom: 1px solid #383838;
    -webkit-border-radius: 0;
    border-radius: 0;
    padding: 15px 10px;
    margin: 0;
    font-size: 14px;
    position: relative;
}

#footer .footer aside ul.listmenu li:first-child a {
    border-top: 1px solid #383838;
}

#news,
.mp_newlistpattern_layout4,
.mp_ranklistpattern_layout4 {
    padding-bottom: 60px;
}

#news,
#searchbox2,
#pi_relate {
    padding-top: 60px;
}


#contents>.title {
    margin: 0;
}

/* .title h1, */
#news .title h1,
.single-feature,
.single-summary,
#contents section .title_c h1,
#contents section .title_c h2,
#mp_txt_info,
#mp_txt_new,
#mp_txt_rank,
#mp_txt_rec,
#mp_txt_cat,
#mp_txt_search,
#pi_relate .title h1,
.titlebar_list .title h1,
.titlebar_list:nth-child(3)+section .title h1,
.intro-title,
.intro-text,
.oseibo-title,
.oseibo-text,
.mincho {
    font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", YuMincho, "游明朝", "HG明朝E", serif;
}

/* .title h1, */
#news .title h1,
.single-summary,
#contents section .title_c h1,
#contents section .title_c h2,
#mp_txt_info,
#mp_txt_new,
#mp_txt_rank,
#mp_txt_rec,
#mp_txt_cat,
#mp_txt_search,
#pi_relate .title h1,
.titlebar_list .title h1,
.titlebar_list:nth-child(3)+section .title h1 {
    font-size: 20px !important;
    padding: 0 0 0 10px !important;
    font-weight: bold;
    border-left: 2px solid #C90916;
    line-height: 1 !important;
    margin: 0 0 10px;
    text-align: left;
    background-color: transparent !important;
    color: #383838;
    border-radius: 0;
}

#mp_txt_info {
    line-height: 1.3 !important;
}


#pi_relate .title {
    padding-bottom: 10px;
}

#contents section .title_c {
    margin-top: 40px;
    margin-bottom: 30px;
}

#contents section .title_c h1 {
    line-height: 1.3 !important;
}

.title img {
    margin: 0;
    vertical-align: top;
    margin-left: 5px;
}




.title p {
    float: right;
    margin: 0;
    padding: 0;
}

.title p a {
    margin: 0 auto 0;
    padding: 16px 10px 4px 26px;
    height: 20px;
    text-decoration: none;
    font-size: 10px;
    color: #383838;
    vertical-align: middle;
    text-align: left;
    background: url(../img/theme11/title_p_bg.png) no-repeat left 12px;
}

.titlebar {
    padding: 0;
    margin: 0;
    vertical-align: middle;
    text-align: left;
}

.titlebar .open {
    text-align: left;
    padding: 10px 4px;
    background-image: url(../img/theme11/minus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar .open.active {
    background-image: url(../img/theme11/plus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar .closed {
    text-align: left;
    padding: 10px 4px;
    background-image: url(../img/theme11/plus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar .closed.active {
    background-image: url(../img/theme11/minus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar_g .open {
    padding: 10px 4px;
    background-image: url(../img/theme11/minus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar_g .open.active {
    background-image: url(../img/theme11/plus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar_g .closed {
    padding: 10px 4px;
    background-image: url(../img/theme11/plus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar_g .closed.active {
    background-image: url(../img/theme11/minus2.png);
    background-repeat: no-repeat;
    background-position: 97% center;
}

.titlebar_g {
    padding: 0 4px;
    margin: 0;
    font-size: 120%;
    background: url("../img/theme11/gradation_green_401.png") repeat-x 97% center;
    color: #ffffff;
    text-shadow: none;
    vertical-align: middle;
    text-align: left
}

.titlebar_b+aside {
    text-align: left;
    padding: 10px 0;
}

/* news */
.listmenu a span.date {
    color: #383838;
    display: block;
}

.date.text-right {
    padding: 10px;
}

.listmenu a p.date {
    margin-left: 10px;
}

.note {
    color: #464646;
    font-size: 75%
}

/* listmenu */
section .listmenu {
    margin: 5px;
    word-wrap: break-word;
    background-color: transparent;
    -webkit-border-radius: 0;
    border-radius: 0;
    border: none;
}

.listmenu li {
    list-style-type: none;
    font-size: 14px;
    margin-bottom: 5px;
}

.listmenu li a,
.titlebar+aside a {
    padding: 6px 17px 6px 5px;
    margin: 5px 0;
    display: block;
    color: #383838;
    text-decoration: none;
    border-bottom: 1px dotted #383838;
}

#contents>.listmenu {
    margin-bottom: 10px;
}

#contents>.listmenu li {
    margin-bottom: 0px;
}

#contents>.listmenu li a {
    margin: 0;
    border-bottom: 1px solid #dddddd;
    -webkit-box-shadow: none;
}

.listmenu li a:link {
    color: #383838;
}

.listmenu li,
.titlebar+aside a {
    -webkit-tap-highlight-color: rgba(0, 0, 0, .4);
    -webkit-tap-highlight-color: #ccc;
}

.listmenu li:last-child {
    margin-bottom: 0px;
}

.titlebar+aside ul,
.formlist ul {
    margin: 0;
}

/* search box */
#searchbox {
    display: none;
    position: absolute;
    top: 0;
    background: #383838;
    margin: 0 auto;
    padding-bottom: 10px;
    text-align: left;
    width: 100%;
    color: #fff;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.8);
}

#searchbox2 {
    margin: 0 auto;
    text-align: left;
    width: 100%;
    background: white;
}


.search_form {
    background: white;
    color: #666666;
    font-size: 12px;
    margin-top: 10px;
    /* padding-bottom: 60px; */
}


.search_form .input_l .keyword_search {
    padding-bottom: 5px;
}


.search_form .input_s .price_search {
    padding-bottom: 5px;
}

.search_form select {
    width: 100%;
}

.search_form .input_l input {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

#searchbox .title {
    text-align: left;
    width: 100%;
    text-shadow: none;
    padding: 10px 0;
    background: none;
    box-shadow: none;
    -webkit-box-shadow: none;
}

#searchbox h1 {
    color: #fff;
    text-shadow: none;
}

#search_form div {
    margin: 10px 0;
}

.search_form p.f_l {
    margin: 0;
}

.search_form .f_l select {
    border: 1px solid #cccccc;
    background: white;
    color: #666666;
    margin-right: 10px;
}

.search_form .submit {
    text-align: center;
    margin: 5px auto;
}

.search_form .submit input {
    width: 100%;
    max-width: 280px;
    height: 50px;
    border: none;
    color: #fff;
    text-align: center;
    font-weight: bold;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
    font-size: 16px;
    letter-spacing: 0.05em;
    background-color: #C90916;
    border-radius: 4px;
}

.mp_search_item3 input[name="search"],
.mp_search1_item3 input[name="search"] {
    width: 100% !important;
    height: 45px;
    margin-bottom: 10px;
    font-size: 16px;
}

.submit_gr {
    font-size: 14px;
    padding: 3px 10px;
    background: transparent;
    color: #6a4f0f;
    border: none;
}

#close {
    text-align: center;
    color: #383838;
    background: #FFF;
    position: absolute;
    padding: 16px 15px;
    top: 0px;
    right: 10px;
    font-size: 150%;
}

#close {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* item list */
.itemlist {
    /* margin: 0 7px 15px; */
    background: transparent;
    border: none;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
}


.itemlist li {
    list-style-type: none;
    text-align: left;
    border: none;
    background: transparent;
}

.itemlist li a {
    position: relative;
    display: block;
    background: white url(../img/theme11/itemlist_bg.png) no-repeat right center;
    -webkit-border-radius: 0;
    border-radius: 0;
    border: 1px solid white;

    padding: 10px;
    text-decoration: none;
    margin-bottom: 10px;
}

.itemlist li a:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.product_search+section .btn button,
#newarrival .btn button,
#ranking .btn button,
#recommended .btn button {
    width: 280px;
    height: 50px;
    margin: 15px auto;
    border: none;
    color: #fff;
    background-color: #C90916;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    vertical-align: middle;
    text-decoration: none;
}


/* prize */
.itemlist li.prize {
    color: white;
    font-size: 12px;
    padding-left: 25px;
    width: 60px;
    background: #383838 url(../img/theme11/crown_bg.png) no-repeat;

}

.prize img {
    display: none;
}

.itemlist li.rank {
    color: white;
    font-size: 12px;
    padding: 0 8px;
    /* height: 14px; */
    background: url(../img/theme11/nocrown_bg.png) no-repeat;
}

/* tag */
.tag {
    text-align: right;
    text-align: left;
    margin: 0 2px 3px;
}

.tagline {
    color: #999;
    font-size: 75%
}

.recommend {
    color: #FF9900;
    margin-right: 3px;
    font-size: 75%
}

.price {
    color: #383838;
    font-size: 12px;
}

.fixedprice {
    text-decoration: line-through !important;
    color: #383838;
    font-size: 12px;
}

.catch {
    display: block;
    font-weight: bold;
    color: #5d5d5d;
    text-shadow: none;
}

.new {
    border: 2px solid #C90916;
    color: #C90916;
    padding: 2px 3px;
    display: inline-block;
    font-size: 10px;
    margin-right: 3px;
    text-shadow: none !important;
}

.pickup {
    border: 2px solid #516898;
    color: #516898;
    padding: 2px 3px;
    display: inline-block;
    font-size: 10px;
    margin-right: 3px;
    white-space: nowrap;
    text-shadow: none !important;
}

.sale {
    border: 2px solid #ffa200;
    background: #ffa200;
    color: #fff;
    padding: 2px 3px;
    display: inline-block;
    font-size: 10px;
    margin-right: 3px;
    white-space: nowrap;
    text-shadow: none !important;
}

.member {
    border: 2px solid #c0602b;
    background: #c0602b;
    color: #fff;
    padding: 2px 3px;
    display: inline-block;
    font-size: 10px;
    margin-right: 3px;
    text-shadow: none !important;
}

.cool {
    border: 2px solid #539fce;
    background: #539FCE;
    color: #fff;
    padding: 2px 3px;
    display: inline-block;
    font-size: 10px;
    margin-right: 3px;
    text-shadow: none !important;
}

.soldout {
    font-size: 11px;
    text-align: right;
    float: left;
}

.soldout span {
    color: white;
    width: 93%;
    text-align: center;
    background: #383838;
    padding: 5px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    display: inline-block;
    line-height: 1;
    font-weight: bold;
}

.product_name .new {
    padding: 4px 5px;
    display: inline;
    font-size: 12px;
    font-weight: bold;
}

.product_name .pickup {
    padding: 4px 5px;
    display: inline;
    font-size: 12px;
    font-weight: bold;
}

.product_name .sale {
    padding: 4px 5px;
    display: inline;
    font-size: 12px;
    font-weight: bold;
}

.product_name .member {
    padding: 4px 5px;
    display: inline;
    font-size: 12px;
    font-weight: bold;
}

.product_name .cool {
    padding: 4px 5px;
    display: inline;
    font-size: 12px;
    font-weight: bold;
}

.li_l {
    margin: 0 8px 0 0;
    float: left;
    clear: both;
}


.li_r div {
    color: #383838;
    font-size: 14px !important;
    padding-right: 5px;
    text-decoration: none !important;
}

.li_r div.tagline {
    color: #383838;
    height: auto;
    font-weight: normal;
}

.li_r div.fixedprice {
    color: #C90916;
    height: auto;
    margin-bottom: 0px;
    text-align: right;
    padding-right: 10px;
    font-weight: normal;
    padding-bottom: 0px;
}

.li_r div.price {
    color: #C90916;
    height: auto;
    margin-bottom: 0px;
    text-align: right;
    padding-right: 10px;
    font-weight: normal;
    padding-bottom: 0px;
}

.li_r div.soldout {
    margin-right: 18px;
    clear: right;
    font-weight: normal;
}

/* accordion */

.accordion .titlebar {
    border-bottom: 2px solid #C90916;
    padding: 0 17px 5px 0;
    margin-top: 10px;

}

.accordion .titlebar h1 {
    font-size: 16px;
    margin: 0;
    padding: 0 25px 0 0;
    line-height: 1;
}

.accordion .titlebar.sps-titleLinkBar h1 {
    padding: 2px 10px 2px 0;
}

.accordion,
.guide01 {
    padding-bottom: 20px;
}

.accordion:last-child {
    margin-bottom: 20px;
}


.accordion .titlebar_b h1,
.guide01 h2,
.business-title .title h1 {
    background-color: #43190D;
    font-weight: bold;
    color: #fff;
    font-size: 16px;
    margin: 0;
    padding: 13px 0;
    text-align: center;
    border-radius: 4px;
    position: relative;
}

.business-title:nth-of-type(n+3) {
    padding-top: 20px;
}


@media screen and (max-width: 374px) {

    .accordion .titlebar_b h1,
    .guide01 h2 {
        font-size: 14px;
    }
}



.accordion .titlebar_b+aside,
.guide01 p {
    display: none;
    padding: 10px 10px 0;
}

.accordion .titlebar_b+aside>.formtable {
    margin: 0;
    padding: 0;
}

.accordion aside ul.listmenu {
    border: none;
    background: transparent;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
}

.accordion aside ul.listmenu li {
    background: transparent;
    border: none;
    line-height: 1;
}

.accordion aside ul.listmenu li.categorylink {
    background: transparent;
}

.accordion aside ul.listmenu li a {
    color: #383838;
    background: white url(../img/theme11/arrow2.png) no-repeat 97% center;
    padding: 7px 17px 7px;
    margin: 5px;
    font-size: 11px;
}

/* freearea */
.freearea {
    text-shadow: none;
    /* padding: 10px 10px; */
    margin: 0 10px;
    background: white;
    color: #383838;
}

.freearea hr {
    margin: 10px 0;
}

.freearea img {
    vertical-align: middle;
}

.freearea ol {
    list-style-type: decimal;
    padding: 0 25px
}

#mp_ta_header {
    margin: 0 !important;
    padding: 0 !important;
}


footer section>div.freearea:first-child {
    background: none !important;
}


/*  カテゴリータイトル   */
.categorybar {
    padding: 6px 4px;
    text-align: left;
    margin: 0;
    font-size: 100%;
    background: #E8EEE8;
    text-shadow: rgba(0, 0, 0, .4) 0 1px 0;
    vertical-align: middle;
}

.categorylink {
    background: #E8EEE8;
    vertical-align: middle;
}




.payment ul {
    margin: 0;
}

.payment li {
    padding: 5px 22px;
    overflow: hidden;
    display: block;
    text-decoration: none;
    background-image: url(../img/theme11/arrow2.png);
    background-position: 8px center;
    background-repeat: no-repeat;
    list-style-type: none;
    text-align: left
}

.payment aside>p {
    margin: 10px;
}

.payment .formtable {
    font-size: 12px;
    padding: 10px 0;
    background: white;
}

.payment .formtable li+p {
    color: #383838;
    border-bottom: 1px solid #eaeaea;
    padding: 0 10px 10px 22px;
    margin: 5px 0;
}

.payment .formtable li+p:last-child {
    border-bottom: none;
}

.payment .formtable br+p {
    padding: 0 10px 10px 22px;
    margin: 5px 0;
}

.bgn li {
    list-style-type: none;
    text-align: left;
    font-size: 14px;
    margin-bottom: 15px;
}

.bgn li:last-child {
    margin-bottom: 10px;
}

.bgn li a {
    position: relative;
}

.bgn li a::after,
#footer .footer aside ul.listmenu li a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 6px;

}

.bgn li a::after {
    border-color: transparent transparent transparent #C90916;
}

#footer .footer aside ul.listmenu li a::after {
    border-color: transparent transparent transparent #383838;
}


.bgn li.categorylink a {
    border-left: 3px solid #383838;
    padding-bottom: 6px;
    padding-left: 7px;
}

.bgn2 .categorylink {
    background: white url(../img/theme11/arrow7.png) no-repeat 97% center;
}

.bgn2 ul.bgn {
    margin-bottom: 0;
}

.bgn2 ul.bgn li.categorylink a {
    background-color: white;
    border-left: 2px solid #C90916;
    color: #383838;
    display: block;
    padding: 0 17px 0 14px;
    margin: 15px 0;
    font-size: 14px;
    height: 40px;
    line-height: 40px;
}

.bgn2 .listmenu2 .bgn li {
    display: table;
    width: 100%;
}

.bgn2 .listmenu2 .bgn li a {
    width: 100%;
    display: table-cell;
    background-color: white;
    border: none;
    color: #383838;
    text-decoration: none;
    padding: 0 17px 0 10px;
    font-size: 14px;
    height: 60px;
    vertical-align: middle;

}

/*  accordion top処理*/
.titlebar+aside .listmenu li:first-child {
    border-top: none
}


.listmenu2 ul {
    list-style-type: none;
    margin: 0 auto;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.listmenu2 .l {
    float: left;
    overflow: hidden;
    width: 48%;
    text-align: left;
}

.listmenu2 .r {
    float: right;
    width: 48%;
    text-align: left;
}

.listmenu2 .l li,
.listmenu2 .r li {
    border-right: none;
    border-left: none;
}

div.listmenu2 div ul.listmenu li a {
    border: none;
    background-color: white;
    color: #383838;
    font-size: 11px;
    padding: 6px 17px 6px 5px;
    margin: 5px 0;
    text-decoration: none;
    display: block;
}

.listmenu3 {
    margin: 5px auto;
    width: 97%;
    text-shadow: none;
    padding: 0;
}

.listmenu3 .l {
    float: left;
    overflow: hidden;
    width: 49%;
    text-align: center;
}

.listmenu3 .r {
    float: right;
    overflow: hidden;
    width: 49%;
    text-align: center;
}

.listmenu3 a {
    padding: 6px 17px 6px 5px;
    background: white url(../img/theme11/arrow2.png) no-repeat 97% center;
    color: #383838;
    text-decoration: none;
    display: block;
    font-size: 14px;
}


/* ranking */

.whitelist li:nth-child(odd) {
    padding: 4px 5px;
}

.whitelist li:nth-child(even) {
    background: none;
    padding: 4px 5px;
}


/* 在庫返品sns */
.form_menu {
    margin: 10px;
}

.sns {
    margin: 0;
    overflow: hidden;
}

.sns ul {
    list-style-type: none;
    text-align: center;
}

.sns li {
    display: inline-block;
    margin: 10px 5px;
    vertical-align: middle;
}

#contents>section.review {
    margin: 0 auto;
}

#contents>section.review>div.comment {
    margin: 0 auto;
    width: 100%;
}

.review div.comment .recommend img {
    width: 11px;
    height: 11px;
    vertical-align: -1px;
}

.itemlist li a .tag .recommend img {
    width: 11px;
    height: 11px;
    vertical-align: -1px;
}

.customersbox .customerbar .recommend img {
    width: 11px;
    height: 11px;
    vertical-align: -1px;
}

.freearea .commenttitle .recommend img {
    width: 11px;
    height: 11px;
    vertical-align: -1px;
}

.arrowbg {
    border-left: 15px solid transparent;
    border-top: 16px solid #999;
    position: absolute;
    bottom: 5px;
    left: 119px;
    width: 0;
    height: 14px;
}

.arrow {
    border-left: 14px solid transparent;
    border-top: 14px solid #fff;
    position: absolute;
    bottom: 5px;
    left: 121px;
    width: 0;
    height: 15px;
}

/* form 1 */
.shopping_form {
    text-align: center;
}


.select_button {
    height: 40px;
}

#spsVarpriceBox>div {
    padding: 20px 25px 20px !important;
}


.shopping_form .variation1,
.variation2,
.variation3 {
    border-spacing: 0;
    width: 97%;
    margin: 10px auto;
    border-collapse: collapse;
    table-layout: auto;
}

/*  バリエリスト見出し */


.shopping_form .variation1 th,
.variation2 th,
.variation3 th {
    padding: 10px 5px;
    font-size: 75%;
    background: #ffffff;
    border: 1px solid #DDD;
    color: #383838;
}

.shopping_form .variation1 td,
.variation2 td {
    padding: 10px 10px;
    border: 1px solid #DDD;
    vertical-align: middle;
    text-align: left;
}

.variation3 th,
.variation3 td {
    border: 1px solid #DDD;
    font-size: 100%;
}

.shopping_form .variation3 {
    width: 50%;
    text-align: center
}

/* button select */
.shopping_form select {
    width: 100%
}

.shopping_form p {
    margin: 5px auto;
    text-align: center;
}

.shopping_form .variation1 td:nth-child(1) {
    width: 80%;
    font-size: 75%;
}

.shopping_form .variation1 td:nth-child(2) {
    width: 5%;
    text-align: center;
    white-space: normal;
}

.shopping_form .variation1 td:nth-child(3) {
    width: 15%;
    white-space: nowrap;
}

.shopping_form .soldout {
    font-size: 75%;
    text-align: center;
}

.variation1 img {
    width: 104px;
    height: 24px;
}

.variation2 td:nth-child(1) {
    width: 80%;
    font-size: 75%;
}

.variation2 td:nth-child(2) {
    width: 5%;
    border-right: 1px solid #fff;
    text-align: center;
}

.variation2 td:nth-child(3) {
    width: 15%
}

.variation2 a {
    margin-left: 5px;
}

.variation2 .ok {
    color: #359e65;
}

.variation2 .few {
    color: #ef9848;
}


/*  備考購入数   */
.remark {
    margin: 5px 0px;
    width: 100%
}

.remark dl {
    font-size: 120%;
}

.remark dt {
    float: left;
    width: 22%;
    margin: 5px 0;
    vertical-align: middle
}

.remark dd {
    float: none;
    margin: 3px 0;
    white-space: nowrap
}

.remark span {
    position: relative;
    top: 5px;
    display: block
}

.remark td {
    vertical-align: middle;
    text-align: center;
    font-size: 14px;
}

.remark .l {
    width: 30%;
}

.remark .r {
    width: 70%;
    text-align: left;
}

.input100 {
    width: 80%
}

.input10 {
    width: 20%
}

.stock hr {
    border-color: #939394
}

.stock select {
    max-width: 100%
}

.mailicon {
    width: 24px;
    height: 11px;
}

.req {
    margin: 5px 10px 20px;
    text-align: right;
    font-size: 75%;
}

.req img {
    vertical-align: bottom;
}

.req span {
    color: #626262;
}

/* ボタン */
.btn {
    margin: 0 auto;
    text-align: center;
}

.btn button {
    width: 280px;
    height: 50px;
    margin: 15px auto;
    border: none;
    color: #fff;
    background-color: #C90916;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    vertical-align: middle;
    text-decoration: none;
}

.submit {
    margin: 10px auto;
    text-align: center;
}

.formcontents dl p.submit {
    padding-left: 0;
    padding-right: 0px;
}

/* カート */

.curt_s {
    text-align: center;
}

.stock form input.curt_s {
    width: 87px;
    height: 25px;
    background: url(../img/theme11/btn_cart_bg.png);
    font-size: 10px;
    color: white;
    display: inline-block;
    -webkit-appearance: none;
    border: none;
}

.stock>aside:nth-child(2) {
    background: white;
    margin: 0 5px;
    padding: 1px 0;

}

.curt_l {
    padding: 10px;
    font-size: 120%;
    width: 80%;
    color: #fff !important;
    font-weight: bold;
    background: #ffcc99;
    margin: 0 auto;
    border-radius: 1px;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    color: #fff;
    text-decoration: none;
    vertical-align: middle;
}

.curt_l button:hover,
.curt_s button:hover {
    border-top-color,
    border-left-color: #ff9900;
    border-bottom-color,
    border-right-color: #fff;
    background: #ff9900;
    color: #ffffff;
}

.curt_l button:active,
.curt_s button:active {
    border-top-color: #ff9900;
    background: #ff6600;
}

#contents>section>div.formbox>form>aside.formcontents>div.text-left {
    font-size: 11px;
}

/* 入荷連絡を希望する */
.request_s {
    width: 87px;
    height: 18px;
    padding-top: 7px;
    background: url(../img/theme11/btn_contact_bg.png);
    font-size: 10px;
    color: white;
    display: inline-block;
    -webkit-appearance: none;
    text-align: center;
    display: inline-block;
}

a.request_s {
    color: white;
    text-decoration: none;
}

.request_l {
    padding: 10px;
    font-size: 120%;
    width: 80%;
    color: #fff !important;
    font-weight: bold;
    border: 1px solid #336699;
    margin: 0 auto;
    border-radius: 1px;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    color: #fff;
    text-decoration: none;
    vertical-align: middle;
}

.request_l button:hover,
.request_s button:hover {
    border-top-color,
    border-top-left: #3366CC;
    background: #3366CC;
}

.request_l button:active,
.request_s button:active {
    border-top-color: #1b435e;
    background: #3366CC;
}

/* 在庫切れ */
.shopping_form .variation1 .soldout,
.shopping_form .variation2 .soldout {
    width: 87px;
    height: 18px;
    padding-top: 7px;
    background: url(../img/theme11/btn_soldout_bg.png);
    font-size: 10px;
    color: black;
    display: inline-block;
    text-align: center;
    display: inline-block;
}

.shopping_form .variation1 .soldout span,
.shopping_form .variation2 .soldout span {
    color: black;
    width: auto;
    text-align: center;
    background: transparent;
    padding: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}


/* 通知 */
.error {
    color: #383838;
    text-align: left;
}

#contents section>p.error {
    padding: 20px 10px;
}

.attention {
    padding: 0 0 10px;
}

.formbar2 {
    margin: 0;
    padding: 10px;
    text-align: left;
    border: 1px solid #707070;
}


.mypagelist {
    margin-top: 20px;
}

.formlist {
    margin: 0 auto;
    padding: 0;
    text-align: center;
}

.formlist+.formlist {
    margin-top: 20px;
}

.formlist:last-child {
    margin-top: 40px;
}

.formlist .bar {
    margin: 10px 0 0;
    vertical-align: middle;
}

.formlist .bar h3 {
    font-size: 16px;
    margin: 0;
    padding-bottom: 5px;
    text-align: left;
    border-bottom: 2px solid #C90916;
}

.sps_entryForm {
    margin-top: 30px;
}

.formcontents dl {
    margin: 0 auto;
    list-style-type: none;
    width: 100%;
}

.formcontents dt {
    margin: 10px auto;
    text-align: center;
}

.formcontents dd {
    margin: 5px auto;
    text-align: left;
    padding: 0;
}

.formcontents p {
    margin: 10px auto !important;
}

.formcontents p.btg_r {
    margin: 0 auto;
}

.formbar2+.formcontents p {
    margin: 10px auto;
}

.formcontents ul li {
    word-wrap: break-word;
}

/*  button orange固定 */
.button_or {
    margin: 0;
}

/*  button  orange2固定   */
.button_closing input {
    width: 70%;
    margin: 0 auto;
    font-size: 100%;
    padding: 15px 20px;
    border: 1px solid #F4BD2B;
    background: #ffffff;
    background: url("../img/theme11/arrow_right.png") no-repeat 97% center, -webkit-gradient(linear, left top, left bottom, from(#ffe885), to(#f4b81c));
    background: url("../img/theme11/arrow_right.png") no-repeat 97% center, -moz-linear-gradient(top, #ffe885, #f4b81c);
    border-radius: 1px;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    color: #fff;
    font-weight: bold;
    vertical-align: middle;
}

/*  button gray可変*/
.button {
    margin: 10px auto;
    font-size: 100%;
    text-align: center
}

#contents>.button:last-child {
    margin-bottom: 20px;
}

.btg_r,
.btg_l {
    display: inline;
}

.btg_l a {
    border: 1px solid #5A5A5A;
    width: 100%;
    padding: 15px 10px 15px 40px;
    text-decoration: none;
    color: #4D4D4D;
    background: #ffffff;
    font-size: 75%;
}




.address {
    margin: 0;
    display: inline;
}

.formbox .address input[type="submit"] {
    width: 100px;
    margin: 0;
    height: 20px;
    padding: 2px 10px;
    border: none;
    background: #030303;
    background: -webkit-gradient(linear, left top, left bottom, from(#5a5a5a), to(#030303));
    background: -moz-linear-gradient(top, #5a5a5a, #030303);
    color: white;
    text-align: center;
    font-weight: bold;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    vertical-align: middle;
    display: inline;
    font-size: 11px;
    text-decoration: none;
}

.formnavi {
    margin: 0 auto;
}

.formnavi dl,
.formnavi div {
    margin: 0 auto;
    width: 100%;
}

.ar_link_r {
    background: transparent;
    border: none;
    line-height: 1;
    padding: 0;
}

.ar_link_r a {
    display: block;
    color: #666666;
    border: none;
    border-bottom: 1px solid #dddddd;
    -webkit-border-radius: 0;
    border-radius: 0;
    padding: 8px 10px;
    margin: 0;
    font-size: 11px;
    box-shadow: none;
    -webkit-box-shadow: none;
    text-decoration: none;
}



.formnavi .a_l {
    background: url("../img/theme11/arrow_left.png")left center;
    background-repeat: no-repeat;
    background-position: 5% center;
    padding: 15px 0px 15px 35px;
    color: #4D4D4D;
    text-decoration: none;
    vertical-align: middle;
    display: block;
}

.formnavi .a_r {
    background-image: url("../img/theme11/arrow_right_bk.png");
    background-repeat: no-repeat;
    background-position: 100% center;
    padding: 15px 35px 15px 0px;
    color: #4D4D4D;
    text-decoration: none;
    vertical-align: middle;
    display: block;
}





.update input {
    padding: 5px 10px;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    border: 1px #969696 solid;
    background: #ffffff;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#CCCCCC));
    background: -moz-linear-gradient(top, #ffffff, #cccccc);
    color: #4D4D4D;
    text-decoration: none;
}

/* お客様の声 */

#contents>.pagelist+section {
    padding-top: 5px;
}

section .customersbox:last-of-type {
    border-bottom: 1px solid #969696;
}

.customerbar {
    background: white;
    border-bottom: 1px solid #dddddd;

    padding: 5px 10px;
    margin: 0 auto;
    font-size: 11px;
}

.customersbox .customerbar {
    margin: 0 10px;
}

.customerbar img {
    vertical-align: -3px;
}

.customerbar .f_r.date {
    padding-top: 2px;
    color: #666666;
}

.customerscomment {
    margin: 0 auto;
    background: white;

    padding: 10px 10px 0;
    font-size: 11px;
    text-shadow: none;
    line-height: 1.5;
}

.customerscomment p {
    margin: 10px auto;
    color: #464646;
    text-align: left;
    line-height: 1.5;
}

.customersbox .customerscomment {
    width: auto;
    padding: 10px;
    margin: 0 10px 20px;
}

.comment .minus {
    background: white;

    padding: 10px 10px 0;
    font-size: 11px;
    line-height: 1.5;
}

.minus {
    display: none;
    color: #383838;
    text-align: left;
}

.comment .shopcomment {
    margin: 0 auto;
    padding: 0 5px 5px;
}

.shopcomment p {
    text-align: left;
    background: #FCEAE2;
    margin: 10px 0;
    padding: 8px;
}

.shopcomment .plus {
    text-align: right;
    background: url(../img/theme11/arrow2.png) no-repeat 65% center;
    padding-right: 10px;
}

.shopcomment .plus .f_r:before {
    content: "全文を見る";
    color: #383838;
    font-size: 10px;
}

.shopcomment .f_l,
.shopcomment .f_r {
    padding: 6px 0;
    font-size: 75%
}

.shopcomment .f_l {
    padding-left: 50px;
    color: #3B91D6;
    width: 138px;
}

@media all and (max-width: 320px) {
    .shopcomment .plus {
        background: url(../img/theme11/arrow2.png) no-repeat 57% center;
    }

    .shopcomment .f_l {
        padding-left: 0px;
    }
}

.plus {
    margin: 0;
    background-image: url(../img/theme11/plus.png);
    background-repeat: no-repeat;
    background-position: 100% center;
    padding: 2px 0;
    padding-right: 30px;
}

.plus.active {
    background-image: url(../img/theme11/minus.png);
}

.plus.act {
    background-image: url(../img/theme11/minus.png);
}

.plus.act2 {
    background-image: url(../img/theme11/minus.png);
}

.comment {
    margin: 10px 0;
}



.commenttitle {
    color: black;
    font-size: 13px;
    text-align: center;
    padding: 5px;
    background: white;
    margin: 10px 10px 0;
    border-bottom: 3px solid #383838;
}

.commenttitle a {
    text-decoration: none;
    margin: 5px 0;
    display: block;
    color: black;
}

.commenttitle p {
    color: #464646;
    background: white;
    padding: 5px;
}

.freearea .commenttitle {
    margin: 0;
}

.rightarrow {
    text-align: right;
}

.rightarrow>div {
    float: right;
    text-align: right;
    padding: 5px 5px 5px 20px;
    text-align: left;
    width: 108px;
    margin: 2px 10px 3px;
    background: white url(../img/theme11/arrow2.png) no-repeat 10px center;
    margin-left: 1px;
    font-size: 10px;
}

.rightarrow>div>a {
    text-decoration: none;
    color: #383838;
}


/*  購入はこちら  */
.price+.rightarrow a {
    background: none;
    text-decoration: underline;
}

.price+.rightarrow div {
    padding: 5px 0 5px 15px;
}

.catalog {
    margin: 0 auto;
    width: 100%
}

.catalog p {
    display: inline
}

/* フリーページ */
/* 1 */
section.titlebar_list {
    padding-top: 5px;
}

section.titlebar_list ul.listmenu {
    background-color: white;
}

section.titlebar_list ul.listmenu li {
    font-size: 12px;
}

section.titlebar_list ul.listmenu li:last-child {
    border-bottom: none;
}

section.titlebar_list ul.listmenu li a {
    padding: 12px 9px 12px 20px;
    font-size: 14px;
}

/* 2 */
section.titlebar_list aside ul.listmenu {
    background-color: transparent;
}

section.titlebar_list .titlebar_list .accordion .titlebar {
    margin-top: 0px;
}

.product_search .pager .f_l {
    color: #383838;
    font-size: 10px;
    line-height: 1.5;
    float: none;
}

.pager {
    margin: 0 auto;
    padding: 5px 0;
    color: #666666;
    text-align: left;
    font-size: 80%;
    overflow: hidden;
}

.product_search {
    margin-bottom: 30px;
}


.product_search .pager div.clearof {
    overflow: visible;
}

.product_search .pager .f_l br {
    display: none;
}

.product_search .pager .f_r {
    padding-top: 5px;
    padding-right: 2px;
}

.product_search .pager .f_r select {
    border: 1px solid #707070;
    color: #707070;
    height: 40px;
    width: 180px;
    background-color: #fff;
}

.result {
    float: left;
}

.result ul {
    list-style: none;
    margin: 0;
}

.result li {
    float: left;
    padding-left: 10px;
}

.sort {
    margin: 5px auto 5px;
    padding: 0;
    width: 100%;
    text-align: center;
}

.sortimg {
    width: 46px;
    height: 30px;
}

/* pagelist */
.pagelist {
    margin: 5px 10px 5px;
    text-align: center;
    font-size: 80%;
    padding-top: 10px;
    border-top: 1px solid white;
}

.pagelist2 {
    margin: 20px auto 5px;
    text-align: center;
    font-size: 80%;
}

.pagelist li,
.pagelist2 li {
    display: inline;
    margin: 0 2px;
}

.pagelist li span,
.pagelist2 li span {
    display: -moz-inline-box;
    display: inline-block;
    padding: 6px 8px;
    font-weight: bold;
    background: #C90916;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    color: #fff;
    text-decoration: none;
    text-shadow: none;
}

.pagelist li a,
.pagelist2 li a {
    display: -moz-inline-box;
    display: inline-block;
    padding: 6px 8px;
    font-weight: bold;
    border: 1px solid #C90916;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    color: #C90916;
    text-decoration: none;
    text-shadow: none;
}

.pagelist li a:hover,
.pagelist2 li a:hover {
    background: #C90916;
    color: #fff;
}

.pagelist li.back a,
.pagelist2 li.back a {
    padding: 6px 10px;
    color: #C90916;
    border: none;
    text-decoration: none;
    text-align: center;
    margin-right: 5px;
}

.pagelist li.back a:hover,
.pagelist2 li.back a:hover {
    background-color: #C90916;
    color: #fff;
}

.pagelist li.next a,
.pagelist2 li.next a {
    padding: 6px 10px;
    color: #C90916;
    text-decoration: none;
    text-align: center;
    margin-left: 5px;
    border: none;
}

.pagelist li.next a:hover,
.pagelist2 li.next a:hover {
    background-color: #C90916;
    color: #fff;
}

/* back disable */
.pagelist .back_b,
.pagelist2 .back_b {
    visibility: hidden;
    width: 64px;
    height: 25px;
    margin-right: 10px;
    display: inline-block;
}

/* next disable */
.pagelist .next_b,
.pagelist2 .next_b {
    visibility: hidden;
    width: 64px;
    height: 25px;
    margin-left: 10px;
    display: inline-block;
}


/* 商品詳細 */
#contents section.product_name {
    /* background: #eeeeee; */
    /* border: 3px double white; */
    border-left: none;
    border-right: none;
    padding: 10px 0;
    margin-bottom: 10px;
}

.product_name ul {
    margin: 0 10px;
    line-height: 20px;
    text-align: left;
    list-style-type: none;
}

.product_name li {
    margin: 0;
    text-align: left;
    color: #C90916;
    font-size: 12px;
}

.product_name li.catch {
    color: black;
    font-size: 16px;
    line-height: 1.5;
    padding-top: 15px;
    text-align: left;
}

.product_name li span.prize {
    vertical-align: middle;
    margin-right: 10px;
    font-size: 14px;
    line-height: 24px;
    display: inline-block;
}

.product_name dt {
    width: 70px;
    padding: 5px 0;
    display: block;
    float: left;
    margin: 5px 0;
    text-align: left;
}

.product_name dd {
    text-align: left;
    width: 65%;
    padding: 5px 0;
    display: block;
    margin: 5px 0;
    float: left;
}

.product_img .nb {
    position: relative;
    overflow: hidden;
}

.product_img ul {
    position: relative;
    left: 50%;
    float: left;
    list-style-type: none;
}

.product_img li {
    position: relative;
    left: -50%;
    float: left;
    margin: 0 3px
}

.product_img li p {
    display: table-cell;
    vertical-align: middle;
    height: 200px;
}

#sub_img {
    padding-top: 10px;
    text-align: center;
}

#imgRL {
    padding: 10px 2px;
    text-align: center;
}

#sub_img img {
    border: 1px solid #f2e5ae;
}

.imgRL {
    width: 24%;
    margin-top: 2px;
}

#zoom .imgRL {
    width: 42%;
}

.description {
    padding: 5px 0;
}

.description #group {
    padding: 10px 0 0;
    border: none;
    background: white;
    /* margin: 0 5px; */
}

.description #group h1 {
    font-size: 14px;
    color: #383838;
    border-bottom: 1px solid #dddddd;
    margin: 0;
    padding: 0 0 3px;
    display: block;
}

#contents .description aside {
    color: #383838;
    font-size: 14px;
    height: inherit !important;
    overflow: hidden;
    padding: 10px 0;
    /* margin: 0 5px; */

}

#contents .description aside p {
    margin: 0 0 12px;
}

.description aside ul {
    list-style-type: disc;
    padding: 0 25px;
}

.productprice {
    background: white;
    padding: 10px 0px 0;
    text-align: left;
    /* margin: 0 10px; */
    padding: 0 !important;
}

.productprice p {
    font-size: 16px;
    font-weight: bold;
    margin: 20px 0 0;
    color: #C90916;
    float: left;
}

.productprice p .red {
    color: #C90916;
}

.productprice>div>span {
    float: right;
}

.productprice div:last-child {
    font-size: 10px;
    clear: left;
}

.stock .titlebar_g {
    color: black;
    background-image: url(../img/theme11/title_point.png), url(../img/theme11/title_bg.png);
    background-repeat: no-repeat, repeat-x;
    background-position: left top, left top;
    margin: 10px 0 0;
    padding: 14px 0 12px;
    vertical-align: middle;
    text-align: left;
}

.stock .titlebar_g h1 {
    display: inline;
    font-size: 14px;
    margin: 0;
    padding: 0 0 0 10px;
    text-align: left;
    font-weight: normal;
}

.stock .titlebar_g_o {
    margin-top: 40px;
}

.stock .form_menu {
    margin: 0 auto;
    max-width: 280px;
}

.stock .ar_link_r a {
    display: inline-block;
    padding: 5px 0 1px;
    color: #516898;
    border-bottom: 1px solid #516898;
}

.titlebar_g_o h1 {
    color: #C90916;
    font-weight: bold;
    font-size: 16px;
    margin: 0;
    padding-bottom: 5px;
    border-bottom: 2px solid #C90916;
}

.stock table.variation1,
.stock table.variation2 {
    border: none;
    margin-bottom: 0px;
}

.stock .variation1 th,
.stock .variation2 th {
    border: 3px double white;
    border-bottom: 3px double #eeeeee;
    background: #eeeeee;
}

.stock .variation1 tr th:nth-child(1) {
    border-left: none;
}

.stock .variation1 tr th:nth-child(3) {
    border-right: none;
}

.stock .variation1 tr td:nth-child(1) {
    border-left: none;
}

.stock .variation1 tr td:nth-child(3) {
    border-right: none;
}

.stock .variation2 tr th:nth-child(1) {
    border-left: none;
}

.stock .variation2 tr th:nth-child(2) {
    border-right: none;
}

.stock .variation1 td,
.stock .variation2 td {
    border: 1px solid #eaeaea;
    background: white;
}

.stock .variation2 tr td:nth-child(2) {
    border-right: none;
}

.stock .variation2 tr td:nth-child(3) {
    border-left: none;
}

.stock table.variation3 {
    border-collapse: separate;
    border: 1px solid #eeeeee;
    background: #eeeeee;
}

.stock .variation3 th {
    border: 1px solid white;
    background: #eeeeee;
}

.stock .variation3 td {
    background: white;
}

.stock hr {
    border: none;
}

.stock form {
    background: white;
    padding: 5px;
    display: block;
    margin: 0 10px;
}

.stock form[name="CARTIN"] {
    background: white;
    border: none;
    -webkit-border-radius: 0;
    border-radius: 0;
    padding: 10px 0 0;
    margin: 10px 5px;
}

.stock form select {
    color: #707070;
    background: white;
    border: 1px solid #707070;
}

.stock form input[type="number"] {
    height: 35px;
    border: 1px solid #707070;
    margin-right: 5px;
    padding: 0 5px;
    text-align: center;
}


.description .seemore,
.stock form input[type="submit"] {
    width: 280px;
    border: none;
    background-color: #C90916;
    color: white;
    border-radius: 4px;
    text-align: center;
    vertical-align: middle;
    padding: 15px 0;
    text-decoration: none;
    font-size: 12px;
    margin-top: 10px;
}

.shopcomment {
    display: none;
}

.description .seemore {
    margin: 10px auto 0;
}

#pi_sub1,
#pi_sub2 {
    margin-top: 60px;
}

#pi_sub1 .freearea,
#pi_sub2 .freearea {
    margin: 0;
    padding: 0 !important;
}

.single-feature {
    font-size: 20px;
    margin-top: 0;
}

.single-item+.single-item {
    margin-top: 50px;
}

.single-item:last-child {
    margin-bottom: 0;
}

.single-item-title {
    font-size: 16px;
    margin: 20px 0 15px;
}

.single-summary {
    margin-bottom: 30px;
}

.summary-list,
.summary-list tbody,
.summary-list .summary-item,
.summary-item th,
.summary-item td {
    display: block;
    text-align: left;
}

.summary-item:first-child {
    border-top: 1px solid #DBDBDB;
}

.summary-item {
    font-size: 14px;
    border: 1px solid #DBDBDB;
    border-top: none;
}

.summary-item th {
    background-color: #F2F2F2;
    padding: 6px 10px;
    font-weight: normal;
    border-bottom: 1px solid #DBDBDB;
}

.summary-item td {
    padding: 10px 10px 20px;
}

.summary-item-text a {
    color: #516898;
    border-bottom: 1px solid #516898;
}

.single-item-text li,
.summary-item-text ul li {
    padding-left: 0.6em;
    position: relative;
}

.single-item-text li::before,
.summary-item-text ul li::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 0;
    transform: translateY(-50%);
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: #383838;
}

.single-text {
    margin: 0 !important;
}

.single-banner {
    display: inline-block;
    margin-top: 40px;
}

.single-list+.single-banner {
    margin-top: 50px !important;
}

#contents section .title_c h3 {
    font-size: 16px;
    color: black;
    margin: 0;
    padding: 0;
}

.info {
    padding: 0 !important;
    position: relative;
}

#contents section .info+div+p {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    margin: 0 10px !important;
    position: relative;
    top: 2px;
    padding: 0 10px !important;
}


/* 「お問い合わせ（お客様相談・オンラインショップ）」 */
form[name="frmMain"] .formtable {
    margin-bottom: 20px;
}

form[name="frmMain"] .formtable table,
form[name="frmMain"] .formtable table tbody,
form[name="frmMain"] .formtable table tbody tr,
form[name="frmMain"] .formtable table tbody td {
    display: block;
    width: 100%;
    font-size: 14px;
}

form[name="frmMain"] .formtable table {
    border: 1px solid #DBDBDB;
}

form[name="frmMain"] .formtable table td {
    padding: 6px 10px;
}

form[name="frmMain"] .formtable table .l {
    background: #F2F2F2;
}

form[name="frmMain"] .formtable table .r {
    border-top: 1px solid #DBDBDB;
    border-bottom: 1px solid #DBDBDB;
}

form[name="frmMain"] .formtable table tr:last-child .r {
    border-bottom: none;
}

.table2 {
    margin: 5px 0;
}

.formtable table.table2 {
    border: none;
}

.formtable table.table2 th {
    border: none;
}

.formtable table.table2 td {
    border: none;
}

.table2 td {
    color: #383838;
    font-size: 12px;
    border-bottom: 1px solid #dddddd;
}

.formtable table.table2 td[rowspan="2"] {
    width: 100px;
    height: 100px;
    vertical-align: middle;
    border-top: 1px solid #dddddd;
    padding-top: 10px;
}

.formtable table.table2 td[rowspan="4"] {
    text-align: center;
    vertical-align: top;
    border-top: 1px solid #dddddd;
    padding-top: 10px;
}

.formtable table.table2 tr:first-child td {
    padding-top: 0px;
    border-top: none;
}

.table2 td:only-of-type {
    vertical-align: middle;
    background: none;
}

.table2 td.esy {
    color: #383838;
    border-bottom: none;
}

.formtable table.table2 td:not(.esy) {
    border-top: 1px solid #dddddd;
    padding-top: 10px;
}

.formtable .table3 td:nth-child(1) {
    width: 48%;
}

.formtable .table3 td:nth-child(2) {
    width: 26%;
    text-align: center
}

.formtable .table3 td:nth-child(3) {
    width: 26%;
    text-align: center
}

.formtable .table3 {
    margin-top: 20px;
    color: #383838;
    width: 100%;
    border-collapse: collapse;
}

.formtable .table3 th {
    border: 1px solid #DBDBDB;
    text-align: center;
    padding: 5px;
    background: #f2f2f2;
    font-weight: normal;
}

.formtable .table3 td {
    border: 1px solid #DBDBDB;
    padding: 5px;
}

.formtable .table3 .edit {
    margin: 0;
    padding: 0;
}

.formtable .table3 .edit input {
    border-radius: 3px;
    background: #383838;
    color: white;
    width: 58px;
    height: auto;
    padding: 2px 0;
    margin: 7px 0;
}

.formtable .table3 .del {
    margin: 0;
    padding: 0;
}

.formtable .table3 .del input {
    border: none;
    border-radius: 3px;
    background: #969389;
    color: white;
    width: 58px;
    height: auto;
    padding: 2px 0;
    margin: 7px 0;
}


.cart-final #contents section:nth-child(4) .title h1 {
    margin: 30px 0 20px;
}

.cart-final .title h1 {
    margin: 60px 0 20px;
    padding-bottom: 5px;
    border-bottom: 1px solid #383838;
}


.formtable .table4 {
    background: #f2f2f2;
    border: 1px solid #DBDBDB;
    margin-bottom: 20px;
    width: 100%;
}

.formtable .table4 td:nth-child(1) {
    width: 49%;
    vertical-align: top;
}

.formtable .table4 td:nth-child(2) {
    width: 19%;
}

.formtable .table4 td:nth-child(3) {
    width: 13%;
}

.formtable .table4 td:nth-child(4) {
    width: 19%;
}

.formtable .table4 th {
    font-weight: normal;
    border: 1px solid #ffffff;
    padding: 5px;
    text-align: left;
    background: #eeeeee;
}

.formtable .table4 td {
    padding: 5px;
    text-align: left;
    background: #ffffff;
}

.formtable+.formcontents .ar_link_l {
    margin-bottom: 20px;
}

/* 「変更する」ボタン */
.formtable+.formcontents .ar_link_l a,
.customer-info+section .formcontents .ar_link_l a {
    background-color: #43190D;
    width: 100%;
    max-width: 120px;
    margin: 0 auto 0 0;
}

/* 「変更する」ボタン（お届け先情報） */
.customer-info+section+section .formcontents>div:first-child a {
    background-color: #43190D;
    width: 100%;
    max-width: 200px;
    margin: 0 auto 0 0;
}

.customer-info #mp_ta_message {
    margin: 0;
}

.formtable+.formcontents+.formtable table {
    width: 100%;
    border-collapse: collapse;

}

.formtable+.formcontents+.formtable table td {
    border: 1px solid #DBDBDB;
    padding: 6px 10px;
    font-size: 14px;
}

.formtable+.formcontents+.formtable table td.l {
    background-color: #f2f2f2;
}

.cart-final .customer-info .formtable table {
    width: 100%;
    font-size: 14px;
    border: 1px solid #DBDBDB;
    border-bottom: none;
    border-collapse: collapse;
}

.cart-final .customer-info .formtable td {
    width: 100%;
    display: block;
    padding: 6px 10px;
    border-bottom: 1px solid #DBDBDB;
    min-height: 35px;
}

.cart-final .customer-info .formtable td.l {
    background-color: #f2f2f2;
}

.formbox .formtable {
    margin: 0 10px 10px;
    border: none;
    background: white;
    padding: 8px;
}

.formtable td {
    border: 1px solid #DBDBDB;
}

.formtable table {
    width: 100%
}

.formtable .l {
    display: block;
    width: 100%;
    padding: 6px 10px;
    background: #f2f2f2;
}

.formtable .r {
    display: block;
    width: 100%;
    padding: 6px 10px;
    min-height: 35px;
}

.formbox .info {
    padding: 10px;
    text-align: left;
    line-height: 1.5;
}

.formbox p.submit {
    text-align: center;
}

.formbox p.btg_r {
    padding: 0 10px;
    text-align: center;
}

.del,
.edit {
    margin: 5px auto;
}

.edit {
    text-align: center;
}

.cart-start .title h1 {
    margin-top: 40px !important;
}

#mp_ta_message {
    margin-top: 30px;
    font-size: 14px;
}

#mp_ta_message+script+section .title h1 {
    margin: 0 0 5px;
    font-size: 18px;
}


form[name="SMP_CART_FORM"] {
    border-top: 1px solid #383838;
    border-bottom: 2px solid #C90916;
    padding: 30px 0 40px;
    margin-bottom: 10px;
}

form[name="SMP_CART_FORM"] table {
    width: 100%;
    margin: 0;
}

form[name="SMP_CART_FORM"] table td[rowspan="4"] {
    width: 130px;
    padding-right: 10px;
}

form[name="SMP_CART_FORM"] table td:first-child img {
    width: 100%;
    max-width: 120px;
    object-fit: cover;
}

form[name="SMP_CART_FORM"] table td span {
    font-weight: bold;
    color: #5C5C5C;
    font-size: 14px;
}

form[name="SMP_CART_FORM"] .esy {
    font-size: 14px;
}

form[name="SMP_CART_FORM"] .input_s {
    font-weight: normal;
}

form[name="SMP_CART_FORM"] .input_s input {
    margin-right: 5px;
    text-align: center;
    border: 1px solid #707070;
}

form[name="SMP_CART_FORM"] .del {
    margin: 10px 0 30px;
}

form[name="SMP_CART_FORM"] .del input {
    color: #fff;
    background-color: #ACACAC;
    border: none !important;
    border-radius: 4px;
    width: 100%;
    font-size: 16px;
    font-weight: bold;
}

form[name="SMP_CART_FORM"] table tbody tr:nth-child(4n+5) td:nth-child(-n+2) {
    padding-top: 30px;
}

form[name="SMP_CART_FORM"] .edit {
    margin: 10px 0 0;
}

form[name="SMP_CART_FORM"] .edit input {
    width: 100%;
    max-width: 280px;
    height: 30px;
    border: none !important;
    color: #fff;
    background-color: #ACACAC;
    border-radius: 4px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .05em;
    text-align: center;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
}

.formtable .r .text_1 {
    color: #C90916;
    font-size: 16px;
    font-weight: bold;
}

/* 「会員登録」共通CSS */
#pi_buy .formbox .formbar h3 {
    font-size: 18px;
    font-weight: bold;
    margin: 0;
}

#pi_buy .formbox_n {
    margin-top: 20px;
}

/* 「会員登録していないお客様」 */
#cart_guest_area {
    margin: 40px calc(50% - 50vw);
    background-color: #F2F2F2;
    padding: 40px 16px;
}

#cart_guest_area .submit,
#cart_login_area .submit {
    margin: 0;
}

#cart_guest_area input.mp_buy_item2,
#cart_guest_area input.mp_buy_item3,
#cart_login_area input.mp_buy_item1,
#pi_buy .formbox_n input {
    width: 100%;
    max-width: 280px;
    height: 50px;
    border: none !important;
    color: #fff;
    border-radius: 4px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .05em;
    text-align: center;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
}

#cart_guest_area input.mp_buy_item2,
#cart_login_area input.mp_buy_item1,
#pi_buy .formbox_n input {
    background-color: #C90916;
    margin: 20px auto 0;
}

#cart_guest_area input.mp_buy_item3 {
    background-color: #43190D;
    margin: 15px auto 0;
}

#cart_guest_area .mp_smt_message_domain_filter {
    margin-top: 25px;
    font-size: 12px;
    color: #919191;
    padding-left: 1em;
    text-indent: -1em;
}

/* 「会員のお客様」 */
#cart_login_area .formcontents dl {
    margin: 0 auto;
    width: 100%;
}

#cart_login_area .formcontents dl dd {
    margin: 15px 0 0;
}

#cart_login_area .formcontents dl dd:first-child {
    margin: 5px 0 0;
}

#cart_login_area .formcontents .form_t p {
    font-weight: normal;
}

#cart_login_area .formcontents .input_l input {
    height: 45px;
    padding: 0 10px;
    font-size: 16px;
}

#pi_refund .formbox_n {
    padding: 0;
    text-align: left;
}

#cart_login_area .ar_link_r {
    margin-top: 20px;
}

#pi_refund .ar_link_r {
    margin-top: 10px;
}

#cart_login_area .ar_link_r a,
#pi_refund .ar_link_r a,
.cart-login .ar_link_r a,
.cart-book .ar_link_r a {
    display: inline-block;
    margin: 0 auto;
    color: #516898;
    border-bottom: 1px solid #516898;
    padding: 10px 0 0;
    font-size: 16px;
}

.cart-book .ar_link_r {
    margin-bottom: 10px;
}

.cart-goal .formtable {
    margin-top: 20px;
}

.cart-goal .formtable table {
    border-collapse: collapse;
    width: 100%;
}

.cart-goal .formtable td {
    border: 1px solid #DBDBDB;
    padding: 6px 10px;
    font-size: 14px;
    color: #383838;

}

.cart-goal .formtable td.l {
    background: #f2f2f2;
    width: 140px;
}




.formbox_n {
    margin: 0 auto;
    padding-bottom: 20px;
    text-align: center;
}

.formbox input,
textarea {
    border: 1px solid #707070;
}

.formbox input[type="checkbox"],
.formbox input[type="radio"] {
    border: none;
}

.form_t {
    margin: 0;
    text-align: left;
    width: 100%;
}

.form_t span.sps-smp-required {
    background: #C90916;
    padding: .4em .5em;
}

.form_t+.form_t {
    margin-top: 30px;
}

.cart-address-edit .form_t:nth-of-type(n+2) {
    margin-top: 30px;
}

.form_t.form_group.form_select::before {
    top: 34%;
}

.form_t p {
    margin: 0 0 5px 0;
    font-weight: bold;
}

.form_t .input_l input {
    background-color: #fff !important;
    border: 1px solid #707070;
    height: 45px;
    padding: 0 5px;
    width: 100%;
    font-size: 16px;
    max-width: 350px;
}

.form_t .input_l input[type="tel"] {
    width: 50% !important;
}

.form_t .input_l input[name="FirstName_0"],
.form_t .input_l input[name="LastName_0"] {
    margin: 0;
    width: 49%;
}

.form_t .input_l input[name="Sei_0"],
.form_t .input_l input[name="Niece_0"] {
    margin: 15px 0 0;
    width: 49%;
}

.form_t select {
    width: 100%;
    max-width: 350px;
    height: 45px;
    border: 1px solid #707070;
    color: #303030;
}


.form_t .form_select .form_select {
    width: 100%;
}

.form_t .form_select .form_select::before {
    display: none;
}

.form_t .radio div {
    display: inline-block;
    width: 100%;
    max-width: 120px;
}

.form_t .radio input[type="radio"] {
    display: inline-block;
    margin: 0 5px 0 10px !important;
    font-size: 14px;
}

.form_t .radio label {
    display: inline-block;
    width: 90% !important;
    max-width: none !important;
    padding: 10px 0 !important;
}

.pm-section .formbar h3 {
    padding-left: 0px !important;
    line-height: 60px;
}



.form_t .radio label[for="NoticeMailY"],
.form_t .radio label[for="NoticeMailN"] {
    max-width: 300px;
}


.form_t textarea {
    background-color: #fff !important;
    border: 1px solid #707070;
    width: 100%;
    max-width: 705px;
    padding: 0 5px;
    font-size: 16px;
    min-height: 210px;
    resize: vertical;
}

.formnavi .btg_r input[type="submit"] {
    background-color: #C90916;
    height: 50px;
    font-size: 16px;
    font-weight: bold;
    border-radius: 4px;
    margin: 20px 0 0;
    letter-spacing: 0.05em;
    border: none !important;
}

/* 購入手続き */
.required {
    margin: 0 auto;
    text-align: left;
    color: #3e3e3e;
    font-size: 12px;
}

.required .info {
    text-align: left;
    line-height: 1.5;
    padding: 0 10px;
}

.required+input+input+.formbox .formbar h3,
#formPayment .title h1 {
    margin: 30px 0 20px;
    font-size: 18px;
    font-weight: bold;
    padding-bottom: 5px;
    border-bottom: 1px solid #383838;
}

.form_t .form_t {
    margin-top: 30px;
}

#selectaddressee {
    margin-top: 30px;
    margin-bottom: 60px;
}

#selectaddressee .formbar h3 {
    padding-bottom: 5px;
    border-bottom: 1px solid #383838;
    margin-bottom: 15px;
}

#selectaddressee .formcontents {
    font-size: 14px;
}

#selectaddressee .radio_addr:checked+div::after {
    height: 9px;
    width: 9px;
    top: 3px;
    left: 3px;
    background: #C90916;
}

.button_or input[type="submit"] {
    width: 280px;
    height: 50px;
    margin: 5px auto;
    border: none;
    border-radius: 4px;
    color: #fff;
    background: #C90916;
    text-align: center;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
}

#card_info .button_or input[type="submit"] {
    width: 100%;
    height: 50px;
    margin: 5px auto;
    border: none;
    border-radius: 4px;
    color: #fff;
    background: #C90916;
    text-align: center;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
}


.submit input[type="submit"] {
    width: 280px;
    height: 50px;
    margin: 5px auto;
    border: none;
    border-radius: 4px;
    color: #fff;
    background: #C90916;
    text-align: center;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
}


.form_select,
.mp_pager1_item3,
#pi_cart form>.remark td {
    position: relative;
}

.form_select::before,
.mp_pager1_item3::before {
    content: "";
    position: absolute;
    bottom: 15px;
    transform: translateY(-50%) rotate(45deg);
    right: 10px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #707070;
    border-bottom: 2px solid #707070;
}

.pm-section .form_t {
    border: 1px solid #DBDBDB;
}

.pm-section+.pm-section .form_t {
    border-top: none;
}

.pm-section .formbar {
    background-color: #f2f2f2;
    border-bottom: 1px solid #DBDBDB;
}

.pm-section .formbar h3 {
    padding-left: 20px;
    line-height: 60px;
}

.pm-section .formbar h3 label {
    font-weight: bold;
}

.paytypewrap {
    padding: 20px;
}

.paytypewrap .formtable,
.paytypewrap .formtable h3 {
    margin: 0;
    padding: 0;
}

.paytypewrap .formtable table {
    width: 100%;
    margin-bottom: 20px;
    border: 1px solid #DBDBDB;
    border-collapse: collapse;
    font-size: 14px;
}

.paytypewrap .formtable table td {
    padding: 5px;
    border: 1px solid #DBDBDB;
}

.paytypewrap .formtable table td.l {
    background-color: #f2f2f2;
}


.formcontents table {
    width: 100%;
    font-size: 14px;
}

.sm-text {
    font-size: 12px;
    margin-top: 5px;
    display: inline-block;
    text-indent: -1em;
    padding-left: 1em;
    color: #919191;
    font-weight: normal;
}

.formcontents+.formcontents {
    margin-top: 10px;
}

.formcontents .form_select {
    width: 50%;
}

.cart-address .formcontents .form_select {
    width: 100%;
}

.cart-address .formcontents .form_select::before {
    top: 47px;
    bottom: inherit;
}

.formcontents label {
    display: inline-block;
    width: 90%;
    max-width: none !important;
    padding-bottom: 1em;
}

.formcontents .button {
    margin: 60px 0 0;
}

.formcontents .button .bto_r {
    margin: 0;
}

.button .btg_r a,
.bto_r input,
.btg_r input[type="submit"],
.btg_r input[type="button"] {
    width: 100%;
    max-width: 280px;
    height: 50px;
    margin: 0 auto;
    border: none !important;
    color: #fff !important;
    background-color: #C90916 !important;
    border-radius: 4px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .05em;
    text-align: center;
    vertical-align: middle;
    padding: 0;
    text-decoration: none;
}

.button .btg_r a {
    display: inline-block;
    line-height: 50px;
    margin-top: 20px;
}

.table_collapse th {
    font-size: 14px;
}

.table_collapse td {
    font-size: 12px;
}

/* 入荷連絡希望*/
.button .btg_r {
    display: block;
    margin: 30px 0 0;
}

.ar_link_l {
    width: 100% !important;
    margin-top: 20px !important;

}

.ar_link_l a,
.btg_r button[type="submit"] {
    margin: 0 auto;
    display: block;
    text-align: center;
    width: 100%;
    max-width: 280px;
    height: 50px;
    line-height: 50px;
    color: #fff !important;
    background-color: #ACACAC !important;
    border-radius: 4px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .05em;
    padding: 0;
    text-decoration: none;
}

/* add comment */
.title_c+.text-center {
    margin-top: 10px;
}

.commentbox {
    margin: 10px;
    background: white;
    padding: 10px;
}

.commentbar {
    margin: 0;
    padding: 5px;
    text-align: left;
    background: white;
    border-bottom: 3px solid #383838;
    color: black;
}

.commentbar h3.catch {
    color: #5d5d5d;
    font-weight: normal;
    font-size: 12px;
    margin: 0;
    padding: 0;
}

.commentcontents {
    margin: 10px auto;
    width: 100%;
    text-align: left;
    font-size: 12px;
    line-height: 1.2;
}

.commentcontents p {
    text-align: left;
}

.commentcontents div {
    margin: 10px auto 0;
}

.commentcontents div.rightarrow>div {
    background: transparent;
    padding: 0 0 5px;
    width: auto;
}

.commentcontents div.rightarrow>div a {
    background: #b4b4b4;
    padding: 4px 5px 5px;
    color: white;
    font-size: 11px;
}

.yet {
    color: #7E7E7E
}

/* ポイントの利用 */

#contents>form>section>div.formbox {
    width: auto;
    margin: 0 auto;
}

#contents>form>section>div.formbox>.formcontents>.form_t:first-child>div:first-child {
    margin-top: 20px;
}


/* 個人情報の取扱いについて */
#contents>section>aside>div.formbox {
    background: white;
    padding: 10px;
}

/* フリーページ */
#contents>section>p {
    background: white;
    padding: 10px;
    margin: 0 10px;
}


/* 購入 */
.formbox .formcontents .form_t textarea {
    height: 100px;
}


/* 会員規約 */
aside.agreement {
    padding-top: 5px;
}

aside.agreement pre {
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    white-space: pre-wrap;
    word-wrap: break-word;
}

aside.agreement .formcontents {
    padding: 0;
    margin: 0;
}

/* アドレス帳 */
#contents>.pagelist2+section {
    padding-top: 10px;
}

/* 購入履歴 */
.mypagelist .formlist {
    padding: 0;
}

.mypagelist .formlist .listmenu {
    margin: 0 5px;
}

.period form {
    text-align: center;
}

select[name="year"],
select[name="month"] {
    padding: 4px 10px;
}

.edit input[value="表示"] {
    padding: 4px 10px;
    background-color: #43190D;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 14px;
}

#contents>.pagelist2+section>ul.listmenu {
    padding-top: 0px;
}

#contents>.pagelist2+section>ul.listmenu>li>a>p.date {
    margin: 0;
    color: #383838;
}

/* コメント入力 */
#contents>section>.formbox>.formcontents {
    padding: 0;
    margin: 0;
}

.info+form>.formtable {
    margin: 0 10px 5px;
}

.info+form>.formtable span.recommend {
    font-size: 15px;
    color: #383838;
}

.info+aside.formcontents {
    padding-top: 0px;
}

.info+aside.formcontents .button {
    margin-top: 0px;
}

.info+aside.formcontents>.button:first-child>p.btg_r {
    padding-top: 1px;
}

/* お知らせ一覧 */
section>.listmenu:first-child {
    padding-top: 5px;
}

section>div:not(.accordion):not(.customersbox):not(.period):not(.form_t):not(.formlist):not(.titlebar_g):not(.pager):not(.required):not(.title):not(.formbox):not(.formbox_n):not(.title_c):not(.comment):not(.commentbox):not(.titlebar_g_o):not(.titlebar_list):not(.product_img):not(#sub_img):not([class^=mp_itemgroup_layout]):not([id^=mp_ta_free]):not([class^=mp_itemfreepage_layout]):not([class^=mp_itemcategory_layout]):first-child {
    background: white;
    padding: 10px;
}

/***** 複数カテゴリ対応用 *****/
/*トップページの見出し位置調整*/
#sortarea div.sps-itemCategoryGroup {
    width: 100%;
}

#sortarea div.sps-itemCategoryMidashi {
    margin: 10px 0;
}

/*トップページの見出しなしグループの調整*/
#sortarea section>div.sps-itemCategoryGroup:first-child,
#sortarea section>div.bgn2:first-child,
#sortarea section>div.accordion div.sps-itemCategoryGroup:first-child {
    margin-top: 10px;
    background: none !important;
    padding: 0 !important;
}

#sortarea section div.sps-itemCategoryGroup:first-child>*:first-child:not([class="title sps-itemCategoryMidashi"]) {
    padding-top: 5px;
}

/*サイトマップの見出し位置調整*/
#contents nav.sps-itemCategoryGroup {
    width: 100%;
}

#contents nav.sps-itemCategoryGroup>div.titlebar_list {
    width: 100%;
}

/*サイトマップ用下層エリア*/
.listmenu li.sps-itemCategorySub {
    padding: 0 0 2px 15px;
}

/*サイトマップ用下層（第2階層以下）エリアの右線*/
.listmenu li.sps-itemCategorySub .titlebar,
.listmenu li.sps-itemCategorySub li {
    border-right: none;
}

/*サイトマップ用リンクバー*/
.titlebar_list .accordion .sps-titleLinkBar {
    margin: 5px;
    padding: 0;
}

.titlebar_list .accordion .sps-titleLinkBar h1 a {
    display: block;
    margin: 0;
    padding: 6px 0 5px 7px;
    background: white url(../img/theme11/arrow2.png) no-repeat 100% center;
    text-decoration: none;
    font-size: 12px;
    color: #383838;
}

/*************************************************/
/*** キーワードリンクデザイン ***/
/* theme11〜15の共通レイアウト */
#sps-keywordBox ul {
    margin: 0 auto;
    padding: 0.8em 0.5em 0 0;
}

#sps-keywordBox li {
    display: inline-block;
}

#sps-keywordBox li a {
    display: block;
    margin: 0 0 0.5em 0.5em;
    padding: 0.5em 1em;
    text-decoration: none;
    font-size: 0.9em;
}

/* theme11のデザイン */
#sps-keywordBox li a {
    border-right: 1em solid #fff;
    background: url("../img/theme11/arrow2.png") right center no-repeat #fff;
    color: #383838;
}

/***** 購入履歴の評価コメントデザイン *****/
/* theme11のデザイン */
.review p {
    float: none;
    margin: 0;
    padding: 0;
}

.review p a {
    position: relative;
    margin: 0 auto 0;
    padding: 10px 10px 4px 26px;
    height: 20px;
    text-decoration: none;
    font-size: 10px;
    color: #383838;
    vertical-align: middle;
    text-align: left;
    -webkit-box-shadow: none;
}

/* 商品一覧 カタログ表示 */
.cataloglist ul {
    padding: 8px 0 0;
    font-size: 0;
}

.cataloglist .box {
    font-size: 14px;
    display: inline-block;
    width: 48.5%;
    vertical-align: top;
    text-align: left;
    margin: 0 2% 30px 0;
}

.cataloglist .box:nth-child(even) {
    margin-right: 0;
}

.cataloglist div.box .catalogimg {
    width: 100%;
    vertical-align: bottom;
}

.cataloglist .box a {
    text-decoration: none;
    background: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin: 0;
    padding: 0;
}

.cataloglist .bg {
    text-align: right;
}

.cataloglist .itemname {
    font-size: 1em;
    font-weight: normal;
    margin: 5px 0 6px;
    padding: 0 1%;
    line-height: 130%;
    text-align: left;
}

.cataloglist a .itemname {
    color: #383838;
}

.cataloglist .price {
    line-height: 130%;
    /* font-weight: bold; */
    font-size: 1em;
}

.cataloglist .price br {
    display: none;
}

.cataloglist .list_price,
.cataloglist .sales_price {
    display: block;
    padding-left: 1%;
    padding-right: 1%;
}

.cataloglist .initial_price {
    display: block;
    margin: 5px 0 0;
    padding-left: 1%;
    padding-right: 1%;
    color: #C90916;
}

.cataloglist .original_price {
    font-size: 0.9em;
    font-weight: normal;
    margin: 5px 0 0;
}

.cataloglist .recommend {
    margin: 7px 0;
    padding: 0 1%;
    display: block;
    font-size: 0.9em;
    text-align: right;
    font-weight: bold;
    line-height: 130%;
}

.cataloglist .soldout {
    font-size: 11px;
    float: none;
    margin: 5px 0 0;
    padding: 0 1%;
    text-align: right;
}

.cataloglist .soldout span {
    width: auto;
    text-align: center;
    padding: 5px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    display: inline-block;
    line-height: 1;
}

.cataloglist .wish_area {
    text-align: center;
    margin: 5px 0 0;
    width: 100%;
}

.cataloglist .wish_area .wish_add {
    font-size: 80%;
    font-weight: bold;
    padding: 5px 20px;
    background: url("../img/theme11/pagelist_bg.png") repeat-x scroll 0 0 black;
    border-radius: 2px;
    color: white;
    position: relative;
}

.cataloglist .wish_area .wish_add_ok {
    text-decoration: underline;
    font-size: 80%;
    position: relative;
    margin: 9px 0;
}

/***** お気に入りリスト *****/

/* 画像ON */

.itemlist .wish_button_area {
    float: right;
    margin: -45px 15px 0;
    padding: 0;
}

.itemlist .wish_button_area .wish_add_cart {
    width: 87px;
    height: 25px;
    background: url(../img/theme11/btn_cart_bg.png) no-repeat;
    border: none;
    color: white;
    font-size: 10px;
    position: relative;
    margin-right: 2px;
}

.itemlist .wish_button_area .wish_del {
    text-decoration: underline;
    position: relative;
    vertical-align: middle;
    font-size: 12px;
    cursor: pointer;
}

.itemlist .wish_button_area .wish_text_black {
    position: relative;
    vertical-align: middle;
    font-size: 11px;
    padding-right: 2px;
}

.itemlist .wish_text_red {
    color: red;
    font-size: 11px;
    font-weight: bold;
}

/* カタログ表示 */

.cataloglist .wish_button_area {
    margin-top: 10px;
    text-align: center;
    float: left;
    width: 100%;
}

.cataloglist .wish_button_area .wish_add_cart {
    width: 87px;
    height: 25px;
    background: url(../img/theme11/btn_cart_bg.png) no-repeat;
    border: none;
    color: white;
    font-size: 10px;
    margin-bottom: 5px;
}

.cataloglist .wish_button_area .wish_del {
    margin: 10px auto 0;
    width: 50px;
    height: 25px;
    text-decoration: underline;
    display: block;
    vertical-align: middle;
    font-size: 12px;
    cursor: pointer;
}

.cataloglist .wish_button_area .wish_text_black {
    position: relative;
    vertical-align: middle;
    font-size: 11px;
    padding: 5px 0 7px 0;
    display: block;
}

.cataloglist .wish_text_red {
    font-size: 0.9em;
    color: red;
    font-weight: bold;
    text-align: right;
    padding: 0 0 6px;
    line-height: 130%;
}

/* option information style */
.td_lineheight {
    line-height: 150%;
}

.option_style,
.history_option_style {
    margin: 4px 0;
    position: relative;
    width: 100%;
}

.option_style .option_name,
.history_option_style .option_name {
    word-break: break-all;
    text-align: left;
    width: 65%;
    float: left;
    padding-right: 2px;
}

.option_style .option_price,
.history_option_style .option_price {
    text-align: right;
    width: 28%;
    float: right;
}

.history_option_style,
.history_option_style .option_name,
.history_option_style .option_price {
    padding-bottom: 2px !important;
    margin: 0 !important;
}

.option_style:after,
.history_option_style:after {
    content: "";
    display: table;
    clear: both;
}

.history_option_style .option_name {
    color: #383838;
}

table.table_collapse {
    border-collapse: collapse;
}

table.table_collapse th {
    border: 1px solid #dddddd !important;
}

table.table_collapse td {
    border: 1px solid #dddddd;
}

tr.kago_option_info {
    padding: 2px 5px !important;
    line-height: 120%;
}

tr.kago_option_info td.option_name,
tr.kago_option_info td.option_name_last,
tr.kago_option_info td.option_price,
tr.kago_option_info td.option_price_last {
    border-bottom: none;
    border-top: none;
}

tr.kago_option_info td.option_name_last,
tr.kago_option_info td.option_price_last {
    border-bottom: 1px solid #dddddd;
}

td.no_border_bottom {
    border-bottom: none !important;
}

span.option_point_calc {
    color: blue;
    font-size: 12px;
}

/* End option information style */

/* まとめ割引 */
.bundle_name {
    display: inline-block;
    margin: 5px 0px;
    padding: 3px;
    border: 1px solid #f00;
    line-height: 1.3;
    text-decoration: none;
    font-size: 80%;
    color: #f00;
}

td.kago_bundle_info {
    border-top: none !important;
    padding: 0px 5px 5px !important;
}

/* スマホ決済方法アコーディオン */
#contents .sps-pm_accordion .paywrap {
    border: 1px solid #e0e0e0;
    background-color: #ffffff;
    padding: 0;
}

#contents .sps-pm_accordion .paytitlewrap {
    border-bottom: 1px solid #e0e0e0;
    vertical-align: middle;
    background-color: #f4f4f4;
    background-image: none;
    margin: 0;
}

#contents .sps-pm_accordion .paybodywrap {
    padding: 0.5em 0;
}

#contents .sps-pm_accordion .pm-section,
#contents .sps-pm_accordion .pm-section .form_t {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    background-image: none;
}

#contents .sps-pm_accordion .pm-section+.pm-section .paywrap {
    border-top: none;
}

#contents .sps-pm_accordion .paytitlewrap label {
    display: block;
    padding: 0.4em 0.4em 0.2em;
}

#contents .sps-pm_accordion .paytitlewrap label input {
    margin: 0 0.5em 0 0;
    transform: scale(1.3);
}

/** submitリンク */
.guest_area_link {
    width: 246px;
    margin: 1em auto;
    border: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    vertical-align: middle;
    font-size: 18px;
    text-align: center;
    color: black;
}

.guest_area_link a {
    background: none;
    color: #626262;
}

.login_area_link {
    width: 246px;
    margin: 1em auto;
    border: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    vertical-align: middle;
    font-size: 18px;
    text-align: center;
    color: black;
}

.login_area_link a {
    background: none;
    color: #626262;
}

.cart_guest_area_separator {
    display: none;
}

/* アコーディオン開閉ボタン */
.formbar .accordion-open {
    background-image: url("../img/theme11/minus.png");
    background-repeat: no-repeat;
    background-position: 97% center;
    padding-right: 50px;
}

.formbar .accordion-open.active {
    background-image: url("../img/theme11/plus.png");
    background-repeat: no-repeat;
    background-position: 97% center;
}



.guide-privacy {
    margin-top: 30px;
    padding-top: 25px;
    border-top: 1px solid #707070;
}




/* バナー等の表示切り替え */
.img-pc {
    display: none;
}



#footer {
    margin-top: 60px;
    font-size: 16px;
}

#footer section .freearea {
    padding-top: 0 !important;
}

.footer-list {
    background-color: #F2F2F2 !important;
    padding: 60px 16px !important;
    margin: 0 calc(50% - 50vw);
}

.footer-item+.footer-item {
    margin-top: 15px;
}

.footer-item-title {
    text-align: center;
    color: #fff;
    padding: 13px 35px;
    background-color: #ACACAC;
    cursor: pointer;
    font-weight: bold;
    transition: all .5s ease;
    position: relative;
    width: 100%;
    border-radius: 4px;
    margin: 0;
    font-size: 16px;
}



/*アイコンの＋と×*/
.accordion .titlebar_b h1::before,
.accordion .titlebar_b h1::after,
.footer-item-title::before,
.footer-item-title::after,
.guide01 h2:before,
.guide01 h2::after,
.business-title .title h1::before,
.business-title .title h1::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #fff;
}

.accordion .titlebar_b h1::before,
.guide01 h2:before,
.footer-item-title::before,
.business-title .title h1::before {
    top: 48%;
    right: 15px;
    transform: rotate(0deg);

}

.accordion .titlebar_b h1::after,
.guide01 h2::after,
.footer-item-title::after,
.business-title .title h1::after {
    top: 48%;
    right: 15px;
    transform: rotate(90deg);
}

.accordion .titlebar_b .active::after,
.guide01 .close::after,
.business-title .title .close::after {
    transform: rotate(0deg);
}


.footer-item-title.close::after {
    display: none;
}

.footer-item-body {
    display: none;
    padding: 30px 15px;
    background-color: #fff;
    border-radius: 0 0 4px 4px;
}

.footer-item-sub-title {
    margin-top: 0;
    font-weight: bold;
    padding: 5px 10px;
    background-color: #E3E3E3;
    margin-bottom: 10px;
}

.footer-item-sub+.footer-item-sub {
    margin-top: 30px;
}

.footer-item-sub a {
    color: #516898 !important;
    border-bottom: 1px solid #516898 !important;
}

.footer-text {
    font-size: 14px;
    margin-top: 10px;
}

.footer-item-body>.footer-text:first-of-type {
    margin-top: 0;
}

.footer-item-img {
    margin-top: 10px;
    text-align: center;
    font-size: 14px;
}

.footer-price-change {
    max-width: 260px;
}

.footer-price-item {
    display: flex;
    display: -webkit-box;
    display: -ms-flexbox;

}

.price-change {
    flex: 0 0 180px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 180px;
}

.price-text {
    flex: 0 1 100%;
    -webkit-box-flex: 1;
    -ms-flex: 0 1 100%;
    text-align: right;
}

.footer-price-area {
    max-width: 140px;
    margin: 10px 0;
}

.price-area {
    flex: 0 0 60px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60px;
}

.footer-attention,
.guide-attention {
    display: inline-block;
    color: #919191;
    text-indent: -1em;
    padding-left: 1em;
    font-size: 12px;
}

.guide-link {
    font-size: 12px;
    color: #516898 !important;
    border-bottom: 1px solid #516898 !important;
}

.footer-sm-title {
    margin: 15px 0 5px;
}

.mt {
    margin-top: 20px;
}

.footer-contact {
    margin-top: 30px;
}

.footer-contact h2 {
    margin-top: 0;
    border-bottom: 2px solid #C90916;
    font-size: 18px;
}

.contact-item h3 {
    font-size: 24px;
    margin: 0;
}

.contact-item+.contact-item {
    margin-top: 20px;
}

.contact-btn {
    margin-top: 10px;
    text-align: center;
}

.btn {
    display: inline-block;
    font-size: 12px;
    color: #fff !important;
    text-decoration: none !important;
    padding: 15px 0;
    width: 100%;
    max-width: 280px;
    border-radius: 4px;
}

.bg-blue {
    background-color: #516898;
}

.bg-red {
    background-color: #A34047;
}



.sidr-heading {
    border-bottom: 2px solid #C90916;
    font-size: 16px !important;
    background-color: transparent !important;
    color: #383838 !important;
    line-height: 1.5 !important;
}

.sidr-search input[type=submit] {
    background-color: #C90916 !important;
}

#pi_cat,
#pi_s_cat_up {
    margin: 60px calc(50% - 50vw) 0;
    background-color: #F2F2F2;
    padding: 60px 0;
}

#pi_s_cat_up .bgn2 {
    background-color: transparent !important;
}

#pi_cat .title,
#pi_cat aside {
    padding: 0 16px;
}

#pi_relate .bx-wrapper {
    margin: 0 auto 120px;
}

#sidr-1 .sidr-body {
    padding: 0 8px !important;
}

.drawer-banner {
    margin: 25px 0 0;
}

#pi_banner_slider {
    margin: 0 calc(50% - 50vw);
}

#pi_banner_slider .bx-wrapper img {
    max-width: 100% !important;
}

.bx-wrapper img {
    max-width: 100% !important;
}

/* ------------------
見出し
------------------- */
#sidr-2 .sidr-body h2 {
    border-bottom: 2px double #C90916;
    color: #383838;
    font-size: 18px;
    padding: 20px 0 0px;
    margin: 0;
    line-height: 1.5;
}

/* ------------------
商品カテゴリ一覧
------------------- */
.goods-item-link {
    display: flex !important;
    display: -webkit-box;
    display: -ms-flexbox;
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    border-bottom: 1px solid #ACACAC;
    padding: 10px 15px 10px 0 !important;
    position: relative;
}

.goods-item-link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 6px;
    border-color: transparent transparent transparent #acacac;
}

.goods-item-img {
    flex: 0 0 50px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50px;
    height: 50px;
    margin-right: 10px;
}

.goods-item-img img {
    height: 100%;
    object-fit: cover;
}

.goods-item-head {
    flex: 0 1 100%;
    -webkit-box-flex: 1;
    -ms-flex: 0 1 100%;
}

.goods-item-head img {
    max-width: 40px;

}

.goods-item-head h3 {
    margin: 0;
    font-size: 12px;
    line-height: 1;
    font-weight: normal;
}

.business-info {
    display: none;
    margin: 0 10px;
    padding: 10px 0 0 0;
}

.business-info table,
.business-info tbody,
.business-info tbody tr,
.business-info tbody td {
    margin: 0;
    display: block;
    width: 100% !important;
    font-size: 14px;
    color: #383838;
}

.business-info tbody {
    border: 1px solid #DBDBDB;
}

.business-info tbody tr:first-child td.l {
    border-top: none;
}

.business-info tbody td {
    padding: 6px 10px !important;
}

.business-info tbody td.l {
    background-color: #F2F2F2;
    border-top: 1px solid #DBDBDB;
    border-bottom: 1px solid #DBDBDB;
}


#mp_ta_mailmag br:first-child {
    display: block;
    content: "";
    padding-bottom: 20px;
}

#mp_ta_mailmag a {
    display: inline-block;
    padding: 10px 20px;
    background-color: #C90916;
    color: #fff;
    border-radius: 4px;
    width: 100%;
    max-width: 200px;
    text-align: center;
    margin-bottom: 20px;
    margin-left: 5px;
}

#mp_ta_mailmag a:last-of-type {
    padding: 6px 20px;
    background-color: #ACACAC;
}

/* 「ID/パスを忘れた場合」 */


/* 「会員IDの照会結果」 */
.cart-id table {
    margin-top: 20px;
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.cart-id table td {
    border: 1px solid #DBDBDB;
    padding: 6px 10px;
}

.cart-id table td.l {
    background-color: #F2F2F2;
    width: 140px;
}

/* 「マイページ」 */
.cart-forget .formbar h3,
.cart-login .formbar h3,
.cart-book .title h1 {
    margin: 30px 0 20px;
    border-bottom: 1px solid #383838;
    padding-bottom: 5px;
    font-size: 18px;
}

.cart-forget dd,
.cart-login dd+dd {
    margin-top: 20px;
}

.cart-forget input,
.cart-login input {
    height: 45px;
    font-size: 16px;
    padding: 6px 10px;
}

.cart-forget .button,
.cart-login .button {
    margin-top: 20px;
}

.cart-book .form_select {
    padding: 0 !important;
    max-width: 180px;
}

.cart-book .form_select::before {
    top: 50%;
}

.cart-book .form_select select {
    width: 100%;
    height: 45px;
    background: transparent;
}

.cart-book .listmenu {
    margin: 0 calc(50% - 50vw);
    background-color: #F2F2F2;
    padding: 30px 16px !important;
}

.cart-book .listmenu li a {
    width: 100%;
    display: inline-block;
    background-color: #fff;
    padding: 20px 30px 20px 10px !important;
    border-bottom: none;
    position: relative;
}

.cart-book .listmenu li a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 6px;
    border-color: transparent transparent transparent #C90916;
}

.pc-link {
    display: none;
}

@media screen and (min-width: 960px) {
    .pc-link {
        display: block;
    }
}

#mp_ta_header {
    margin: 0 calc(50% - 50vw) !important;
}

#mp_ta_header img {
    width: 100%;
}


.intro {
    text-align: center;
    padding: 0 20px;
}

.intro>img:first-child {
    max-width: 300px;
}

.intro-title {
    margin: 0 auto 5px;
    font-size: 20px;
}

@media screen and (max-width: 374px) {
    .intro-title {
        font-size: 18px;
    }
}

.intro-text {
    text-align: left;
    margin-bottom: 30px;
}

.oseibo {
    margin-top: 30px;
    padding: 45px 10px 40px;
    background-color:#fce8e8;
}

.oseibo-item {
    background-color: #fff;
    position: relative;
    overflow: hidden;
}

.oseibo-item+.oseibo-item {
    margin-top: 20px;
}

.oseibo-head {
    padding: 20px 10px;
    position: relative;
}

.oseibo-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.swiper-ippin,
.swiper-compare,
.swiper-retort {
    position: relative;
    padding: 20px 20px 30px;
}

.swiper-img {
    max-width: 270px;
    margin: 0 auto;
}

.oseibo-title {
    font-size: 18px;
    margin: 0 0 5px;
    letter-spacing: .03em;
}

.oseibo-red {
    font-size: 14px;
    color: #c90916;
}

.oseibo-txt-small{
    font-size: 14px;
}

p.swiper-price span.strike{
    text-decoration: line-through;
    margin-right: 5px;
}

.oseibo-text {
    font-size: 14px;
    letter-spacing: .03em;
}

.small {
    margin-top: 8px;
    font-size: 10px;
}

.oseibo-btn {
    margin-top: 10px;
}

.oseibo-btn a {
    display: inline-block;
    background-color: #8a1e1e;
    color: #fff;
    width: 100%;
    text-align: center;
    padding: 15px 0;
}

.swiper-text {
    text-align: center;
}

.swiper-teika {
    color: #b0b0b0;
    position: relative;
}

.swiper-teika::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background-color: #b0b0b0;
}

.swiper-price {
    text-align: center;
    font-weight: 600;
    font-size: 20px;
    color: #C90916;
}

.swiper-button-prev,
.swiper-button-next {
    top: auto !important;
    bottom: 150px;
    width: 16px !important;
    height: 0px !important;
    margin-top: 0 !important;
    background-image: none;
}

.swiper-button-prev::after,
.swiper-button-next::after {
    content: "" !important;
    position: absolute;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-color: #8a1e1e;
    z-index: 1;
}

.swiper-button-prev::after {
    left: 0;
}

.swiper-button-next::after {
    right: 0;
}

.swiper-button-prev::before,
.swiper-button-next::before {
    content: "";
    position: absolute;
    z-index: 2;
}

.swiper-button-prev::before {
    left: 15px;
    border-style: solid;
    border-width: 8px 12px 8px 0;
    border-color: transparent #fff transparent transparent;
}

.swiper-button-next::before {
    right: 15px;
    border-style: solid;
    border-width: 8px 0 8px 12px;
    border-color: transparent transparent transparent #fff;
}



.huku-color {
    color: #c0a930;
}

.huku-main {
    padding: 0 20px;
    margin: -70px auto 0;
    max-width: 500px;
}

.huku-text {
    padding: 0 20px;
    font-size: 13px;
    margin: 10px auto 0;
    max-width: 560px;
}

.huku-contents {
    background-color: #c0a930;
    margin-top: 30px;
    padding: 30px 20px 40px;
}

.huku-title {
    margin-bottom: 15px;
    text-align: center;
}

.huku-title img {
    max-width: 360px;
}

.huku-item {
    background-color: #fff;
    padding: 20px 12px 30px;
}

.huku-item+.huku-item {
    margin-top: 40px;
}

.huku-img {
    margin: 0 auto;
    max-width: 500px;
}

.huku-menu-list {
    margin: 0 auto;
    max-width: 330px;
}

.huku-menu-item {
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.75;
}

.huku-teika {
    margin: 20px auto;
    max-width: 330px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #efefef;
    padding: 10px 20px 5px;
    border-radius: 5px;
    position: relative;
}

.huku-teika::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 46%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8.7px;
    border-color: transparent transparent transparent #383838;
}

.huku-price-title {
    font-size: 11px;
    line-height: 1.25;
}

.huku-single-price,
.huku-sta-price,
.huku-year-price {
    margin: 0;
}

.huku-sta-price {
    font-size: 20px;
}

.border {
    position: relative;
}

.border::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background-color: #383838;
}

.huku-year {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin: 0 auto;
    max-width: 330px;
}

.huku-year-img {
    flex: 0 0 45%;
}

.huku-year-price {
    margin-left: 10px;
    font-size: 30px;
    line-height: 1.25;
}

.hukubako-btn {
    max-width: 330px;
    margin: 30px auto 0;
}

.s-text {
    font-size: 11px;
}

.red-text {
    color: #b00b0b;
}

@media screen and (max-width: 375px) {
    .huku-teika {
        margin: 20px 10px;
    }

    .huku-year {
        margin: 0 10px;
    }

    .huku-year-img {
        max-width: 115px;
    }
}

@media screen and (max-width: 350px) {
    .huku-main {
        margin: -50px auto 0;
    }

    .huku-teika {
        margin: 20px 0px;
        padding: 10px 10px 5px;
    }

    .huku-year {
        margin: 0;
    }

    .huku-sta-price {
        font-size: 18px;
    }

    .huku-year-price {
        margin-left: 5px;
        font-size: 22px;
    }
}