@charset "UTF-8";
@import url(/utatenStore/font/fontello/css/fontello.css?family=fontello);
/*-------------------------------
共通
-------*/
body,html {
  background-color: #fff;
  color: #222;
  font-size: 15px;
  line-height: 1.5;
}

body {
  min-width: 320px;
}

@media screen and (max-width:768px) {
  body,html {
    font-size: 13px;
  }
}

@media screen and (max-width:375px) {
  body,html {
    font-size: 12px;
  }
}

* {
  font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,sans-serif;
}

button,select,input,textarea {
  line-height: 1;
  outline: none;
}

select::-ms-expand {
  display: none;
}

/*▽IE9対応*/
select:not(:target)::before {
  display: none\9;
}
/*△IE対応*/

button {
  cursor: pointer;
}

a {
  color: #f6542c;
  text-decoration: underline;
}


/*box,wrap系*/
.innerWidth {
  max-width: 950px;
  margin: 0 auto;
}

.bgGray {
  background: #f5f5f5;
  padding: 1.5em 0;
}

@media screen and (max-width:768px) {
  .innerWidth {
    max-width: 100%;
  }
}

/*テキストテーブル*/
.textTable {
  border: 1px solid #e2e2e2;
  font-size: .95em;
  padding: 1em;
}

.textTable + .textTable {
  margin-top: .5em;
}

.textTable__head {
  font-size: 1.1em;
}

.textTable__col {
  margin: .3em 0;
}

.textTable__label,
.textTable__inn {
  display: inline;
}

/*線つきテーブル*/
.cmnTable {
  width: 100%;
  font-size: .95em;
}

.cmnTable + .cmnTable,
.textTable + .cmnTable {
  margin-top: .5em;
}

.cmnTable__label,
.cmnTable__inn {
  border: 1px solid #e2e2e2;
  padding: .5em;
  text-align: right;
}

.cmnTable__label {
  background: #f8f8f8;
  width: 35%;
  min-width: 115px;
}

.cmnTableFoot .cmnTable__label,
.cmnTableFoot .cmnTable__inn {
  border: 2px solid #343330;
}

.cmnTableFoot .cmnTable__label {
  background: #343330;
  color: #fff;
}

.cmnTableFoot .cmnTable__inn {
  font-size: 1.1em;
  font-weight: bold;
}

/*見出し*/
.headTxt_cmn {
  font-size: 1.8em;
  font-weight: bold;
  letter-spacing: 5px;
  margin: 1.5em auto;
  padding: 0 1em;
  text-align: center;
}

.headTxt_label {
  border-left: 6px solid #e80;
  font-size: 1.1em;
  font-weight: bold;
  margin: 1em 0;
  padding: .2em 0 .2em .5em;
}

.listTxt_label {
  font-size: 0.8em;
  font-weight: bold;
  margin: 1em 0;
  padding: .2em 0 .2em .5em;
}

@media screen and (max-width:768px) {
  .headTxt_label {
    margin: .5em;
  }
}

@media screen and (max-width:425px) {
  .headTxt_cmn {
    font-size: 1.5em;
    letter-spacing: 2px;
    padding: 0 .5em;
  }
}

/*テキスト関連*/
.cmnTxtBox {
  margin: 1.5em auto;
  width: 600px;
}

.cmnTxtBoxCenter {
  margin: 1.5em auto;
  padding: 0 1em;
  text-align: center;
}

.attenTxt {
  color: #ed8800;
  font-size: 1.1em;
}

.attenTxt_s {
  color: #aaa;
  font-size: .9em;
}

@media screen and (max-width:768px) {
  .cmnTxtBox {
    padding: 0 1em;
    width: 100%;
  }

  .cmnTxtBoxCenter {
    padding: 0 .5em;
  }
}

.title {
  color: #ed8800;
  font-size: 1.1em;
}

.orange {
  color: #ed8800;
}

.red {
  color: #e00;
}

.redBG {
  color: #e00;
  background-color: #fee;
}

.text-black-bold {
  font-weight: bold;
  color: #000;
}

.bold {
  font-weight: bold;
}

.title.bold {
  font-size: 1.2em;
}

/*フォーム関連*/
.formBox {
  margin: 2em auto;
}

.form {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 7px;
  margin: auto;
  padding: 20px;
  width: 600px;
}

.form__head {
  font-size: 1.1em;
  margin-bottom: 3px;
}

.form__attenTxt {
  font-size: .9em;
  margin-bottom: .5em;
}

.form__inn {
  margin-bottom: 15px;
  min-height: 1.5em;
}

/*確認画面用*/
.formBox_conf .form {
  background: #fff;
  border: none;
  padding: 0;
}

.formBox_conf .form__head {
  background: #f5f5f5;
  padding: .2em;
  margin-bottom: .5em;
}

.formBox_conf .form__inn {
  margin-bottom: 2em;
}

/*テキスト系*/
[class*="form__input"],
.form__textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  border: 1px solid #d5d5d5;
  border-radius: 4px;
  color: #555;
  font-size: 1em;
  padding: .7em;
  width: 100%;
}

.form__input_s {
  width: 55%;
}

.form__input_ss {
  width: 30%;
}

/*お知らせ的な角丸の枠*/
.infoBox {
  margin: 1em auto;
  max-width: 950px;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 1em;
}

.formBox .infoBox {
  max-width: 600px;
}

.infoBox .headTxt_label {
  margin-top: 0;
  margin-left: 0;
}

.infoBox_sec + .infoBox_sec {
  border-top: 1px solid #ddd;
  margin-top: 1em;
  padding-top: 1em;
}

/*リスト*/
.cmnTxtList {
  padding-left: 1em;
}

.cmnTxtList__item {
  margin: .5em;
  list-style: disc;
  word-break: break-all;
}

/*ol*/
.cmnTxtList_ol {
  padding-left: 1em;
}

.cmnTxtList_ol .cmnTxtList__item {
  list-style: decimal;
}

/*select系*/
.form__selectWrap {
  background: #fff;
  border-radius: 4px;
  height: 3em;
  position: relative;
  width: 55%;
  z-index: 1;
}

.form__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 1px solid #d5d5d5;
  border-radius: 4px;
  color: #555;
  font-size: 1em;
  height: 100%;
  padding: 0 1.5em 0 1em;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.form__selectWrap::before {
  bottom: 0;
  background-image: url(../img/select_arrow.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px;
  content: '';
  height: 100%;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 30px;
  z-index: 0;
}

.form__option {
  font-size: 1em;
}

.form__selectDateWrap {
  display: flex;
  display: -moz-flex;
  display: -o-flex;
  display: -webkit-flex;
  display: -ms-flex;
  -moz-flex-direction: row;
  -o-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
}

.form__selectDateWrap select {
  padding: 0.7em 1.5em 0.7em 1em;
  border: 1px solid #d5d5d5;
  border-radius: 4px;
  max-width: 100%;
  display: block;
  height: auto;
  line-height: 1;
  color: #555;
  background: #fff !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
}

/*ボタン・リンク系*/
.form__btnBox {
  margin: 1em 0;
  text-align: right;
}

.form__submit,
.form__link {
  border-radius: 4px;
  color: #fff;
  display: block;
  font-size: 1.1em;
  line-height: 1.5;
  margin: .5em 0;
  padding: 1em 0;
  text-align: center;
  text-decoration: none;
  width: 100%;
}

.form__submit {
  background: #e80;
  border: 1px solid #d87b00;
}

.form__link {
  background: #525252;
  border: 1px solid #545454;
}

.form__submit[disabled] {
  background: #D1D5DB;
  border-color: #D1D5DB;
}

.form__link_txt {
  border-bottom: 1px solid #f6542c;
  display: inline-block;
  font-size: 1.1em;
  line-height: 1.2;
  text-decoration: none;
}

.form__link_txt::before {
  content: '\F101';
  font-family: 'fontello';
  margin-right: 5px;
}

.searchAddress__btn {
  background: #e80;
  border: 1px solid #e80;
  border-radius: 3px;
  color: #fff;
  font-size: 1em;
  padding: .9em;
  vertical-align: middle;
}

@media screen and (max-width:767px) {
  .formBox {
    margin: 2em 1em;
  }

  .form {
    width: 100%;
  }

  .form__selectWrap {
    width: 100%;
  }
}

@media screen and (max-width:560px) {
  .form__input_s {
    width: 70%;
  }
}

/*エラー*/
.errorWrap {
  margin: 10px 0;
}

.error {
  border: 1px solid #ddd;
  border-radius: 5px;
  margin: auto;
  padding: .5em 1em;
  width: 600px;
}

.error__head {
  border-bottom: 1px solid #ececec;
  color: #e80;
  font-size: 1.1em;
  margin-bottom: .5em;
  padding-bottom: .5em;
  text-align: center;
  text-transform: uppercase;
}

.error__txt {
  font-size: .9em;
  padding-left: 1.5em;
  position: relative;
}

.error__txt::before {
  color: #e80;
  content: '\E874';
  font-family: 'fontello';
  position: absolute;
  left: 0;
}

.error__txt + .error__txt {
  margin-top: .5em;
}

/*変更成功、完了関係*/
.successWrap {
  padding: 1em;
}

.success {
  background: #f2fcf8;
  border: 1px solid #50d0a3;
  border-radius: 4px;
  margin: auto;
  padding: .5em;
  text-align: center;
  width: 600px;
}

.success__txt {
  display: inline-block;
  padding-left: 1.2em;
  position: relative;
  text-align: left;
}

.success__txt::before {
  color: #50d0a3;
  content: '\E8BD';
  font-family: 'fontello';
  position: absolute;
  left: 0;
}

@media screen and (max-width:767px) {
  .successWrap {
    padding: 0 1em;
  }

  .error,
  .success {
    width: 100%;
  }

  .error__txt {
    font-size: 1em;
  }
}


/*404*/
.notFound {
  margin: auto;
  padding: 0 .5em;
  width: 950px;
}

.notFound__errarCode {
  font-size: .9em;
  margin-top: 1em;
}

@media screen and (min-width:768px) and ( max-width:950px) {
  .notFound {
    width: 80%;
  }
}

@media screen and (max-width:767px) {
  .notFound {
    padding: 0 1em;
    width: 100%;
  }
}

/*ヘッダー*/
.header {
  background: #222;
}

.headerInn {
  overflow: hidden;
  padding: 0 10px;
  position: relative;
}

.header__logo {
  background-image: url(/utatenStore/img/logo.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  bottom: 0;
  height: 50px;
  margin: auto;
  position: absolute;
  top: 0;
  width: 220px;
  z-index: 1;
}

.header__logo a {
  display: block;
  height: 100%;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.header__nav {
  float: right;
  margin: 34px 0;
}

.header__navItem {
  float: left;
  margin-left: 40px;
  text-align: center;
  min-width: 65px;
}

.header__navLink {
  color: #fff;
  display: block;
  font-size: 1.1em;
  text-decoration: none;
}

.header__navLink::before {
  font-family: 'fontello';
  margin-right: 5px;
}

.header__navLink_cart::before {
  content: '\E84D';
}

.header__navLink_entry::before {
  content: '\E881';
}

.header__navLink_login::before {
  content: '\E889';
}

.header__navLink_mypage::before {
  content: '\E8C4';
}

@media screen and (max-width:768px) {
  .headerInn {
    padding: 10px;
  }

  .header__logo{
    width: 25%;
  }

  .header__nav {
    margin: 0;
  }

  .header__navItem {
    margin-left: 1.5em;
    min-width: 55px;
  }

  .header__navLink::before {
    display: block;
    font-size: 1.5em;
    line-height: 1.3;
    margin: 0 auto;
    text-align: center;
  }
}

@media screen and (max-width:425px) {
  .header__logo{
    width: 35%;
  }

  .header__navLink {
    font-size: 1em;
  }

  .header__navItem {
    margin-left: 1em;
  }
}

/*フッター*/
.footerWrap {
  background: #343330;
  padding: 15px 0;
}

.oriconInfo {
  padding: 10px;
  text-align: center;
  background: #525252;
  border-radius: 5px;
  color: #ddd;
}

.oriconInfo a {
  color: #ee8800;
}

.oriconInfo__imgWrap {
  margin-bottom: 10px;
}

.oriconInfo__imgWrap img {
  max-width: 200px;
  max-height: 70px;
  display: inline-block;
}

.oriconInfo__txt {
  font-size: 0.9em;
  margin-top: 10px;
}

.oriconInfo__txt:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .oriconInfo__imgWrap img {
    display: block;
    margin: 0 auto;
    max-height: none;
    margin-top: 10px;
  }

  .oriconInfo__imgWrap img:first-child {
    margin-top: 0;
  }
}

.footer__logo {
  background-image: url(/utatenStore/img/logo.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  float: left;
  height: 30px;
  width: 150px;
}

.footer__logo a {
  display: block;
  height: 100%;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.footer__inn {
  margin-top: 15px;
  overflow: hidden;
}

.footer__nav {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  justify-content: center;
  float: left;
}

.footer__navItem {
  border-left: 1px solid #ddd;
  font-size: 1em;
  text-align: center;
  padding: 5px 25px;
}

.footer__navItem:first-of-type {
  border-left: none;
}

.footer__navItem a {
  color: #fff;
  text-decoration: none;
}

.footer__copy {
  padding-top: 5px;
  clear: both;
  color: #fff;
  font-size: .8em;
  margin-top: 8px;
  text-align: center;
}

@media screen and (max-width:970px) {
  .footerWrap {
    padding: 10px;
  }

  .footer__logo {
    float: none;
    height: 50px;
    margin: auto;
    width: 50%;
    max-width: 200px;
  }

  .footer__nav {
    float: none;
    width: 100%;
  }

  .footer__navItem {
    padding: 0;
  }

  .footer__navItem a {
    display: block;
    padding: 5px 10px;
    font-size: .9em;
  }
}


@media screen and (max-width:600px) {
  .footer__nav {
    display: block;
  }

  .footer__nav::after {
    content: "";
    display: block;
    clear: both;
  }

  .footer__navItem {
    border-left: none;
    float: left;
    width: 50%;
  }

  .footer__navItem a {
    padding: 5px;
    display: block;
  }
}

@media screen and (max-width:375px) {
  .footer__navItem {
    width: auto;
    float: none;
  }
}

/*ボタン*/
.moreBtnWrap {
  margin: auto;
  padding: 1.5em;
  text-align: right;
  max-width: 500px;
}

.moreBtnWrap + .moreBtnWrap {
  margin-top: -2em;
}

.moreBtn,
[class^="moreBtn_bg"],
.backBtn,
.ckcConnectBtn {
  border: 1px solid #d2d2d2;
  border-radius: 5px;
  box-shadow: 2px 2px 3px rgba(0,0,0,0.1);
  display: block;
  font-size: 1.1em;
  font-weight: bold;
  margin: auto;
  padding: 1em;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 100%;
  max-width: 500px;
  -webkit-transition: background 0.3s , border-color 0.3s , color 0.3s;
    -moz-transition: background 0.3s , border-color 0.3s , color 0.3s;
      -o-transition: background 0.3s , border-color 0.3s , color 0.3s;
        transition: background 0.3s , border-color 0.3s , color 0.3s;
}

.moreBtn {
  background: #fff;
  color: #ee8800;
}

.moreBtn_bg01 {
  background: #525252;
  border: 1px solid #545454;
  color: #fff;
}

.moreBtn_bg02 {
  background: #fff;
  border: 1px solid #ddd;
  color: #222;
}

.moreBtn::before,
.moreBtn::after,
[class^="moreBtn_bg"]::before,
[class^="moreBtn_bg"]::after {
  bottom: 0;
  content: '';
  margin: auto;
  position: absolute;
  top: 0;
}

.moreBtn::before,
[class^="moreBtn_bg"]::before {
  border-radius: 12.5px;
  height: 25px;
  right: 10px;
  width: 25px;
  -webkit-transition: background 0.3s;
    -moz-transition: background 0.3s;
      -o-transition: background 0.3s;
        transition: background 0.3s;
}

.moreBtn::after,
[class^="moreBtn_bg"]::after {
  border-style: solid;
  border-width: 6px 0 6px 6px;
  height: 0;
  right: 18px;
  width: 0;
  -webkit-transition: border-color 0.3s;
    -moz-transition: border-color 0.3s;
      -o-transition: border-color 0.3s;
        transition: border-color 0.3s;
}

.moreBtn::before {
  background: #e80;
}

.moreBtn::after {
  border-color: transparent transparent transparent #fff;
}

.moreBtn:hover {
  background: #ee8800;
  border-color: #ee8800;
  color: #fff;
}

.moreBtn:hover::after {
  border-color: transparent transparent transparent #ee8800;
}

.moreBtn:hover::before {
  background: #fff;
}

[class^="moreBtn_bg"]::before {
  background: #fff;
}

.moreBtn_bg01::after {
  border-color: transparent transparent transparent #525252;
}

.moreBtn_bg01:hover {
  background: #222;
  border-color: #1a1a1a;
}

.moreBtn_bg01:hover::before {
  background: #909090;
}

.moreBtn_bg01:hover::after {
  border-color: transparent transparent transparent #fff;
}

.moreBtn_bg02::after {
  border-color: transparent transparent transparent #fff;
}

.moreBtn_bg02:hover {
  background: #f5f5f5;
}

.moreBtn_bg02:hover::before {
  background: #fff;
}

.moreBtn_bg02:hover::after {
  border-color: transparent transparent transparent #ccc;
}

.backBtn {
  background: #4c4c4c;
  color: #fff;
}

.backBtn:hover {
  background: #fff;
  border-color: #4c4c4c;
  color: #4c4c4c;
}

[class^="sideBtn"] {
  background: #fff;
  border: 1px solid #c7c7c7;
  border-radius: 4px;
  color: #222;
  display: inline-block;
  line-height: 1.5;
  padding: .5em;
  text-align: center;
  text-decoration: none;
  min-width: 170px;
  -webkit-transition: background 0.3s;
    -moz-transition: background 0.3s;
      -o-transition: background 0.3s;
        transition: background 0.3s;
}

[class^="sideBtn"]:hover {
  background: #f5f5f5;
}

.sideBtn::after {
  content: '\F138';
  font-family: 'fontello';
  margin-left: 5px;
}

.sideBtn_back::before {
  content: '\F137';
  font-family: 'fontello';
  margin-right: 5px;
}

/*ページャー*/
.pagerContainer {
  padding: 10px 0 20px;
  text-align: center;
}

.pagerBox {
  display: inline-block;
  font-size: .9em;
  max-width: 950px;
}

.pager {
  align-items: flex-start;
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  justify-content: space-between;
}

.pager__prevBtnBox {
  order: 1;
  margin-right: 5px;
}

.pager__nextBtnBox {
  order: 3;
  margin-left: 5px;
}

.pager__prevBtnBox,
.pager__nextBtnBox {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
}

[class*="pager__prevBtn_"] {
  text-align: right;
}

[class*="pager__nextBtn_"] {
  text-align: left;
}

[class*="pager__prevBtn_"],
[class*="pager__nextBtn_"] {
  border: 1px solid #ddd;
  border-radius: 3px;
  display: block;
  padding: .5em;
  position: relative;
  width: 80px;
}

.pager__prevBtn_link,
.pager__nextBtn_link {
  color: #222;
}

.pager__nextBtn_noLink,
.pager__prevBtn_noLink {
  background: #f5f5f5;
  color: #bbb;
}

[class*="pager__prevBtn_"]::before {
  border-width: 5px 8px 5px 0;
  border-color: transparent #ccc transparent transparent;
  left: 8px;
}

[class*="pager__nextBtn_"]::after {
  border-width: 5px 0 5px 8px;
  border-color: transparent transparent transparent #ccc;
  right: 8px;
}

[class*="pager__prevBtn_"]::before,
[class*="pager__nextBtn_"]::after {
  border-style: solid;
  bottom: 0;
  content: '';
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}

[class*="pager__firstBtn_"] {
  margin-right: 5px;
}

[class*="pager__lastBtn_"] {
  margin-left: 5px;
}

[class*="pager__firstBtn_"],
[class*="pager__lastBtn_"] {
  display: block;
  padding: .5em;
}

[class*="pager__firstBtn_"]::before {
  content: '\E8AC';
  font-family: 'fontello';
  margin-right: 5px;
}

[class*="pager__lastBtn_"]::after {
  content: '\E8AB';
  font-family: 'fontello';
  margin-left: 5px;
}

.pager__pagination {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-wrap: wrap;
  order: 2;
}

.pager__num {
  margin: 0 3px;
}

[class*="pager__numLink"] {
  border: 1px solid #ddd;
  border-radius: 3px;
  text-align: center;
  width: 34px;
  color: #222;
  display: block;
  padding: .6em 0;
}

.pager__numLink_active {
  background: #f5f5f5;
  color: #bbb;
}

.pager__firstBtn_noLink,
.pager__lastBtn_noLink {
  color: #aaa;
}

.pager a {
  text-decoration: none;
}

@media screen and (min-width:376px) and ( max-width:425px) {
  [class*="pager__prevBtn_"],
  [class*="pager__nextBtn_"] {
    width: 55px;
  }

  [class*="pager__prevBtn_"],
  [class*="pager__nextBtn_"],
  [class*="pager__firstBtn_"],
  [class*="pager__lastBtn_"] {
    padding: .6em;
  }

  .pager__num {
    margin: 0 2px;
  }

  .pager__nextBtnBox {
    margin-left: 2px;
  }

  .pager__prevBtnBox {
    margin-right: 2px;
  }

  [class*="pager__firstBtn_"] {
    margin-right: 3px;
  }

  [class*="pager__lastBtn_"] {
    margin-left: 3px;
  }
}

@media screen and (max-width:375px) {
  .pagerBox {
    display: block;
  }

  .pager {
    display: block;
    overflow: hidden;
    padding-bottom: 40px;
    position: relative;
  }

  .pager__prevBtnBox {
    float: left;
  }

  .pager__nextBtnBox {
    float: right;
  }

  .pager__pagination {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
  }

  .pager__num {
    display: inline-block;
    margin-top: 15px;
  }

}

/*-------------------------------
トップページ
-------*/
.topPage {
  overflow: hidden;
}

/*スライダー*/
.topSliderContainer {
  background: #f5f5f5;
  margin:0 auto;
  padding: 40px 0;
  position: relative;
}

.topSliderCard {
  overflow: hidden;
  position: relative;
}

.topSliderContainer .swiper-container {
  width: 570px;
  height: 100%;
  overflow: visible !important;
  z-index: 1;
}

.topSliderContainer .swiper-pagination {
  left: 0;
  margin: auto;
  right: 0;
  width: 400px;
}

.topSliderContainer .swiper-pagination-bullet {
  margin: 16px 5px;
}

.topSliderContainer .swiper-button-next,
.topSliderContainer .swiper-button-prev {
  background-color: #e88501;
  background-image: none;
  height: 75px;
  width: 50px;
}

.topSliderContainer .swiper-button-next {
  right: 0;
}

.topSliderContainer .swiper-button-prev {
  left: 0;
}

.topSliderContainer .swiper-button-next::after,
.topSliderContainer .swiper-button-prev::after {
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  bottom: 0;
  content: " ";
  height: 32px;
  margin: auto;
  position: absolute;
  top: 0;
  width: 32px;
}

.topSliderContainer .swiper-button-next::after {
  right: 14px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.topSliderContainer .swiper-button-prev::after {
  left: 14px;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}

.swiper-button-next__txt,
.swiper-button-prev__txt {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}


.topSliderContainer .swiper-pagination-bullet-active {
  background-color: #222;
}

.topSliderCard__img {
  background: #222222;
  font-size: 0;
  text-align: center;
}

.topSliderCard__img img {
  height: 100%;
  display: inline;
  width: auto;
}

.topSliderCard__info {
  background: rgba(34,34,34,.85);
  bottom: 0;
  padding: 15px 10px;
  position: absolute;
  text-align: center;
  width: 100%;
}

.topSliderCard__name {
  -webkit-box-orient: vertical;
  color: #fff;
  font-size: 1.2em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.topSliderItem__type {
  color: #b1b1b1;
  margin-right: 3px;
}

.topSliderItem__type::before {
  content: '[';
}

.topSliderItem__type::after {
  content: ']';
}

.topSliderCard__author {
  color: #ffe823;
  font-size: 1.1em;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.topSliderCard__link {
  border: 1px solid #fff;
  border-radius: 4px;
  color: #fff;
  margin: 6px auto 0;
  padding: 3px;
  width: 135px;
  -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
        transition: all 0.3s;
}

.topSliderCard:hover .topSliderCard__link {
  border-color: #ee8800;
  background: #ee8800;
}

/*スライドが1つしかないとき*/
.topSliderContainer.disabled {
  padding: 0;
  background: #343330;
}

.topSliderContainer.disabled .swiper-button-prev,
.topSliderContainer.disabled .swiper-button-next,
.topSliderContainer.disabled .swiper-pagination {
  display: none;
}

.topSliderCard__introduction .topSliderCard__name {
   white-space: initial;
}

@media screen and (min-width:768px) {
  .topSliderCard__introduction .topSliderCard__name {
    line-height: 1.41em;
    margin-top: 1px;
  }
}


@media screen and (max-width:767px) {
  .topSliderContainer {
    background: #222;
    padding-top: 0;
  }

  .topSliderContainer .swiper-container {
    width: 100%;
  }

  .topSliderCard {
    padding-top: 100%;
  }

  .topSliderCard__img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }

  .topSliderContainer .swiper-pagination {
    width: 55%;
  }

  .topSliderContainer .swiper-button-next,
  .topSliderContainer .swiper-button-prev {
    background-color: transparent;
    top: auto;
    bottom: 2px;
    height: 35px;
    width: 75px;
  }

  .topSliderContainer .swiper-button-next::after,
  .topSliderContainer .swiper-button-prev::after {
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    height: 15px;
    width: 15px;
  }

  .swiper-button-next__txt,
  .swiper-button-prev__txt {
    overflow: visible;
    text-indent: 0;
    white-space: normal;
    color: #eee;
  }

  .swiper-button-prev__txt {
    margin-left: 25px;
  }

  .swiper-button-next__txt {
    margin-right: 25px;
  }

  .topSliderContainer .swiper-pagination-bullet {
    background: #ddd;
  }

  .topSliderContainer .swiper-pagination-bullet-active {
    background-color: #eee;
  }

  .topSliderCard__info {
    padding: 8px;
  }
}

.swiperNavBox {
  display: none\9;
}

/*STORE by UtaTenとは？*/
.topIntro {
  background-image: url(/utatenStore/img/top/topIntro_pc.jpg);
  background-position: center;
  background-repeat: no-repeat;
  height: 280px;
  margin-bottom: -20px;
}

.topIntro_txt {
  height: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

@media screen and (max-width:768px) {
  .topIntro {
    background-color: #e5e5e5;
    background-image: url(/utatenStore/img/top/topIntro_sp.jpg);
    background-size: 85%;
    height: 0;
    padding-top: 35%;
    margin-bottom: 0;
  }
}

@media screen and (max-width:425px) {
  .topIntro {
    background-size: 100%;
    padding-top: 39.3%;
  }
}

/*商品一覧*/
.productList {
  align-content: stretch;
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-wrap: wrap;
}

.productList + .moreBtnWrap {
  margin-top: -30px;
}

.productList__item {
  margin-bottom: 40px;
  width: calc((100% - 30px)/2);;
}

.productList__item:nth-child(2n) {
  margin-left: 30px;
}

.productCard {
  border: 1px solid #ddd;
  border-radius: 5px;
  position: relative;
}

.productCard__img {
  background: #f5f5f5;
  border-bottom: 1px solid #eaeaea;
  font-size: 0;
  height: 300px;
  text-align: center;
}

.productCard__img img {
  display: inline;
  height: 100%;
  width: auto;
  -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
      -o-transition: opacity 0.3s;
        transition: opacity 0.3s;
}

.productCard__inn {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-direction: column-reverse;
}

.productCard a {
  display: block;
  height: 100%;
  text-decoration: none;
}

.productCard__status {
  background: #333;
  border-radius: 60px;
  font-size: 1rem;
  height: 120px;
  left: -10px;
  line-height: 120px;
  position: absolute;
  text-align: center;
  top: -30px;
  width: 120px;
  z-index: 2;
}

.productCard__status .productCard__txt {
  color: #fff;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.5;
  vertical-align: middle;
}

.productCard__status_sale {
  background: rgba(246,84,44,.9);
}

.productCard__status_coming {
  background: rgba(48,165,255,.9);
}

.productCard__status_finished {
  background-color: #696969;
}

.productCard__status_soldout {
  background: #EF0107;
}

.productCard__info {
  padding: 15px 10px 10px;
  position: relative;
}

.productCard__name {
  color: #213ebb;
  font-size: 1.1em;
  font-weight: bold;
}

.productCard__type {
  color: #898989;
  margin-right: 3px;
}

.productCard__type::before {
  content: '[';
}

.productCard__type::after {
  content: ']';
}

.productCard__author {
  color: #222;
}

.productCard__benefits {
  background: #ffec16;
  color: #222;
  display: inline-block;
  left: -1px;
  line-height: 30px;
  padding: 0 10px;
  position: absolute;
  top: -20px;
  z-index: 1;
}

.productCard__benefits::before,
.productCard__benefits::after {
  border-style: solid;
  content: '';
  height: 0;
  left: 100%;
  position: absolute;
  width: 0;
  z-index: 1;
}

.productCard__benefits::before {
  border-width: 15px 15px 0 0;
  border-color: #ffec16 transparent transparent transparent;
}

.productCard__benefits::after {
  border-width: 15px 0 0 15px;
  border-color: transparent transparent transparent #ffec16;
  bottom: 0;
}

.productCard__date {
  font-size: .9em;
  color: #aaa;
}

.productCard__price {
  color: #f6542c;
  font-weight: bold;
  font-size: 1.2em;
  margin-top: 3px;
}

.productCard__price_small {
  font-size: .8em;
  font-weight: bold;
}

.productCard__btn {
  background: #343330;
  bottom: 10px;
  color: #fff;
  padding: 3px 15px;
  position: absolute;
  right: 10px;
  width: 160px;
  -webkit-transition: background 0.3s;
    -moz-transition: background 0.3s;
      -o-transition: background 0.3s;
        transition: background 0.3s;
}

.productCard__btn::after {
  position: absolute;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  bottom: 0;
  content: " ";
  height: 8px;
  margin: auto;
  right: 6px;
  top: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  width: 8px;
}

.productCard:hover .productCard__btn {
  background: #ee8800;
}

.productCard:hover .productCard__img img {
  opacity: .85;
}

@media screen and (min-width:768px) and ( max-width:970px) {
.productList {
    padding: 1em;
  }
}

@media screen and (max-width:767px) {
  .productList {
    padding: 0;
  }

  .productList__item {
    width: 100%;
    margin-bottom: 0;
  }

  .productList__item:nth-child(2n) {
    margin-left: 0;
  }

  .productCard {
    border: none;
    border-top: 1px solid #ddd;
  }

  .productCard:last-child {
    border-bottom: 1px solid #ddd;
  }

  .productCard__inn {
    flex-direction: row-reverse;
  }

  .productCard__img {
    border: none;
    height: 0;
    padding-top: 40%;
    position: relative;
    width: 40%;
  }

  .productCard__img img {
    height: 100%;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
  }

  .productCard__info {
    padding: 2.3em 7px 7px;
    overflow: hidden;
    width: 60%;
  }

  .productCard__status {
    border-radius: 0;
    font-size: 1.5rem;
    height: 1.2em;
    left: 0;
    line-height: 1.2;
    padding-left: .5em;
    text-align: left;
    top: 83%;
    width: 110px;
  }

  .productCard__status .productCard__txt {
    font-size: .9rem;
  }

  .productCard__status .productCard__txt br {
    display: none;
  }

  .productCard__status::before {
    border-color: #333 transparent transparent transparent;
    border-style: solid;
    border-width: 1.2em 1em 0 0;
    bottom: 0;
    content: '';
    display: block;
    height: 0;
    left: 100%;
    opacity: .9;
    position: absolute;
    width: 0;
  }

  .productCard__status_sale::before {
    border-color: #f6542c transparent transparent transparent;
  }

  .productCard__status_coming::before {
    border-color: #30a5ff transparent transparent transparent;
  }

  .productCard__benefits {
    top: 5px;
    font-size: .9em;
    line-height: 2em;
  }

  .productCard__name {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    max-height: 3em;
    overflow: hidden;
  }

  .productCard__author  {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .productCard__price {
    margin-top: 0;
  }

  .productCard__btn {
    bottom: 5px;
    right: 5px;
    width: 110px;
  }

  .productList + .moreBtnWrap {
    margin-top: 0;
  }

}

@media screen and (max-width:374px) {
  .productCard__info {
    padding-bottom: 3em;
  }
}

/*-------------------------------
商品ページ
-------*/
.product {
  overflow: hidden;
  padding: 2em 0;
}

.product__img {
  width: 400px;
}

.product__img img {
  width: 100%;
}

.product__head,
.product__info {
  float: right;
  width: 530px;
}

.product__head {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-direction: column;
}

.product__info {
  margin-top: 1em;
}

.product__name {
  font-size: 1.3em;
  font-weight: bold;
  order: 2;
}

.product__author {
  color: #e80;
  font-size: 1.1em;
  font-weight: bold;
  order: 1;
}

.product__type {
  color: #b1b1b1;
  margin-right: 3px;
}

.product__type::before {
  content: '[';
}

.product__type::after {
  content: ']';
}

.product__announceDate {
  color: #7b7b7b;
  font-size: .9em;
  margin-top: 2px;
  order: 3;
}

.other_page_link_box {
  display: flex;
  justify-content:
  space-between;
  margin-bottom: 30px;
}

.other_page_link_btn {
  background: #EAE9E9;
  color: #222;
  size: 5px;
  border-radius: 0.2em;
  padding: 3px 15px;
  text-decoration: none;
  padding: 8px;
}

.other_page_link_btn:hover {
  color: #fff;
  background: #EE8801;
}

.product__label {
  background: #e80;
  border-radius: 3px;
  color: #fff;
  display: inline-block;
  font-size: .9em;
  margin-bottom: 1em;
  padding: 3px .5em;
}

.product__priceType {
  float: left;
}

.product__priceTxtBox {
  overflow: hidden;
}

.product__priceTxt_sale,
.product__priceTxt_unit {
  line-height: 1;
}

.product__priceTxt_sale {
  color: #e80;
  font-size: 1.4em;
  font-weight: bold;
}

.product__purchaseLimit {
  margin-bottom: .5em;
}

.product__priceTxt_unit {
  font-size: .9em;
}

.product__priceTxt_sale + .product__priceTxt_unit {
  color: #e80;
}

.product__purchaseLimit {
  font-size: .9em;
}

.product__priceBox {
  margin-bottom: 1em;
}

[class*="product__salesSchedule_"] {
  display: table;
  margin-top: .3em;
  width: 300px;
}

.product__salesScheduleHead,
.product__salesScheduleDate {
  display: table-cell;
  line-height: 1;
  padding: .5em;
}

.product__salesScheduleHead {
  color: #fff;
  text-align: center;
  width: 80px;
}

.product__salesSchedule_start .product__salesScheduleHead {
  background: #e80;
}

.product__salesSchedule_end .product__salesScheduleHead {
  background: #585857;
}

.product__salesScheduleDate {
  background: #f9f9f9;
}

@media screen and (max-width:950px) {
  .product {
    padding: 1em;
  }

  .product__img {
    width: 40%;
  }

  .product__head,
  .product__info {
    width: 60%;
    padding-left: 1em;
  }
}

@media screen and (max-width:767px) {
  .product__head {
    float: none;
    margin-bottom: .5em;
    padding-left: 0;
    width: 100%;
  }

  .product__info {
    margin-top: 0;
  }

  .product__label,
  .product__priceBox {
    margin-bottom: .5em;
  }

  [class*="product__salesSchedule_"] {
    width: auto;
  }
}

@media screen and (max-width:425px) {
  .product {
    padding: 1em .5em;
  }

  .product__info {
    padding-left: .5em;
  }

  .product__salesScheduleHead {
    padding: 5px 0;
    width: 65px;
  }

  .product__salesScheduleDate {
    padding: 5px;
  }
}

@media screen and (max-width:360px) {
  .product__salesScheduleHead {
    width: 55px;
  }
}

/*アイテム一覧*/
.productItemListWrap {
  border-top: 1px solid #eee;
  padding: 2em 1em;
}

.productItemListWrap .headTxt_cmn {
  margin-top: .5em;
}

.productItemListContainer {
  overflow: hidden;
}

.productItemList {
  align-content: stretch;
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
}

.productItem {
  margin-bottom: 1.5em;
  padding-right: 10px;
  width: 33%;
}

.productItemInn {
  border: 1px solid #ddd;
  border-radius: 5px;
  height: 100%;
  overflow: hidden;
  padding-bottom: 60px;
  position: relative;
}

.productItem__infoBox {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-direction: column-reverse;
}

.productItem__img {
  background: #222;
  border-bottom: 1px solid #eaeaea;
  font-size: 0;
  height: 210px;
  overflow: hidden;
  position: relative;
  text-align: center;
}

.productItem__img img {
  display: inline;
  height: 100%;
  width: auto;
}

.productItem__info {
  padding: .5em;
}

.productItem__name {
  border-left: 6px solid #e80;
  font-weight: bold;
  padding: .2em 0 .2em .5em;
}

.productItem__stockBox {
  margin-top: .5em;
}

.productItem__stock {
  font-size: 1.15em;
  font-weight: bold;
  color: #e00;
}

.productItem__cartBtnBox {
  bottom: 0;
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  justify-content: space-between;
  padding: 0 .5em .5em;
  position: absolute;
  width: 100%;
}

.productItem__selectBox {
  background: #fff;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  width: 70px;
  z-index: 1;
}

.productItem__select {
  background: transparent;
  border: 1px solid #333;
  border-radius: 4px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 100%;
  padding-left: .5em;
  padding-right: 30px;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.productItem__selectBox::before {
  background-color: #222;
  background-image: url('/utatenStore/img/select_arrow.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px;
  content:' ';
  height: 100%;
  pointer-events: none;
  position: absolute;
  right: 0;
  width: 25px;
  z-index: -2;
}

[class*="productItem__btn"] {
  border-radius: 4px;
  color: #fff;
  display: block;
  font-size: 1em;
  line-height: 1.5;
  padding: .6em 0;
  position: relative;
  text-align: center;
  text-decoration: none;
}

.productItem__btn_active::before {
  content: '\E84D';
  font-family: 'fontello';
  margin-right: 5px;
}

.productItem__btn_active {
  background: #e80;
  border: 1px solid #d87b00;
  width: calc( 100% - 75px);
}

.productItem__btn_disabled {
  background: #c9c9c9;
  border: 1px solid #c2c2c2;
  width: 100%;
}

.productItem__btn_lotteryApply {
  background: #e80;
  border: 1px solid #d87b00;
  width: 100%;
}

.productItem__commingTxt {
  background: rgba(238,136,0,.9);
  bottom: 0;
  color: #fff;
  font-size: 1rem;
  padding: .3em;
  position: absolute;
  text-align: center;
  width: 100%;
  z-index: 2;
}

.productLimitBox {
  text-align: center;
  margin: 15px 0 15px 0;
}

.productLimitContent {
  margin-top: 15px;
}

.productLimitContent span {
  display: inline-block;
  text-align: left;
}

@media screen and (min-width:561px) and (max-width:767px) {
  .productItemList {
    margin-right: -1em;
  }

  .productItem {
    padding-right: 1em;
    width: 50%;
  }

  .productItemInn {
    padding-bottom: 50px;
  }
}

@media screen and (max-width:560px) {
  .productItemListWrap {
    padding: 2em 0;
  }

  .productItemList {
    border-top: 1px solid #eee;
    margin-right: 0;
  }

  .productItem {
    border: none;
    border-bottom: 1px solid #eee;
    border-radius: 0;
    margin-bottom: 0;
    padding-right: 0;
    width: 100%;
  }

  .productItem:last-child {
    border-bottom: none;
  }

  .productItemInn {
    border: none;
    padding-bottom: 0;
  }

  .productItem__infoBox {
    flex-direction: row-reverse;
  }

  .productItem__info {
    padding: .5em .5em 50px;
  }

  .productItem__img {
    border-bottom: none;
  }

  .productItem__cartBtnBox {
    right: 0;
  }
}

@media screen and (min-width:426px) and (max-width:560px) {
  .productItem__info,
  .productItem__cartBtnBox {
    width: calc(100% - 180px);
  }

  .productItem__img {
    height: 150px;
    width: 180px;
  }
}

@media screen and (min-width:361px) and (max-width:425px) {
  .productItem__info,
  .productItem__cartBtnBox {
    width: calc(100% - 135px);
  }

  .productItem__img {
    height: 135px;
    width: 135px;
  }
}

@media screen and (max-width:360px) {
  .productItem__info,
  .productItem__cartBtnBox {
    width: calc(100% - 110px);
  }

  .productItem__img {
    height: 110px;
    width: 110px;
  }

  .productItem__selectBox {
    width: 65px;
  }

  .productItem__btn_active {
    width: calc( 100% - 70px);
  }
}

@media screen and (min-width:769px) {
  .productItemList__dateForm {
    width: 55%;
    margin: 0 auto;
  }

  .productItemList__dateForm .form__selectWrap {
    width: 100%;
  }

  .productItemInn--column {
    -js-display: flex;
    -ms-display: flex;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: 0;
  }

  .productItemInn--column .productItem__cartBtnBox {
    position: inherit;
    bottom: auto;
  }
}

.productItemList__dateForm .productItemList__dateFormCapt {
  font-size: 0.95em;
  text-align: center;
  margin-bottom: 5px;
}

/*アイテム詳細*/
.product__introWrap {
  border-top: 1px dashed #eee;
  padding: 2em 1em;
}

.product__introWrap .headTxt_cmn {
  margin-top: .5em;
}

.product__intro {
  padding: .5em;
}

/*カート*/
.cartItem {
  background: #fff;
  border-bottom: 1px solid #ddd;
  padding: 1em;
}

.cartItem:last-child {
  border-bottom: none;
}

.cartItemListWrap {
  background: #fff;
  margin: 1em 0;
  padding-top: .5em;
}

.cartItemListContainer {
  width: 650px;
  margin: auto;
}

.cartItemList {
  border-top: 1px solid #ddd;
}

.cartItem__content {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  flex-direction: row-reverse;
}

.cartItem a {
  text-decoration: none;
}

.cartItem__productName {
  color: #e80;
  font-weight: bold;
}

.cartItem__type {
  color: #b1b1b1;
  margin-right: 3px;
}

.cartItem__type::before {
  content: '[';
}

.cartItem__type::after {
  content: ']';
}

.cartItem__img {
  width: 135px;
}

.cartItem__img img {
  width: 100%;
}

.cartItem__info {
  width: calc(100% - 135px);
  overflow: hidden;
  padding-left: 1em;
}

.cartItem__itemName {
  color: #222;
  font-weight: bold;
}

.cartItem__author {
  font-size: .9em;
}

.cartItem__price {
  color: #f6542c;
  margin-top: .4em;
}

.cartItem__priceTxt_sale {
  font-weight: bold;
  font-size: 1.2em;
}

.cartItem__price_small {
  font-size: .8em;
  font-weight: bold;
}

.cartItem__selectBox {
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  margin-right: 7px;
  width: 70px;
  z-index: 1;
}

.cartItem__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 1px solid #333;
  border-radius: 4px;
  font-size: .9em;
  height: 100%;
  padding: 0 30px 0 .5em;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.cartItem__selectBox::before {
  background-color: #222;
  background-image: url('../img/select_arrow.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px;
  content: '';
  height: 100%;
  position: absolute;
  right: 0;
  width: 25px;
  z-index: -1;
  color: #fff;
}

.cartItem__deleteBtn,
.cartItem__changeBtn {
  color: #222;
  font-size: .9em;
  height: 100%;
  line-height: 1;
  padding: 8px 0;
  text-align: center;
}

.cartItem__deleteBtn {
  background: #f0f0f0;
  border: 1px solid #f0f0f0;
  float: right;
  margin-top: .5em;
  width: 60px;
}

.cartItem__deleteBtn::before {
  content: '\E829';
  font-family: 'fontello';
  margin-right: 5px;
}

.cartItem__changeBtn {
  background: #fff;
  border: 1px solid #222;
  border-radius: 4px;
  width: 75px;
}

.cartItem__quantityBox {
  -js-display: flex;
  -ms-display: flex;
      display: flex;
  float: left;
  margin-top: .5em;
}

/*別ページにカートアイテムが入るパターン*/
.cartImportBox {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 5px;
  margin: auto;
  padding: 0 1em;
  width: 650px;
}

.cartImportBox .cartItem {
  border-bottom: 1px dashed #ddd;
  position: relative;
}

.cartImportBox .cartItem:last-child {
  border-bottom: 0;
}

.cartItem__quantityTxt {
  background: #ececec;
  bottom: .5em;
  padding: 2px 5px;
  position: absolute;
  right: .5em;
  display: inline-block;
}

.cartItem__edit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
 margin-top: 4px;
}

.cartItem__shotType {
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  margin-right: 1rem;
}

.cartItem__controls {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

@media screen and (max-width:768px) {
  .cartItem__controls {
    width: 100%;
  }
}

/*合計金額*/
.cart__infoWrap {
  padding: 1em 0;
}

.cart__info {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 5px;
  margin: auto;
  padding: 1.5em 0;
  text-align: center;
  width: 650px;
}

.cart__info .moreBtn {
  width: 90%;
}

.cart__sumTxt {
  font-size: 1.1em;
  font-weight: bold;
  color: #e80;
}

.cart__sumPriceBox {
  border-top: 1px solid #b8b8b8;
  display: flex;
  justify-content: center;
  margin: 1em 1em .5em;
  padding: 2em 0;
}

.cart__sumPriceBox {
  border-top: 1px solid #b8b8b8;
  display: flex;
  font-size: 1.1em;
  justify-content: center;
  margin: 1em 1em .5em;
  padding: 2em 0;
}

.cart__sumPrice_ttl,
.cart__sumPrice,
.cart__sumPrice_unit {
  font-weight: bold;
}

.cart__sumPrice {
  font-size: 1.03em;
  margin-top: -0.05em
}

.cart__sumPrice_ttl {
  margin-right: 1.5em;
}

.cart__sumPrice_unit {
  font-size: .8em;
}

.cart__info .attenTxt_s {
  margin-top: .5em;
}

.cartImportBox .cart__info {
  border: none;
  border-top: 1px solid #888;
  border-radius: 0;
  width: auto;
}

.cartImportBox .cart__sumPriceBox {
  border-top: 1px dashed #ddd;
}

@media screen and (max-width:768px) {
  .cartItem {
    padding: .5em;
  }

  .cartItem__img {
    width: 100px;
  }

  .cartItem__info {
    width: calc(100% - 100px);
  }

  .cart__info {
    width: 100%;
    border: none;
    border-radius: 0;
  }
}

@media screen and (max-width:650px) {
  .cartImportBox {
    margin: auto;
    width: 100%;
  }

  .cartItemListContainer {
    width: 100%;
  }
}

@media screen and (max-width:425px) {
  .cartItem__deleteBtn,
  .cartItem__changeBtn {
    padding: 10px 0;
  }

  .cartItem__changeBtn {
    width: 65px
  }

  .cartItem__selectBox {
    margin-right: 5px;
  }
}

@media screen and (max-width:360px) {
  .cartItem__img {
    width: 85px;
  }

  .cartItem__info {
    padding-left : .5em;
    width: calc(100% - 85px);
  }
}

/*購入関係*/
.purchasePage .cmnTxtBox {
  max-width: 600px;
}

.purchase__orderRegist {
  max-width: 600px;
  margin: auto;
}

.purchase__orderRegistInn + .purchase__orderRegistHead {
  border-top: 1px dashed #ddd;
  padding-top: 1em;
}

.purchase__orderRegistInn {
  padding-bottom: 1.5em;
}

.purchase__orderRegist .form {
  background: #fff;
  border: none;
  border-radius: 0;
  padding: 0;
}

.purchase__warningText {
  color: #ed8800;
  font-size: 0.9em;
  text-align: center;
}

.formConfirm {
  margin: auto;
  max-width: 600px;
}

.formConfirm .form__btnBox {
  padding: 0 1em;
}

.formConfirm .purchase__orderRegist {
  padding-top: 1.5em;
  border-top: 1px dashed #ddd;
}

.formConfirm .form__head {
  padding: .2em;
  background: #f4f4f4;
}

[class^="formConfirm__txt_"] {
  margin: .3em 0;
}

/*注文確認画面のテーブル*/
.orderConfTable__itemList {
  padding: 0 .5em;
}

.orderConfTable {
  border: 1px solid #e2e2e2;
  font-size: .95em;
}

.orderConfTable + .orderConfTable {
  margin-top: .5em;
}

.orderConfTable__head {
  background: #f7f7f7;
  font-size: 1.1em;
  padding: .6em;
}

.orderConfTable__productName {
  font-weight: bold;
}

.orderConfTable__productType {
  color: #b1b1b1;
  margin-right: 3px;
}

.orderConfTable__productType::before {
  content: '[';
}

.orderConfTable__productType::after {
  content: ']';
}

.orderConfTable__col {
  margin: .3em 0;
}

.orderConfTable__label,
.orderConfTable__inn {
  display: inline;
}

.orderConfTable__item {
  padding: 1em;
  position: relative;
}

.orderConfTable__item + .orderConfTable__item {
  border-top: 1px dashed #f0f0f0;
}

.orderConfTable__itemName {
  font-weight: bold;
}

.orderConfTable__itemName::before {
  content: '・';
  left: 0;
  position: absolute;
}

.orderConfTable + .orderPriseTable {
  margin-top: 1em;
}

.orderPriseTable .cmnTableFoot .cmnTable__label {
  background: #ee8800;
}

.orderPriseTable .cmnTableFoot .cmnTable__label,
.orderPriseTable .cmnTableFoot .cmnTable__inn {
  border: 2px solid #ee8800;
}


@media screen and (max-width:768px) {
  .purchase__orderRegistInn {
    padding: 0 .5em 1.5em;
  }

  .purchase__orderRegistInn .formBox {
    margin: 2em 0;
  }
}

/*マイページ関連*/
.myPage__menuWrap {
  max-width: 600px;
  margin: auto auto 2em;
}

.myPage__menuSec + .myPage__menuSec {
  margin-top: 2em;
}

.mypageBtn {
  border: 1px solid #ddd;
  background: #fff;
  display: block;
  padding: 1em 2.5em 1em 1em;
  position: relative;
  text-decoration: none;
  color: #222;
}

.mypageBtn::after {
  content: '\F101';
  font-family: 'fontello';
  position: absolute;
  right: 1em;
}

.mypageBtn + .mypageBtn {
  border-top: none;
}

.mypageBtn:first-child {
  border-radius: 5px 5px 0 0;
}

.mypageBtn:last-child {
  border-radius: 0 0 5px 5px;
}

.mypageBtn:only-child {
  border-radius: 5px;
}


/*購入履歴関係*/
.ordersList {
  padding: 1em;
}

.orders {
  border: 1px solid #ddd;
  border-radius: 5px;
  overflow: hidden;
}

.orders + .orders {
  margin-top: 2em;
}

.orders a {
  color: #222;
  text-decoration: none;
}

.orders__head {
  background: #f7f7f7;
  font-size: 1.1em;
  padding: .6em;
  position: relative;
}

[class^="orders__col_"] {
  display: inline-block;
  font-size: .9em;
}


[class^="orders__col_"] + [class^="orders__col_"] {
  border-left: 1px solid #ddd;
  margin-left: 1.5em;
  padding-left: 1.5em;
}

.orders__time {
  font-weight: bold;
  font-size: 1.1em;
}

.ordersList__headBtn {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 3px;
  bottom: 0;
  display: block;
  font-size: 13px;
  height: 40px;
  line-height: 40px;
  margin: auto;
  position: absolute;
  right: .5em;
  text-align: center;
  top: 0;
  width: 110px;
}

.ordersList__headBtn::before {
  content: '\F0FE';
  font-family: 'fontello';
  margin-right: .5em;
}

.orders__label,
.orders__inn {
  display: inline;
}

.orders__itemList {
  background: #fff;
}

.orders__item {
  overflow: hidden;
  padding: .5em;
}

.orders__item + .orders__item {
  border-top: 1px dashed #ebebeb;
}

.orders__img {
  float: left;
  padding-right: .5em;
  width: 110px;
}

.orders__img img {
  width: 100%;
}

.orders__info {
  font-size: .9em;
  float: right;
  overflow: hidden;
  width: calc(100% - 110px);
}

.orders__productName {
  color: #e80;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  max-height: 3em;
  overflow: hidden;
}

.orders__itemName {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.orders__itemCkc {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 5px;
}

.orders__itemCkc_list {
  border-top: 1px dashed #ebebeb;
}

.orders__type {
  color: #b1b1b1;
  margin-right: 3px;
}

.orders__type::before {
  content: '[';
}

.orders__type::after {
  content: ']';
}

.orders__itemStock {
  margin-top: .5em;
}

.orders__itemPrice {
  font-size: 1.2em;
  margin-top: .2em;
}

.ordersList__footBtn {
  border-top: 1px solid #ddd;
  display: block;
  padding: 1em .5em;
  position: relative;
  text-align: right;
}

.ordersList__footBtn::after {
  color: #ccc;
  content: '\F101';
  font-family: 'fontello';
  font-size: 1.2em;
  margin-left: 1em;
}


/*ご購入済みアイテムの詳細*/
.ordersDetail__inn {
  padding: .5em 1.5em 2em;
}

.ordersDetail__inn + .ordersDetail__head {
  border-top: 1px solid #ececec;
  padding-top: 1em;
}

.orderItemList {
  padding: .5em 1em 2em;
}

.orderItemList .ordersInn {
  padding: .5em;
  overflow: hidden;
}

.orderItemList .orders__productName {
  -webkit-box-orient: initial;
  display: block;
  -webkit-line-clamp: initial;
  max-height: 100%;
  overflow: auto;
}

.ckcSerial {
  border-top: 1px dashed #ddd;
  padding: .5em;
}

.ckcSerial__head {
  color: #e80;
  margin-bottom: .5em;
}

.ckcSerial .cmnTable__label {
  background: #f5f5f5;
  color: #222;
  min-width: 155px;
  vertical-align: middle;
  text-align: center;
  width: 43%;
  min-width: 140px
}

.ckcSerial .cmnTable__label,
.ckcSerial .cmnTable__inn {
  border: 2px solid #fff;
}

.ckcSerial .cmnTable__inn {
  background: #fff;
  text-align: left;
}

.ckcSerial__code {
  background: #fff;
  border: none;
  height: 100%;
  width: 100%;
}

.ckcSerial__code_name {
  color: #8d8585;
}

.ckcSerial__codeBox + .ckcSerial__codeBox {
  margin-top: .3em;
}

.orderItemList .orders {
  border-color: #e3e3e3;
}

.orderItemList .orders + .orders {
  margin-top: 1em;
}

.orders + .cmnTable {
  margin-top: 1em;
}

.orders .textTable__head {
  margin-bottom: .5em;
}

@media screen and (min-width: 769px) and (max-width:970px) {
  .ordersDetail {
    padding: 0 1em 2em;
  }
}

@media screen and (max-width:768px) {
  .ordersDetail,
  .myPage__menuWrap {
    padding: 0 .5em 2em;
  }

  .ckcSerial .cmnTable__label {
    min-width: 150px;
    padding: .5em 0;
  }

  [class^="orders__col_"] {
    font-size: 1em;
    display: block;
  }

  [class^="orders__col_"] + [class^="orders__col_"] {
    border-left: none;
    margin-left: 0;
    margin-top: .2em;
    padding-left: 0;
  }

  .orders__col_sumPrice {
    display: none;
  }

  .orderItemList {
    padding: .5em 0 2em;
  }
}

@media screen and (max-width:425px) {
  .ordersList__headBtn {
    font-size: 11px;
    height: 50px;
    line-height: 1;
    width: 60px;
  }

  .ordersList__headBtn::before {
    content: '\F0FE';
    font-size: 22px;
    font-family: 'fontello';
    display: block;
    line-height: 1;
    margin: .2em auto;
    text-align: center;
  }
}

/*-------------------------------
よくある質問・お問い合わせ
-------*/
.question {
  border-bottom: 1px solid #eee;
  margin: auto;
  padding: 0 1em 2em;
  max-width: 950px;
}

.question__sec {
  border: 1px solid #e5e5e5;
  border-radius: 10px;
  margin: 1em 0;
  overflow: hidden;
}

.question__head {
  background: #fff;
  cursor: pointer;
  font-weight: bold;
  font-size: 1.1em;
  padding: .5em;
}

.question__head::before {
  content: '\E82E';
  color: #ed8800;
  font-family: 'fontello';
  font-size: 1.3em;
  margin-right: 6px;
}

.question__inn {
  border-top: 1px dashed #ddd;
  padding: 1em;
}

.domainCopyBox {
  background: #ececec;
  border-radius: 4px;
  margin: .5em 0;
  padding: 1em .5em;
  text-align: center;
}

.domainCopy {
  border: none;
  border-radius: 3px;
  font-size: 1.3em;
  padding: .4em;
  text-align: center;
  width: 100%;
}

.inquiryPage .cmnTxtBox {
  max-width: 600px;
}

.formBox_conf {
  padding: .5em;
  border: 1px solid #f1f1f1;
}

.formBox__head {
  padding: .5em 1em 1em;
  text-align: center;
  font-size: 1.2em;
  font-weight: bold;
}

@media screen and (max-width:768px) {
  .question {
    padding: 0 .5em 2em;
  }

  .question__inn {
    font-size: 13px;
    padding: .5em;
  }
}

/* レーベルさん用販売数テーブル */
.salesData {
  overflow: auto;
  font-size: 13px;
  margin-bottom: 20px;
  display: flex;
}

.salesData th,
.salesData td {
  padding: 2px;
  border: 1px solid #f4f4f4;
}

.salesData td {
  text-align: center;
  vertical-align: middle;
  padding: 2px 5px;
}

.salesData thead th {
  width: 150px;
  min-width: 150px;
  max-width: 150px;
  white-space: nowrap;
  padding: 2px 8px;
}

.salesData .salesData__variationName {
  position: sticky;
  position: -webkit-sticky;
  background-color: #fff;
  border-right: 1px solid #f4f4f4;
  width: 250px;
  min-width: 250px;
  max-width: 250px;
  left: 0px;
  vertical-align: middle;
}

.salesData .salesData__variationName:first-child {
  display: inline-grid;
  align-content: center;
}

.salesData .salesData__variationName::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  border-right: 1px solid #f4f4f4;
}

.salesData th {
  background-color: #eae9e9 !important;
}

.salesData__valiationTotal {
  background-color: #ffd;
}

.salesData__valiationStock {
  background-color: #dfd;
}

.variation_link {
  text-decoration: none;
  cursor: pointer;
}

.scroll_box {
  cursor: move;
  overflow-x: scroll;
  /* firefoxだけスクロールバーが動作してないのでスクロールバー要素をnoneに */
  scrollbar-width: none;
}

.scroll_box::-webkit-scrollbar {
  height: 10px;
}

.scroll_box::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}

.scroll_box::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #525252;
}

/* 商品詳細会員登録バナー */
.registerBanner {
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: 100;
}

.registerBanner__inner {
  display: block;
  margin: 0 auto;
  text-align: center;
  max-width: 100%;
  width: 400px;
  background: rgba(0,0,0, 0.75);
  margin: 10px auto;
}

.registerBanner__date {
  color: #ffec16;
  padding-top: 10px;
}

.registerBanner__button {
  max-width: 90%;
  margin: 0 auto;
  padding: 5px;
}

/* チェキチャ連携ページ */
.ckcConnectPage .ckcUnlinkBtn {
  display: block;
  margin: 0 auto;
  background: #e00;
  color: #fff;
  padding: 10px 15px;
  border: 0;
  border-radius: 5px;
}

.ckcConnectBtn {
  color: #e80;
}

.ckcConnectBtn__disabled {
  color: #D1D5DB;
}

.lottery {
  border-top: 1px solid #eee;
  padding: 2em 1em;
}

.lotteryForm {
  width: 100%;
}

.lottery__textCenter {
  text-align: center;
}

.lottery__textBold {
  font-weight: bold;
  font-size: 1.1em;
  color: #ED0001;
}

.lottery .lottery__button {
  display: block;
  padding: 20px;
  margin: 10px auto;
  border: none;
  min-width: 200px;
  font-size: 1.05em;
}

.lottery .lottery__button.lottery__buttonDisabled {
  background: #787878;
  color: #fff;
}

.lottery .lottery__button.lottery__buttonApply {
  background: #e80;
  color: #fff;
}

.lottery__dateDetail {
  display: table;
  margin: 0 auto;
  width: 400px;
  font-size: 0.9em;
}

.lottery__dateDetail dt {
  display: table-cell;
  width: 100px;
}

.lottery__dateDetail dd {
  display: table-cell;
}

.lotteryItem__btn_active::before {  
  content: none;
}

.lotteryItem__quantityChangeBtn {
  border-radius: 3px;
  display: inline-block;
  font-size: .9em;
  padding: 3px .5em;
  width: 100%;
  background: #fff;
  color: #e80;
  border: 0.1rem solid #e80;
  margin: 5px 0 -5px 0;
  text-align: center;
}

.applyBtn::before {
  content: none;
}

.labelList {
  margin-bottom: 10px;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  font-size: 0.9rem;
  row-gap: 0.2rem;
  column-gap: 1.4rem;
}

.clearfix::after {
  content: "";
  clear: both;
  display: table;
}