@charset "UTF-8";
/* 商品画像(640×480/1000×1000サイズの共存)
---------------------------------------------------------- */
img[src*="/img/p/"] {
    aspect-ratio: 1;
    object-fit: contain;
    background: #fff;
}

/* !reset
---------------------------------------------------------- */
li {
    list-style: none;
}
/* !Clearfix
---------------------------------------------------------- */
.clearfix:before,
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    overflow: hidden;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    zoom: 1;
}
/* IE < 8 */
.clearboth {
    clear: both;
}
/* !a
---------------------------------------------------------- */
a {
    /* \*/
    overflow: hidden;
    /* */
    /*text-decoration: none;*/
    color: #0066ff;
}
a:hover {
    text-decoration: underline;
    color: #ed0000;
}
a:hover img {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    -mob-opacity: 0.8;
    -khtml-opacity: 0.8;
    zoom: 1;
}
input:hover,
button:hover,
img#img1:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    -mob-opacity: 0.8;
    -khtml-opacity: 0.8;
    zoom: 1;
}
img#img1:hover {
    cursor: pointer;
}
/* !Layout
---------------------------------------------------------- */
html {
    overflow-y: scroll;
}
body {
    text-align: center;
    word-break: break-all;
}
@media print {
    html,
    html body {
        *zoom: 0.65;
    }
}
body {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-size: 13px;
    line-height: 1.6em;
    color: #333;
    background-color: #fff;
    width: 100%;
    margin: 0;
    padding: 0;
}
p {
    margin: 0;
    padding: 0;
}
/* !common
---------------------------------------------------------- */
.font-10 {
    font-size: 10px;
}
.font-red {
    color: #db0000;
}
.font-blue {
    color: #1571fc;
}
.font-bold {
    font-weight: bold;
}
.marginBtm20 {
    margin-bottom: 20px;
}
strong {
    font-weight: bold;
    font-size: 13px;
    padding: 0;
    margin: 0;
}
iframe.twitter-share-button {
    width: 100px !important;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
.wsnwp {
    white-space: nowrap;
}
/* !wrapper
---------------------------------------------------------- */
#wrapper {
    width: 100%;
    margin: 0 auto;
    text-align: left;
    background-color: #fff;
}
/* !header
---------------------------------------------------------- */
#header {
    width: 1000px;
    margin: 0 auto;
    margin-bottom: 20px;
    text-align: center;
}
#header .headImg {
    width: 980px;
    background: url(/img/detail_header_bg.gif) repeat-x left top;
}
#header .head_search {
    text-align: center;
    padding: 1px;
    margin: 0 auto;
    width: 1000px;
    margin-top: 10px;
    background-color: #99CCFF;
}
#header .head_search .head_searchInr {
    font-size: 16px;
    text-align: center;
    border: 1px solid #fff;
    background-color: #99CCFF;
}
#header .head_search .head_searchInr input.focus {
    font-size: 1.2em;
    padding: 0px 10px;
    height: 34px;
    line-height: 34px;
    margin: 7px 0 7px 10px;
    display: inline;
    vertical-align: middle;
}
#header .head_search .head_searchInr input.btn_search {
    cursor: pointer;
    width: 80px;
    height: 36px;
    border: none;
    text-indent: -9999px;
    background: url(/img/button_head_search.gif) no-repeat 0 0;
    margin-left: 3px;
    display: inline;
    vertical-align: middle;
}
/* !contents
---------------------------------------------------------- */
#contents {
    width: 1000px;
    margin: 0 auto;
    padding: 0 0px;
    overflow: hidden;
}
#contents .tomopro {
    /*width: 910px;*/
    border: 1px solid #edc741;
    background-color: #fffcf1;
    margin-bottom: 20px;
    padding: 20px 15px 15px 15px;
}
#contents .tomopro dl.two {
    clear: both;
}
#contents .tomopro dl.two dt.ttl {
    float: left;
    width: 15em;
    background: url(/img/icon_number02_orange14_01.gif) no-repeat left 2px;
    padding-left: 20px;
    color: #ff3f00;
    font-weight: bold;
}
#contents .tomopro dl.two dd {
    margin-left: 16em;
}
#contents .tomopro dl.one dt.ttl {
    clear: both;
}
#contents .tomopro dl.one dt.ttl {
    float: left;
    width: 20em;
    background: url(/img/icon_number02_orange14_02.gif) no-repeat left 8px;
    padding-left: 20px;
    color: #ff3f00;
    font-weight: bold;
    padding-top: 6px;
}
#contents .tomopro dl.one dd {
    margin-left: 21em;
}
#contents .tomopro p.mainTtl {
    float: left;
    font-size: 16px;
    color: #fff;
    font-weight: bold;
    margin: 0 10px 5px 0;
    padding: 0 10px;
    height: 24px;
    line-height: 24px;
    background-color: #ffae00;
}
#contents .tomopro p.mainTtl a,
#contents .tomopro p.mainTtl a:hover {
    color: #fff;
    text-decoration: none;
}
#contents .tomopro p.point {
    font-weight: bold;
    margin-bottom: 20px;
    height: 23px;
    line-height: 23px;
    border-bottom: 1px solid #ffae00;
}
#contents .main {
    float: left;
    width: 760px;
}
#contents .main h1 {
    font-size: 26px;
    line-height: 140%;
    font-weight: bold;
    margin-bottom: 10px;
}
#contents .main div.review {
    font-size: 26px;
    line-height: 140%;
    font-weight: bold;
    margin-bottom: 10px;
}
#contents .main h1.reviewTtl {
    margin-bottom: 10px;
}
#contents .main h1 .reviewSub {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    width: 0;
    height: 0;
    padding: 0;
    margin: 0;
}
#contents .main .offerInfo {
    margin-bottom: 10px;
}
#contents .main .reviewAll img.star {
    vertical-align: -2px;
}
#contents .main .lowJpy {
    color: #1571fc;
    font-weight: bold;
    font-size: 26px;
    padding-right: 10px;
    padding-left: 2px;
}
/* #11624 【小売りサイト】デザイン部さん　最低価格表示　改修 START */
.lowest-price-detail,
.lowest-price-review {
    display: inline-block;
    padding-right: 10px;
}
.lowest-price-detail__term,
.lowest-price-review__term {
    color: #666;
    display: inline-block;
    font-size: 14px;
}
.lowest-price-detail__value,
.lowest-price-review__value {
    align-items: baseline;
    color: #f00;
    display: inline-flex;
    font-size: 26px;
    font-weight: 700;
}
.lowest-price-detail__unit,
.lowest-price-review__unit {
    font-size: 16px;
}
/* #11624 【小売りサイト】デザイン部さん　最低価格表示　改修 END */
#contents .main .paging {
    text-align: center;
    padding: 15px 0;
    margin-bottom: 30px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
#contents .main .paging .numbers {
    color: #990000;
    font-weight: bold;
}
#contents .main .item {
    font-size: 18px;
    line-height: 140%;
    font-weight: bold;
}
#contents .main .item a {
    text-decoration: underline;
}
#contents .main .item a h2.review-title {
    font-size: 18px;
    margin: 0;
    background: none;
    border: none;
    font-weight: bold;
    padding: 0;
}
#contents .main .itemTag {
    margin-bottom: 10px;
    line-height: 26px;
}
#contents .main .itemTag p.tagTtl {
    float: left;
    text-align: center;
    padding: 0 5px;
    font-weight: bold;
    margin: 0;
}
#contents .main .itemTag p.tagTtl a {
    text-decoration: underline;
}
#contents .main .txtlink {
    float: right;
    width: 450px;
}
#contents .main .section {
    clear: both;
    margin-bottom: 30px;
}
#contents .main .section a {
    text-decoration: underline;
}
#contents .main .section h3 {
    font-size: 20px;
    line-height: 140%;
    font-weight: bold;
    color: #1571fc;
    margin: 0;
    margin-bottom: 20px;
    background-color: #fff;
    border-left: none;
    border-bottom: 1px solid #94b4e6;
    border-top: 1px solid #94b4e6;
    background-color: #eff8ff;
    padding: 5px 10px 5px 10px;
}
#contents .side p.cheapest {
    font-size: 12px;
    padding: 10px 20px 10px 20px;
    margin-bottom: 10px;
    border-top: 3px solid #0054db;
    border-bottom: 3px solid #0054db;
    background-color: #f3faff;
    text-align: left;
}
#contents .side p.cheapest img {
    margin: 5px 0;
}
#contents .main .section .article {
    padding: 0 10px;
    line-height: 180%;
}
img[src*="/img/item/"] {
    width:auto !important;
    max-width: 100%;
}
#contents .main .section .expert {
    margin: 20px 10px 20px 10px;
    padding: 15px 15px 15px 15px;
    border: 1px solid #eb8f8f;
}
#contents .main .section .expert p {
    margin: 0;
    padding: 0;
}
#contents .main .section .expert h3.expertTtl {
    font-size: 16px;
    color: #c32e2e;
    font-weight: bold;
    padding: 0 0px 0.5em 0px;
    margin: 0;
    border: none;
    background: none;
}
#contents .main .section .expert .certificate img {
    border: 1px solid #ccc;
    float: right;
    margin-left: 30px;
}
#contents .main .section02 {
    clear: both;
    margin-bottom: 30px;
}
#contents .main .section02 a {
    text-decoration: underline;
}
#contents .main .section02 h4,
#contents .main .section02 .section02__title { /* #28527 同一有効成分を含む製品例  */
    font-size: 16px;
    line-height: 140%;
    font-weight: bold;
    color: #1571fc;
    margin: 0;
    background-color: #fff;
    border-left: none;
    border-bottom: none;
    border-top: 1px solid #94b4e6;
    padding-left: 10px;
    padding-right: 0;
    padding-top: 15px;
    padding-bottom: 5px;
}
#contents .main .section02 .article {
    padding: 0 10px;
    line-height: 180%;
}
#contents .main .section .ymtCaution {
    padding: 20px 15px 15px 15px;
    border: 2px solid #f00;
    border: 5px solid #ffcc00;
    margin-bottom: 20px;
}
#contents .main .section .ymtCaution .yc_ttl {
    font-weight: bold;
    font-size: 18px;
}
#contents .main .section .ymtCaution ul.yc_marks {
    list-style: none;
    margin: 0 0 0 0;
}
#contents .main .section .ymtCaution ul.yc_marks li {
    float: left;
    padding: 0 10px 10px 0;
}
#contents .main .section .ymtCaution ul.yc_dsc {
    padding: 0 0 10px 0;
}
#contents .main .section .ymtCaution dt.ymNotes {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    cursor: pointer;
}
#contents .main .section .ymtCaution dt.ymNotes .icon {
    vertical-align: top;
    margin-right: 3px;
}
#contents .main .section .ymtCaution .ymBox {
    padding: 10px 0;
    font-size: 14px;
    line-height: 170%;
}
#contents .main .section .ymtCaution dt.ymNotes .ymnBtn {
    font-size: 14px;
    color: #fff;
    background: #f00;
    padding: 5px;
}
#contents .main .section .ymtCaution table.tbl {
    border-top: 1px solid #aaa;
    width: 100%;
}
#contents .main .section .ymtCaution table.tbl td {
    border-bottom: 1px solid #aaa;
    padding: 10px;
}
#contents .main .section .ymtCaution table.tbl td.subject {
    font-weight: bold;
    white-space: nowrap;
    background-color: #ffffdb;
    text-align: center;
}
#contents .main .section .order {
    margin-bottom: 0px;
    padding: 0 0 0 0;
    position: relative;
}
#contents .main .section .order h2 {
    font-size: 16px;
    background-color: #1571fc;
    color: #fff;
    font-weight: bold;
    padding: 7px 60px 7px 10px;
    margin: 0 0 5px 0;
    line-height: 150%;
    border-left: none;
    position: relative;
}
#contents .main .section .order h2 .medicine {
    position: absolute;
    right: 7px;
    top: 50%;
    margin-top: -9px;
}
#contents .main .section .order .orderL {
    float: left;
    width: 200px;
    text-align: center;
    padding-bottom: 5px;
    position: relative;
}
#contents .main .section .order .orderL img {
    float: left;
    width: 200px;
}
*html #contents .main .section .order .orderL {
    float: left;
    width: 200px;
    text-align: center;
    position: relative;
}
#contents .main .section .order .mark {
    /*position: absolute;
    top: -17px;
    left: 0px;
    z-index: 9999;*/
}
#contents .main .section .order .mark img {
    margin-right: 3px;
}
#contents .main .section .itemMemo {
    line-height: 160%;
    padding: 10px 10px;
    margin: 10px 0;
    background: #ffffdd;
    border: 1px solid #9db5cf;
}
#contents .main .section .itemMemo.present {
    line-height: 160%;
    padding: 15px;
    margin: 10px auto;
    background: #ffffdd;
    border: 1px solid #ff4949;
    border-radius: 4px;
}
#contents .main .section .itemMemo.cmt {
    line-height: 160%;
    padding: 15px;
    margin: 10px auto;
    background: #fef9ff;
    border: 1px solid #b79dcf;
    border-radius: 4px;
}
#contents .main .section .present {
    margin: 10px 0;
}
#contents .main .section .cmtTag {
    margin: 0 0 1em;
}
#contents .main .section .order .orderR .rating {
    clear: both;
    margin-bottom: 10px;
}
#contents .main .section .order .orderR .rating a {
    text-decoration: underline;
}
#contents .main .section .order .orderR .txtReview {
    clear: both;
    font-size: 12px;
    text-align: center;
    padding-top: 5px;
    color: #e45050;
}
#contents .main .section .order .orderR {
    float: right;
    width: 540px;
    padding-top: 1.5em;
}
#contents .main .section .order .orderR dl.itemInfo {
    margin-bottom: 10px;
    float: left;
    width: 260px;
}
#contents .main .section .order .orderR dl.itemInfo dt {
    clear: both;
    font-weight: bold;
    float: left;
    width: 6em;
}
#contents .main .section .order .orderR dl.itemInfo dd {
    margin-left: 6em;
}
#contents .main .section .order .orderR .onePrice {
    border: 1px solid #999;
    background-color: #FFF;
    padding: 5px 10px;
    margin-top: 3px;
    margin-bottom: 10px;
}
#contents .main .section .order .orderPrice {
    clear: both;
    /*margin-bottom: 25px;*/
}
#contents .main .section .order .orderPrice .productCode {
    padding: 0.7em 10px 0.5em 10px;
    /*margin:0 20px;*/
    /*background: #fffddd;
    background: #e5f0ff;*/
    background: #eafaff;
    border-top: 1px solid #1571fc;
}
#contents .main .section .order .orderPrice .productCode img {
    vertical-align: -3px;
}
#contents .main .section .order .orderPrice .code {
    float: left;
    width: 450px;
    color: #e30000;
    font-size: 14px;
    font-weight: bold;
    padding-left: 18px;
    background: url(/img/arrow_shipping.gif) no-repeat left 3px;
}
#contents .main .section .order .orderPrice .code .ymtDeli {
    color: #fff;
    background-color: #e30000;
    padding: 3px;
    font-size: 14px;
}
#contents .main .section .order .orderPrice .getPoint {
    float: right;
    text-align: right;
    font-size: 12px;
    color: #4744ca;
    width: 260px;
}
#contents .main .section .order .orderPrice table.setList {
    clear: both;
    font-size: 12px;
    line-height: 150%;
    margin: 0 auto;
    border-top: 1px solid #CCC;
}
#contents .main .section .order .orderPrice table.setList thead tr {
    border-top: 1px solid #a7c8f9;
    border-bottom: 1px solid #a7c8f9;
}
*html #contents .main .section .order .orderPrice table.setList thead tr th {
    border-top: 1px solid #a7c8f9;
    border-bottom: 1px solid #a7c8f9;
}
#contents .main .section .order .orderPrice table.setList thead tr th {
    text-align: left;
    background-color: #e5f0ff;
    padding: 0.3em 10px;
    font-size: 12px;
    color: #1571fc;
    font-weight: bold;
}
#contents .main .section .order .orderPrice table.setList tbody tr.bg01 {
    background-color: #fff;
}
#contents .main .section .order .orderPrice table.setList tbody tr.bg02 {
    background-color: #f5f5f5;
}
#contents .main .section .order .orderPrice table.setList tbody tr td {
    padding: 4px 10px 4px 10px;
    font-weight: bold;
    border-bottom: 1px solid #CCC;
}
#contents .main .section .order .orderPrice table.setList tbody tr:hover td {
    background: #fffccd;
}
/*--  同梱吹き出し start --*/
#contents .main .section .order .orderPrice table.setList tbody tr td span,
#contents .main .section .order .orderPrice .productCode .code span {
    display: inline;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon {
    color: #06f;
}
#contents .main .section .order .orderPrice .productCode .code .dokon {
    font-size: 1em;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .question,
#contents .main .section .order .orderPrice .productCode .code .dokon .question {
    display: inline-block;
    background-color: #b0cefc;
    line-height: 1.0;
    color: #FFF;
    padding: 1px;
    width: 14px;
    text-align: center;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}
#contents .main .section .order .orderPrice .productCode .code .dokon .question {
    margin-left: 0.5em;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon:hover,
#contents .main .section .order .orderPrice .productCode .code .dokon:hover {
    cursor: pointer;
    position: relative;
    text-decoration: none;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips,
#contents .main .section .order .orderPrice .productCode .code .dokon .dokon-tooltips {
    display: none;
    position: absolute;
    top: 1em;
    /*★省略不可、ブラウザ初期値バラバラ*/
    left: -1em;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon:hover .dokon-tooltips,
#contents .main .section .order .orderPrice .productCode .code .dokon:hover .dokon-tooltips {
    z-index: 9999;
    display: block;
    width: 300px;
    padding-top: 11px;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame,
#contents .main .section .order .orderPrice .productCode .code .dokon .dokon-tooltips .dokon-farame {
    cursor: auto;
    position: relative;
    display: block;
    background: #ffffff;
    padding: 1em;
    border: 1px solid #666;
    color: #333;
    font-size: 12px;
    font-weight: normal;
    -webkit-border-radius: 0.4em;
    -moz-border-radius: 0.4em;
    border-radius: 0.4em;
    -webkit-box-shadow: 0px 2px 7px 1px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0px 2px 7px 1px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 2px 7px 1px rgba(0, 0, 0, 0.4);
    /* For IE 8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=1, Direction=0, Color='#000000')";
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame:after,
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame:before {
    bottom: 100%;
    left: 9.5em;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
#contents .main .section .order .orderPrice .productCode .code .dokon .dokon-tooltips .dokon-farame:after,
#contents .main .section .order .orderPrice .productCode .code .dokon .dokon-tooltips .dokon-farame:before {
    font-size: 14px;
    bottom: 100%;
    left: 9em;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame:after,
#contents .main .section .order .orderPrice .productCode .code .dokon .dokon-tooltips .dokon-farame:after {
    border-color: rgba(255, 255, 255, 0);
    border-bottom-color: #ffffff;
    border-width: 8px;
    margin-left: -8px;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame:before,
#contents .main .section .order .orderPrice .productCode .code .dokon .dokon-tooltips .dokon-farame:before {
    border-color: rgba(0, 0, 0, 0);
    border-bottom-color: #000000;
    border-width: 9px;
    margin-left: -9px;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame .red {
    color: #F00;
}
#contents .main .section .order .orderPrice table.setList tbody tr td .dokon .dokon-tooltips .dokon-farame .underline {
    text-decoration: underline;
}
/*--  同梱吹き出し end --*/
#contents .main .section .order .orderPrice table.setList tbody tr td.perOne {
    font-weight: normal;
    font-size: 11px;
    width: 1px;
    white-space: nowrap;
    padding: 0 8px;
    text-align: right;
}
#contents .main .section .order .orderPrice table.setList tbody tr td.jpY {
    width: 1px;
    white-space: nowrap;
    padding: 0 5px;
    text-align: right;
    color: #1571fc;
}
#contents .main .section .order .orderPrice table.setList tbody tr td.usD {
    width: 1px;
    white-space: nowrap;
    padding: 0 5px;
    text-align: right;
    color: #f00;
}
/* #11624 【小売りサイト】デザイン部さん　最低価格表示　改修 START */
.lowest-data {
    color: #666;
    font-weight: normal !important;
    width: 15%;
    padding: 0 5px !important;
}
.lowest-data__term {
    font-size: 10px;
}
.lowesr-data__value {
    font-size: 12px;
}
.lowest-data__unit {
    font-size: 10px;
}
/* #11624 【小売りサイト】デザイン部さん　最低価格表示　改修 END */
#contents .main .section .order .orderPrice table.setList tbody tr td.select {
    width: 1px;
    text-align: right;
}
#contents .main .section .order .orderPrice table.setList tbody tr td table#cartForm {
    margin: 0;
    padding: 0;
    width: 1px;
    float: right;
}
#contents .main .section .order .orderPrice table.setList tbody tr td table#cartForm tbody tr td.numbers {
    width: 1px;
    white-space: nowrap;
    border: 0;
    margin: 0;
    padding: 0 10px 0 0;
}
#contents .main .section .order .orderPrice table.setList tbody tr td table#cartForm tbody tr td.numbers .r {
    white-space: nowrap;
}
#contents .main .section .order .orderPrice table.setList tbody tr td table#cartForm tbody tr td.numbers .bo {
    white-space: nowrap;
    color: #f00;
}
#contents .main .section .order .orderPrice table.setList tbody tr td table#cartForm tbody tr td.btn {
    width: 89px;
    border: 0;
    margin: 0;
    padding: 0;
}
#contents .main .section .order .orderNum {
    float: left;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 10px;
    width: 149px;
    height: 43px;
    line-height: 43px;
    text-align: right;
}
#contents .main .section02 .article .reviewSec {
    margin-bottom: 40px;
    padding-top: 20px;
    border-top: 1px dotted #ccc;
}
#contents .main .section02 .article .reviewSec .date,
#contents .main .section02 .article .reviewSec img.gender {
    margin-left: 10px;
    margin-right: 5px;
    vertical-align: -2px;
}
#contents .main .section02 .article .reviewSec .date,
#contents .main .section02 .article .reviewSec .name {
    color: #666666;
}
#contents .main .section02 .article .reviewSec p.reviewItem {
    margin-top: 3px;
    margin-bottom: 10px;
    font-weight: bold;
}
#contents .main .section02 .article .reviewSec p.reviewComment {
    margin-bottom: 10px;
}
#contents .main .section02 .article .reviewSec .staff {
    margin-bottom: 10px;
    margin-left: 2.5em;
    padding-left: 1.5em;
    background: url(/img/review_tree.gif) no-repeat left top;
}
#contents .main .section02 .article .reviewSec .staff .staffName {
    font-weight: bold;
    color: #008aff;
}
#contents .main .section02 .article .reviewSec .helpful {
    color: #e7623f;
}
#contents .main .section02 .article .reviewSec .helpful img.btn {
    vertical-align: bottom;
    margin-left: 10px;
}
#contents .main .section02 .article .allReview {
    height: 50px;
    font-size: 18px;
    text-align: center;
    border: 1px solid #ccc;
    background-color: #f5f5f5;
}
#contents .main .section02 .article .allReview a {
    height: 50px;
    line-height: 50px;
    display: block;
}
*html #contents .main .section02 .article .allReview a {
    height: 35px;
    line-height: 100%;
    padding-top: 15px;
    display: block;
}
#contents .main .section02 .article .allReview a:hover {
    background-color: #dff5ff;
}
#contents .side {
    float: right;
    width: 200px;
    text-align: center;
}
#contents .side table td a {
    line-height: 150%;
    text-decoration: underline;
}
#contents .side table td a:hover {
    line-height: 150%;
    color: #ed0000;
}
#contents .side .bnr img {
    margin-bottom: 10px;
}
#contents .relatedItems {
    background-color: #fafafa;
    margin-bottom: 30px;
    padding-bottom: 20px;
    text-align: center;
}
#contents .relatedItems h3.relatedTtl {
    background-color: #0080ff;
    color: #fff;
    font-size: 12px;
    padding: 3px 0;
}
#contents .relatedItems ul.itemDtl {
    width: 160px;
    margin: 0 auto;
    padding: 0;
}
#contents .relatedItems ul.itemDtl li {
    text-align: center;
    font-size: 12px;
    line-height: 140%;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px dotted #ccc;
}
#contents .relatedItems ul.itemDtl li p.itemName {
    text-align: left;
}
#contents .relatedItems ul.itemDtl li p.itemName a {
    line-height: 150%;
}
#contents .relatedItems ul.itemDtl li p.itemName a:hover {
    line-height: 150%;
    color: #ed0000;
}
#contents .relatedItems ul.itemDtl li img.itemImg {
    clear: both;
    margin: 5px 20px 0 20px;
}
#contents .relatedItems ul.itemDtl li p.itemPrice {
    margin-top: 7px;
    margin-bottom: 3px;
}
#contents .side .bnrBtm .Inr {
    width: 160px;
    text-align: left;
    margin: 0 auto;
    margin-bottom: 20px;
}
#contents .side .bnrBtm .Inr img {
    margin: 0 20px 10px 20px;
}
#contents .side .bnrBtm .linkTxt {
    font-size: 10px;
    line-height: 130%;
}
#contents .side h2.sideTtl {
    font-weight: bold;
    font-size: 14px;
    color: #fff;
    background: none;
    text-align: left;
    border: none;
    padding: 0 0 0 5px;
    margin: 0;
}
#contents .side a {
    color: #0066ff;
    font-size: 12px;
    text-decoration: underline;
    line-height: 200%;
}
/* !ヤマト便のアコーディオン
---------------------------------------------------------- */
dt.tasu {
    /*background-image: url(/img/detail_ym_minus.gif);*/
    background-repeat: no-repeat;
    background-position: left center;
    /*padding-left: 20px;
    height: 17px;*/
}
dt.hiku {
    /*background-image: url(/img/detail_ym_plus.gif);*/
    background-repeat: no-repeat;
    background-position: left center;
    /*padding-left: 20px;
    height: 17px;*/
}
/* !someOrders
---------------------------------------------------------- */
#someOrders {
    margin: 0px 10px 20px 10px;
    padding: 15px 20px 15px 20px;
    border: 1px solid #21ea53;
    background-color: #ecfff1;
}
#someOrders .detailLink {
    float: right;
}
#someOrders p {
    padding: 0;
    margin: 0;
}
#someOrders .soTtl {
    color: #555;
    font-weight: bold;
    font-size: 16px;
    padding: 0;
    margin: 0;
    margin-bottom: 10px;
}
#someOrders .soTtlBig {
    color: #00c405;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
}
#someOrders ul.soList {
    margin-bottom: 0.8em;
    padding: 10px 10px 0px 10px;
    border: 1px solid #ffbcbc;
    background-color: #fffafa;
}
#someOrders ul.soList li {
    font-size: 12px;
    float: left;
    margin-bottom: 0.5em;
}
#someOrders .f-redBold {
    font-size: 14px;
    color: #F00;
    font-weight: bold;
}
#someOrders .f-redBold02 {
    font-size: 14px;
    color: #F00;
    font-weight: bold;
}
#someOrders .bg-yellow {
    background-color: #FF0;
    padding: 3px 3px;
}
/* !recGeneric
---------------------------------------------------------- */
#recGeneric {
    /*float: right;*/
    border: 1px solid #ff6c00;
    padding: 10px;
    margin: 0px 10px 30px 10px;
}
#recGeneric p.txt01 {
    font-size: 14px;
    font-weight: bold;
    color: #ff6c00;
    margin-bottom: 10px;
    padding: 5px 10px;
    background-color: #fff2e9;
}
#recGeneric p.exp {
    padding: 0px 10px;
    margin-bottom: 10px;
}
#recGeneric .txt02 {
    font-weight: bold;
    color: #ff6c00;
}
#recGeneric table.itemGeneric {
    margin: 0 10px 5px 10px;
    border-top: 1px dotted #ccc;
}
#recGeneric table.itemGeneric td {
    color: #1e90ff;
    font-weight: bold;
    padding: 0;
    border-bottom: 1px dotted #ccc;
}
#recGeneric table.itemGeneric td.price {
    padding: 8px 10px;
}
#recGeneric table.itemGeneric td a {
    color: #1e90ff;
    padding: 8px 10px;
    font-weight: bold;
    text-decoration: underline;
    display: block;
}
#recGeneric table.itemGeneric td a.arrow {
    padding-left: 18px;
    margin-left: 10px;
    background: url(/img/arrow_generic.gif) no-repeat left 12px;
}
#recGeneric table.itemGeneric td a:hover {
    color: #f30;
}
#recGeneric table.itemGeneric tr:hover {
    background-color: #fff0f0;
}
/* !header_logo
---------------------------------------------------------- */
#topHeader {
    width: 100%;
    margin: 0 auto;
    font-size: 12px;
}
#topHeader a {
    color: #fff;
    text-decoration: none;
}
#topHeader a:hover {
    color: #fff;
    text-decoration: underline;
}
#topHeader .hlinks {
    height: 34px;
    line-height: 34px;
    background-color: #6699ff;
    color: #fff;
    font-size: 13px;
}
#topHeader .hlinks .hlinksInr {
    width: 1000px;
    margin: 0 auto;
    text-align: right;
}
#topHeader .hMain {
    width: 100%;
    height: 89px;
    background: url(/img/header_bg.gif) repeat-x left bottom;
}
#topHeader .hMain .hMainInr {
    width: 1000px;
    margin: 0 auto;
}
#topHeader .topHeaderLeft {
    position: relative;
    float: left;
    width: 191px;
}
#topHeader .logoYear {
    position: absolute;
    top: -23px;
    left: 0;
    font-size: 13px;
    color: #7f640c;
    font-weight: bold;
    width: 189px;
    height: 26px;
    text-align: center;
    line-height: 28px;
    background: #fbf9e5;
    border: 1px solid #aaaaaa;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    /* Webkit */
    background: -webkit-gradient( linear, left top, left bottom, from(#ffffff), to(#fdf7b0));
    /* Firefox */
    background: -moz-linear-gradient( top, #ffffff, #fdf7b0);
    /* IE */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffff, endColorstr=#fdf7b0);
    zoom: 1;
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
#topHeader .topHeaderLeft img.logo {
    margin: 13px 0 0 0;
}
#topHeader .topHeaderRight {
    float: right;
    text-align: right;
    width: 800px;
    padding: 5px 0 0 0;
}
#topHeader .topHeaderRight .cart {
    float: right;
    width: 370px;
    margin-top: 0px;
}
#topHeader .topHeaderRight .cart .menu {
    float: right;
    margin-right: 5px;
}
#topHeader .topHeaderRight .cart .cartLogin {
    padding: 3px 0;
    line-height: 1.6em;
}
#topHeader .topHeaderRight .cart .cartLogin a {
    color: #333;
    text-decoration: underline;
}
#topHeader .topHeaderRight .cart .cartLogin a:hover {
    color: #ed0000;
    text-decoration: underline;
}
#topHeader .topHeaderRight .cart a.cartBox {
    float: right;
    display: block;
    border: 1px solid #777;
    padding: 5px 10px;
    width: 248px;
    height: 31px;
    margin-top: 1px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: 0 0 1px #ccc;
    -moz-box-shadow: 0 0 1px #ccc;
    box-shadow: 0 0 1px #ccc;
    background: #ffffdd;
}
*:first-child+html #topHeader .topHeaderRight .cart a.cartBox {
    width: 260px;
    height: 33px;
}
#topHeader .topHeaderRight .cart a.cartBox:hover {
    border: 1px solid #f00;
}
#topHeader .topHeaderRight .cart .cartBox .cartPrice {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    float: left;
    color: #333;
    text-align: left;
    font-weight: bold;
    font-size: 13px;
    line-height: 100%;
    padding: 5px;
    margin-top: 5px;
}
#topHeader .topHeaderRight .cart .cartBox img.cartImg {
    float: right;
    margin-top: 3px;
}
#topHeader .topHeaderRight .feature {
    float: right;
    width: 413px;
}
#topHeader .topHeaderRight .feature img {
    vertical-align: top;
    margin-left: 5px;
    margin-top: 15px;
}
#topHeader .hSearch {
    background: #f5f5f5;
    padding: 10px 0;
}
#topHeader .hSearch .hSearchInr {
    width: 1000px;
    margin: 0 auto;
    text-align: center;
}
#topHeader .hSearch .hSearchInr form {
    padding: 0;
    margin: 0;
}
#topHeader .hSearch .hSearchInr ul.hSearchLists li a:hover {
    color: #ed0000;
    text-decoration: none;
    border: 1px solid #ed0000;
}
#topHeader .hSearch .hSearchInr .hSearchInr_l {
    float: left;
    width: 580px;
    text-align: left;
}
#topHeader .hSearch .hSearchInr .hSearchInr_r {
    float: right; /* #10765 【小売り】検索結果表示に関して */
    width: 400px; /* #10765 【小売り】検索結果表示に関して */
    text-align: left;
    line-height: 1.6em;
}
#topHeader .hSearch .hSearchInr .hSearchInr_r a {
    color: #0066ff;
}
/* #10765 【小売り】検索結果表示に関して START */
.searchArea {
  display: flex;
  justify-content: flex-start;
  font-size: 1px;
  letter-spacing: -1px;
  word-spacing: -1px;
}
.selecteBox {
  position: relative;
  display: inline-block;
  max-width: 136px;
  width: 136px;
  height: 36px;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  letter-spacing: normal;
  word-spacing: normal;
}
.selecteBtn {
  height: 36px;
  padding: 12.5px 20px 12.5px 5px;
  font-size: 11px;
  border: 1px solid #999;
  border-right: 0;
  box-sizing: border-box;
  background: #E6E6E6;
  cursor: pointer;
  line-height: 1;
  max-width: 110px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  box-shadow: 0 1px 0 #fff;
  z-index: 1;
}
.selecteBtn::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 0;
  padding: 0;
  position: absolute;
  right: 0;
  top: 16px;
}
.selecteBtn::after {
  content: "";
  width: 0;
  height: 0;
  display: block;
  border: 3px solid transparent;
  border-top: 6px solid #000;
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-25%);
}
.selecteBoxIn {
  -webkit-appearance: none;
  cursor: pointer;
  position: absolute;
  width: 100%;
  height: 36px;
  margin: 0;
  border: 0;
  opacity: 0;
  z-index: 1000;
}
/* #10765 【小売り】検索結果表示に関して END */
#topHeader .hSearch .hSearchInr .hSearchBox {
    border:1px solid #0066ff;
    border:1px solid #999;
    color: #333;
    background: #fff;
    height: 36px;
    width: 455px;
    font-size: 14px;
    padding: 4px 10px;
    vertical-align: middle;
}
#topHeader .hSearch .hSearchInr .hSearchBox {
    border: 1px solid #0066ff;
    border: 1px solid #999;
    color: #333;
    background: #fff;
    height: 26px;
    width: 433px;
    font-size: 14px;
    padding: 4px 10px;
    vertical-align: middle;
}
*:first-child+html #topHeader .hSearch .hSearchInr .hSearchBox {
    height: 26px;
    width: 445px;
}
#topHeader .hSearch .hSearchInr .hSearchBtn {
    font-size: 16px;
    height: 36px;
    width: 100px;
    vertical-align: middle;
    background-color: #444444;
    color: #fff;
    padding: 2px 30px;
    font-weight: bold;
    cursor: pointer;
    border: 1px solid #0b6aa1;
    border: 1px solid #999;
    border-left: none;
    /* Webkit */
    background: -webkit-gradient( linear,
    left top,
    left bottom,
    from(#888888),
    to(#444444));
    -webkit-box-shadow: 1px 1px 1px #fff;
    /* Firefox */
    background: -moz-linear-gradient( top,
    #888888,
    #444444);
    -moz-box-shadow: 1px 1px 1px #fff;
    /* IE10+ */
    background: linear-gradient(to bottom, #888888 0%, #444444 100%);
    /* IE */
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#888888', endColorstr='#444444');
    zoom: 1;
}
#topHeader .hlinksInr ul {
    margin: 0;
    padding: 0;
}
#topHeader .headMenuList {
    margin: 0;
    height: 34px;
    float: right;
    display: inline-block;
    *display: inline;
    *zoom: 1;
}
#topHeader .headMenuList li {
    float: left;
    list-style-type: none;
    margin: 0;
    padding: 0;
    line-height: 1.8;
}
#topHeader .headMenuList li:first-child {
    padding-left: 0;
}
#topHeader .headMenuList>li>a {
    display: inline-block;
}
#topHeader .headMenuList li dl {
    margin: 0;
    padding: 0;
    position: relative;
}
#topHeader .headMenuList>li>a,
#topHeader .headMenuList li dt {
    color: #fff;
    background-color: #69f;
    margin: 0;
    padding: 5px 10px 5px 10px;
    cursor: pointer;
}
#topHeader .headMenuList li dt {
    background-image: url('/img/head-icon-arrow.png');
    background-position: right 6px center;
    -ms-background-position-y: center;
    background-position-y: center;
    -ms-background-position-x: 95%;
    background-position-x: 95%;
    background-repeat: no-repeat;
    padding-right: 16px;
}
#topHeader .headMenuList>li>a:hover,
#topHeader .headMenuList li dl:hover dt {
    background-color: #7dadff;
    text-decoration: none;
}
#topHeader .headMenuList li dl:hover {
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
    z-index: 1000;
}
#topHeader .headMenuList>li>a:active,
#topHeader .headMenuList li dt:active {
    background-color: #3d71d9;
}
#topHeader .headMenuList li dd {
    display: none;
    position: absolute;
    top: 33px;
    left: 0;
    border: 1px solid #7dadff;
    z-index: 1000;
    background-color: #FFF;
    margin: 0;
    padding: 10px 12px;
    width: 180px;
}
#topHeader .headMenuList li dd.origin-right {
    left: auto;
    right: 0;
}
#topHeader .headMenuList li dd.w-220px {
    width: 220px;
}
#topHeader .headMenuList li dl:hover dd {
    display: block;
    -webkit-box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
}
#topHeader .headMenuList li dd.origin-right {
    right: 0;
}
#topHeader .headMenuList li dd li {
    list-style-type: none;
    float: none;
    text-align: left;
}
#topHeader .headMenuList li dd li a {
    color: #333;
    display: block;
    background-image: url('/img/head-icon-arrow02.png');
    background-repeat: no-repeat;
    background-position: right center;
    padding: 2px 0;
}
#topHeader .headMenuList li dd li a:hover {
    color: #ed0000;
}
/* !breadcrumbs 20180228 updated
---------------------------------------------------------- */
#breadcrumbs {
    color: #333;
    width: 980px;
    margin: 0 auto;
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: left;
    line-height: 160%;
    font-size: 13px;
}
#breadcrumbs .breadcrumbs-list {
    display: block;
    background: url(../../img/home.gif) no-repeat left top;
    list-style: none;
    padding: 0px 0px 0px 20px;
    width: 96%;
}
#breadcrumbs .breadcrumb {
    margin-left: 0.5rem;
    width: auto;
    min-width: 3rem;
    display: inline;
}
#breadcrumbs .breadcrumb::before {
    content: ">";
    margin-right: 0.2rem;
}
#breadcrumbs .breadcrumb:first-child,
#breadcrumbs .breadcrumb:first-child::before {
    content: none;
    margin: 0;
}
/* !footer_logo
---------------------------------------------------------- */
#footer_logo {
    padding-top: 30px;
}
#footer_logo .pagetop {
    width: 970px;
    margin: 0 auto;
    text-align: right;
    padding: 15px 0 15px 0;
}
#footer_logo .footer_logo_inr {
    width: 1000px;
    margin: 0 auto;
    text-align: center;
    border-top: 1px solid #ccc;
    text-align: center;
    padding: 30px 0;
}
#footer_logo .footer_logo_inr p {
    font-size: 14px;
    line-height: 180%;
}
#footer_logo .footer_logo_inr .links {
    width: 1000px;
    margin: 0 auto;
}
#footer_logo .footer_logo_inr .links a {
    white-space: nowrap;
    line-height: 200%;
}
#footer_logo .footer_logo_inr .copyright {
    margin-top: 20px;
}
#footer_logo .footer_logo_inr a {
    /* \*/
    overflow: hidden;
    /* */
    text-decoration: none;
    color: #3333ff;
}
#footer_logo .footer_logo_inr a:hover {
    text-decoration: underline;
    color: #3333ff;
}
/*footer*/
#footer {
    width: 100%;
    background-color: #fafafa;
    border-top: 1px solid #ccc;
    padding: 40px 0 0;
    text-align: left;
}
#footer img {
    border: none;
}
#footer * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#footer .footerInr {
    width: 1000px;
    margin: 0 auto;
}
#footer .footer-logo {
    position: relative;
    margin: 5px 0 25px;
}
#footer .logo-link {
    float: right;
    display: block;
}
#footer .footerInr .footerColumn {
    float: left;
    width: 25%;
    border-left: 1px solid #ddd;
    padding: 5px 0 5px 20px;
}
#footer .footerInr .footerColumn:first-child {
    border-left: none;
    padding-left: 0;
}
#footer .footerInr .listTtl {
    color: #555;
    font-size: 16px;
    font-weight: bold;
    margin: 0;
    margin-bottom: 5px;
}
#footer .footerInr ul {
    margin: 0 0 20px;
    padding: 0 0 0 10px;
}
#footer .footerInr li {
    list-style-type: none;
}
#footer .footerInr li a {
    color: #333;
    text-decoration: none;
    font-size: 13px;
    line-height: 1.75;
}
#footer .footerInr li a:hover {
    color: #ed0000;
    text-decoration: underline;
}
#footer .footerCopyright {
    background-color: #69f;
    padding: 0 0;
    color: #fff;
}
#footer .footerBottom {
    padding: 15px 0;
}
#footer .footerBottom a {
    font-size: 12px;
    color: #fff;
}
#footer .footerBottom a:hover {
    color: #def;
}
#footer .footerBottomLink {
    float: left;
    margin: 0;
}
#footer .copyright {
    text-align: center;
    color: #fff;
    float: right;
    margin: 0;
}
#footer .copyright .mark {
    font-family: Tahoma, Arial, sans-serif;
}
#footer #goToHead {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 92px;
    height: 92px;
    cursor: pointer;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background-color: transparent;
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
    -webkit-transition: all 0.1s linear;
    -moz-transition: all 0.1s linear;
    -ms-transition: all 0.1s linear;
    -o-transition: all 0.1s linear;
    transition: all 0.1s linear;
    opacity: 0.8;
    padding: 0;
}
html:has(#refer-friend-banner) #footer #goToHead,
html:has(#float-banner) #footer #goToHead {
	z-index: 1000;
}
#footer #goToHead:hover {
    -webkit-box-shadow: 0 5px 15px -7px rgba(0, 0, 0, 1);
    box-shadow: 0 5px 15px -7px rgba(0, 0, 0, 1);
    opacity: 1;
}
#footer #goToHead:active {
    background: #fff;
    opacity: 1;
}
#footer #goToHead:active img {
    opacity: 0.75;
}
/* !popbox
---------------------------------------------------------- */
.popbox {
    position: relative;
}
*:first-child+html .popbox {
    position: relative;
    margin-bottom: 10px;
}
.popbox .collapse {
    position: relative;
    z-index: 9999;
}
.popbox .favorite {
    position: absolute;
    top: 0px;
    left: 145px;
}
.popbox .open img {}
.popbox .box {
    display: block;
    display: none;
    background: #FFF;
    border-radius: 5px;
    position: absolute;
    border: 2px solid #555;
    -moz-box-shadow: 0 0 5px #777;
    -webkit-box-shadow: 0 0 5px #777;
    box-shadow: 0 0 5px #777;
    filter: progid:DXImageTransform.Microsoft.Shadow(color=#777777, direction=120, strength=3, enabled=true);
    min-width: 540px;
    width: auto;
    left: 145px;
    top: -11px;
}
@-moz-document url-prefix() {
    .popbox .box {
        top: -11px;
    }
}
*html .popbox .box {
    left: 0px;
    top: -11px;
}
.popbox .box :before,
.popbox .box :after {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    top: 12px;
}
.popbox .box :before {
    border-right: 15px solid #555;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    left: -15px;
    z-index: 5;
}
.popbox .box :after {
    border-right: 15px solid #555;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    top: 12px;
    left: -15px;
    z-index: 10;
}
.popbox .box .lpTtl {
    width: 100%;
    padding: 1em 0 1em 0;
    background-color: #555;
    color: #fff;
    height: 20px;
}
.popbox .box .lpTtl .Left {
    float: left;
    width: 300px;
    font-size: 20px;
    padding-left: 20px;
    font-weight: bold;
}
.popbox .box .lpTtl .Right {
    float: right;
    width: 100px;
    text-align: right;
    font-weight: bold;
    font-size: 14px;
    padding-right: 20px;
}
.popbox .box .lpTtl .Right a {
    cursor: pointer;
    color: #fff;
}
.popbox .box .lpTtl .Right a:hover {
    text-decoration: none;
}
.popbox .box .lpExp {
    clear: both;
    width: auto;
    padding: 1em 20px 0.5em 20px;
}
.popbox select.negotiation {
    font-size: 110%;
    padding: 0.3em;
    width: 330px;
}
.popbox table.lpDsc {
    margin-bottom: 10px;
    width: 100%;
    background-color: #fff;
}
.popbox table.lpDsc td {
    padding: 0.8em;
    border-bottom: 1px dotted #aaa;
    font-weight: bold;
}
.popbox table.lpDsc td.types {
    width: 8em;
    white-space: nowrap;
    word-wrap: normal;
    word-break: keep-all;
    border-right: 2px solid #fff;
}
.popbox table.lpDsc td.itemName {
    background-color: #ffdfdf;
}
.popbox table.lpDsc td.submit {
    border: none;
    background-color: #fff;
}
.popbox table.lpDsc td input,
.popbox table.lpDsc td textarea {
    font-size: 16px;
    padding: 0.3em;
    width: 320px;
    width: 90%;
}
.popbox table.lpDsc td .submitbtn {
    font-size: 16px;
    width: 150px;
    color: #fff;
    background-color: #0075cc;
    padding: 6px 20px;
    font-weight: bold;
    cursor: pointer;
    border: 1px solid #0b6aa1;
    border-radius: 5px;
    /* Webkit */
    background: -webkit-gradient( linear,
    left top,
    left bottom,
    from(#0097ee),
    to(#0075cc));
    -webkit-border-radius: 5px;
    -webkit-box-shadow: 1px 1px 1px #fff;
    /* Firefox */
    background: -moz-linear-gradient( top,
    #0097ee,
    #0075cc);
    -moz-border-radius: 5px;
    -moz-box-shadow: 1px 1px 1px #fff;
    /* IE10+ */
    background: linear-gradient(to bottom, #0097ee 0%, #0075cc 100%);
    /* IE */
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#0097ee', endColorstr='#0075cc');
    zoom: 1;
}
.tabbox p.tabs {
    margin-bottom: 20px;
}
.tabbox p.tabs a {
    /*background: #FF0;*/
    padding-right: 2em;
    font-size: 15px;
}
.tabbox p.tabs a.selected {
    color: #333;
    font-weight: bold;
    text-decoration: none;
}
/*------------- 固定バナー追加20160531追加 start -------------*/
#fixBnr * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#fixBnr.fixBnr {
    position: fixed;
    right: -180px;
    top: 190px;
    z-index: 100;
}
#fixBnr.fixBnr dl {
    position: relative;
    right: 0;
    margin: 1em 0;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    transition: all 0.3s linear;
}
#fixBnr.fixBnr dl.active.del {
    display: none;
}
#fixBnr.fixBnr dl:hover {
    right: 180px;
}
#fixBnr.fixBnr dl.active dd .fixBnrItem,
#fixBnr.fixBnr dl:hover dd .fixBnrItem {
    opacity: 1;
    box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.75);
}
#fixBnr.fixBnr dt {
    background-color: #ef0809;
    color: #FFF;
    font-weight: bold;
    font-size: 13px;
    padding: 15px 9px 34px;
    float: left;
    width: 38px;
    box-shadow: 0px 2px 10px -1px rgba(0, 0, 0, 0.75);
    cursor: pointer;
    max-height: 145px;
    position: relative;
}
#fixBnr.fixBnr .fixBnrCount {
    display: block;
    position: absolute;
    top: -8px;
    left: -8px;
    background: #f00;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    border: 1px solid #fff;
    color: #fff;
    font-weight: bold;
    font-size: 11px;
    text-align: center;
    background-image: -webkit-linear-gradient(bottom, #c51f1f, #f00);
    background-image: -moz-linear-gradient(bottom, #c51f1f, #f00);
    background-image: -o-linear-gradient(bottom, #c51f1f, #f00);
    background-image: -ms-linear-gradient(bottom, #c51f1f, #f00);
    background-image: linear-gradient(to top, #c51f1f, #f00);
}
#fixBnr.fixBnr .fixBnrHorizon {
    writing-mode: tb-rl;
    /* IE独自仕様 */
    writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    letter-spacing: 0.15em;
    line-height: 1.4em;
}
#fixBnr.fixBnr .fixBnrHorizon .fixBnrIcon {
    position: absolute;
    width: 19px;
    height: 19px;
    bottom: 11px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
#fixBnr.fixBnr dd {
    float: left;
    margin: 0;
    padding: 0;
}
#fixBnr.fixBnr .fixBnrList {
    /*overflow: hidden; zoom:1;*/
    padding: 0;
    margin: 0;
}
#fixBnr.fixBnr .fixBnrItem {
    list-style-type: none;
    background-color: #333;
    background-color: rgba(0, 0, 0, 0.88);
    padding: 20px;
    width: 180px;
    position: relative;
    box-shadow: 0;
    border-top: 1px solid #fff;
}
#fixBnr.fixBnr .fixBnrItem:first-child {
    border: none;
}
#fixBnr.fixBnr .fixBnrClose {
    cursor: pointer;
    background-color: #000;
    width: 20px;
    height: 20px;
    color: #FFF;
    font-weight: bold;
    position: absolute;
    right: 0;
    top: 0;
    font-size: 14px;
    line-height: 10px;
    display: inline-block;
    zoom: 1;
    padding: 4px 6px;
}
#fixBnr.fixBnr .fixBnrItem a.fixBnrItemInner {
    text-decoration: none;
}
#fixBnr.fixBnr .fixBnrItem a.fixBnrItemInner:hover p {
    text-decoration: underline;
}
#fixBnr.fixBnr .fixBnrItem .fixBnrItemInner p {
    color: #FFF;
    text-decoration: none;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.4;
    margin: 0;
}
#fixBnr.fixBnr .fixBnrItem .fixBnrItemInner .fixBnrItemTtl {
    font-size: 14px;
    color: #FFC7C1;
    display: inline-block;
    zoom: 1;
    line-height: 1.15;
    margin-bottom: 6px;
    font-weight: normal;
}
#fixBnr.fixBnr .fixBnrItem a.fixBnrItemAnchor {
    color: #B0D1FF;
    font-size: 11px;
    margin: 12px 0 0;
    display: inline-block;
    font-family: "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}
#fixBnr.fixBnr .fixBnrItem a.fixBnrItemAnchor:hover {
    color: #fdf7b3;
}
/*縦長バナーの伸縮*/
#contents .skyL {
    text-align: right;
}
#contents .skyR {
    text-align: left;
}
@media screen and (max-width: 1360px) {
    #contents .skyscraper img {
        width: 75%;
    }
}
/*------------- 固定バナー追加20160531追加 end -------------*/
/*------------- その他の製品エリア20171010追加 start -------------*/
#recGeneric {padding: 0 0 10px 0 !important;}
#recGeneric p.txt01 {margin: 10px !important;}
#seeAll {
    height: auto;
    max-height: 170px;
    padding: 0 !important;
    overflow: hidden;
    transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
}
#btnOpen {display: blaock;}
#btnClose {display: none;}
#btnOpen, #btnClose {
    padding: 0 !important;
}
#btnOpen a, #btnClose a {
    display: inline-block;
    width: 100%;
    padding-top: 10px;
    color: #ff6c00 !important;
    text-align: center !important;
    text-decoration: none !important;
    cursor: pointer !important;
}
.arrowDown {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 3px 4px;
    padding: 0 !important;
    border: 1px solid;
    border-color:  transparent transparent #ff6c00 #ff6c00;
    transform: rotate(-45deg);
}
.arrowUp {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 -3px 4px;
    padding: 0 !important;
    border: 1px solid;
    border-color: #ff6c00 #ff6c00 transparent transparent;
    transform: rotate(-45deg);
}
/*------------- その他の製品エリア20171010追加 end -------------*/
/* #16207 【小売り】検索窓の改修依頼 start */
.searchArea--with-radios {
	display: block;
}
.search-box__stype {
	align-items: center;
	display: flex;
}
.search-box__button {
	margin-right: 5px;
}
.search-box__button:last-child {
	margin-right: 0;
}
.search-box__radio {
	display: none;
}
.search-box__label {
	align-items: center;
	box-sizing: border-box;
	cursor: pointer;
	display: flex;
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 0;
	padding: 5px;
	vertical-align: middle;
}
.search-box__label::before {
	background-color: #fff;
	border: 1px solid #69f;
	border-radius: 50%;
	content: "";
	display: block;
	height: 16px;
	margin-right: 0.5em;
	width: 16px;
}
.search-box__radio:checked ~ .search-box__label::before {
	border: 6px solid #69f;
	height: 6px;
	width: 6px;
}
/* #16207 【小売り】検索窓の改修依頼 end */

/* #26276 【オオサカ堂 | 2025】 - 【小売サイト】 - 【お急ぎ便の注意書き修正】 start */
.shipping-annotation {
	list-style-position: outside;
	display: grid;
	row-gap: 1em;
	padding-left: 1.5em;
    text-align: left;
}
.shipping-annotation__item {
	list-style: disc;
    width: 100%;
}
/* #26276 【オオサカ堂 | 2025】 - 【小売サイト】 - 【お急ぎ便の注意書き修正】 end */

.countdown {
	margin: 5px 0 15px;
}
.countdown__text {
	background-color: #ffdddd;
	color: #333;
	display: inline-block;
	font-weight: 400;
	margin: 0;
	padding: 10px;
}
.countdown__emphasis {
	color: #4744ca;
	font-weight: 700;
} 
.countdown__emphasis--attention {
	color: #e30000;
}

/* #28454 【小売り】リマークUI改修※オオサカ堂のみ  */
.itemMemo.present::after {
	color: #06f;
	content: '閉じる';
	cursor: pointer;
	display: block;
	margin-left: auto;
	text-decoration: underline;
	width: fit-content;
}
.itemMemo.present.js-collapsed::after {
	content: '続きを見る';
}
@media (hover: hover) and (pointer: fine) {
	.itemMemo.present:hover::after {
		text-decoration: none;
	}
}
.itemMemo.present.js-collapsed > span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	position: relative;
}

/* #28527 商品詳細 - 一般名 */
.generalName {
    align-items: center;
    display: flex;
    font-size: 12px;
    margin-top: -10px;
    margin-bottom: 10px;
    white-space: nowrap;
}
.generalName__list {
    color: #666;
    display: flex;
    flex-wrap: wrap;
    font-weight: 400;
    gap: 4px;
    padding: 0;
    width: calc(100% - 4em);
}
.generalName__list div {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: .25em;
    position: relative;
    max-width: 100%;
}
.generalName__list:has(div:nth-child(2):last-child) div {
    max-width: calc((100% - 4px - .5em) / 2);
}
.generalName__list:has(div:nth-child(3)) div {
    max-width: calc((100% - 8px - .75em) / 3);
}
.generalName__list div::after {
    color: #ccc;
    content: ',';
    position: absolute;
    right: 0;
}
.generalName__list div:last-child::after {
    content: '';
}

/* #28528 商品詳細 - Q&A用カラム追加 */
.faqContent {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-block: 10px;
}
.faqContent__item {
    border: 1px solid #ccc;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 0;
    padding: 20px;
}
.faqContent__question,
.faqContent__answer {
    align-items: baseline;
    column-gap: 10px;
    display: grid;
    grid-template-columns: 25px 1fr;
}
.faqContent__question::before,
.faqContent__answer::before {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    width: 25px;
    height: 25px;
}
.faqContent__question {
    font-weight: 700;
}
.faqContent__question::before {
    background-color: #69f;
    border: 1px solid transparent;
    content: 'Q';
    color: #fff;
}
.faqContent__answer {
    margin: 0;
}
.faqContent__answer::before {
    background-color: #fff;
    border: 1px solid #69f;
    content: 'A';
    color: #69f;
}

/* #28529 商品詳細 - 参考文献用カラム追加 */
.referenceContent {
    margin: 0;
}

/* #28530 商品詳細 - 口コミまとめ用カラム追加 */
.reviewSummary {
    background-color: #eff8ff;
    padding: 20px;
}
.reviewSummary__item {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}
.reviewSummary__title {
    color: #1571fc;
    font-size: 14px;
    font-weight: 700;
}

/* #28536 良い評価 / 悪い評価用カラム追加 */
.reviewPickup {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 0 10px;
}
.reviewPickup__title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}
.reviewPickup__title--good { 
    color: #60A5FA;
}
.reviewPickup__title--bad  { 
    color: #F87171;
}
.reviewPickup__content * + * {
    margin-top: 5px;
}
.reviewPickup__score {
    display: inline-block;
}
.reviewPickup__date {
    color: #666;
    display: inline-block;
    margin-left: 5px;
    vertical-align: 2px;
}
.reviewPickup__inner {
    display: grid;
    grid-template-columns: 1fr;
}
.reviewPickup__inner:has(.reviewPickup__photo) {
    gap: 20px;
    grid-template-columns: 1fr 150px;
}
.reviewPickup__photo {
    margin: 0;
    position: relative;
}
.reviewPickup__photo img {
    width: 150px;
    height: auto;
    display: block;
    padding: 5px;
    box-sizing: border-box;
    clip: rect(0px, 200px, 200px, 0px);
    background: #fff;
}
.reviewPickup__photo span {
    z-index: 10;
    position: absolute;
    padding: 0.25rem;
    background: #fff;
    font-size: 1rem;
    right: 0;
    top: 0;
}

/* #28537 画像付きレビュー表示対応 */
.reviewImage__slider {
    margin: 0;
}
.reviewImage__title {
    color: #666;
    font-weight: 700;
}
.reviewImage__content {
    margin: 0;
    overflow-x: auto;
    padding: 10px 0;
    width: 100%;
}
.reviewImage__list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    padding: 0;
    width: max-content;
}
.reviewImage__item a {
    display: block;
    cursor: pointer;
}
.reviewImage__item img {
    aspect-ratio: 1;
    background: url(/assets/img/blank.gif) no-repeat center center;
    background-color: #fff;
    width: 120px;
    height: 120px;
    object-fit: cover;
}
.reviewImage__modal {
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, .6);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s, visibility .3s steps(1,end);
    z-index: 1001;
}
.reviewImage__modal.js-open {
    opacity: 1;
    visibility: visible;
}
html:has(.reviewImage__modal.js-open) {
    overflow: hidden;
}
.reviewImage__modalBackdrop {
    position: absolute;
    inset: 0;
}
.reviewImage__modalPanel {
    position: relative;
    background: #fff;
    padding: 0 16px 16px;
    width: min(90vw, 600px);
    max-height: 80vh;
    overflow-x: hidden;
    overflow-y: auto;
    transform: translateY(12px) scale(.98);
    opacity: 0;
    transition: transform .3s, opacity .3s;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
}
.reviewImage__modalPanel::-webkit-scrollbar {
    width: 8px;
}
.reviewImage__modalPanel::-webkit-scrollbar-track {
    background: transparent;
}
.reviewImage__modalPanel::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 4px;
    border: 1px solid transparent;
    background-clip: content-box;
}
.reviewImage__modalPanel::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
    background-clip: content-box;
}
.reviewImage__modalPanel::-webkit-scrollbar-thumb:active {
    background: rgba(0, 0, 0, 0.4);
    background-clip: content-box;
}
.reviewImage__modal.js-open .reviewImage__modalPanel {
    transform: translateY(0) scale(1);
    opacity: 1;
}
.reviewImage__modalHeader {
    align-items: center;
    background-color: #fff;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    line-height: 1;
    padding: 16px;
    width: calc(100% + 32px);
    transform: translateX(-16px);
    position: sticky;
    top: 0;
    left: 0;
}
.reviewImage__modalRating {
    vertical-align: -2px;
}
.reviewImage__modalDate {
    color: #666;
}
.reviewImage__modalGender {
    vertical-align: -2px;
}
.reviewImage__modalNickname {
    color: #666;
}
.reviewImage__modalClose {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #111;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    color: #fff;
    margin-left: auto;
    text-decoration: none !important;
}
.reviewImage__modalClose::before {
    content: '×';
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
}
.reviewImage__modalContent .reviewSec {
    border-top: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.reviewImage__modalNickname {
    font-weight: bold;
    margin-bottom: 8px;
}
.reviewImage__modalComment {
    line-height: 1.6;
    margin-bottom: 10px;
}
.reviewImage__modalImage {
    width: 100%;
    height: auto;
    margin-bottom: 16px;
}
.reviewImage__modalMeta {
    font-size: 0.9em;
    color: #666;
}