@charset "euc-jp";

@media screen and (max-width:768px) {
  /* フォントサイズ変更機能の上書き */
  body, th, td, input, textarea, select {
    font-size: 12px;
    line-height:1.4;
  }

  .small_font_size {
    font-size:11px;
    line-height:1.4;
  }

  .large_font_size {
    font-size:14px;
    line-height:1.4;
  }

  /* 全体 */
  body{
    font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
    -webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
    background-color: #fff;
    background-image: none;
  }

  body > div.mainContents {
    padding: 10px;
  }

  td{
	white-space:normal;
  }

  body > div > table {
    width: 100%;
	box-sizing: border-box;
  }

  body > div > form > table {
    width: 100%;
	box-sizing: border-box;
  }

  body > div img {
    vertical-align: middle;
  }

  body > div input, body > div textarea {
    max-width: 200px;
    padding: 5px;
  }

  body > div select {
    font-size: 14px;
  }

  /* 非表示 */
  .responsiveDesignHide {
    display: none !important;
  }

  /* 表示 */
  .responsiveDesignShow {
    display: block !important;
  }

  /* ヘッダ */
  .responsiveDesignHeader td {
    color: #fff;
    background-color: #666;
  }

  /* 看板画像 */
  .responsiveDesignHeadImg,.responsiveDesignFootImg{
    text-align:center;

  }
  .responsiveDesignHeadImg img,.responsiveDesignFootImg img{
    max-width:100%;
  }
  .responsiveDesignFootImg{
    margin-bottom:10px;
  }

  /* 買い物かご */
  .responsiveDesignBasket {
    background-color: #888;
  }

  .responsiveDesignBasket td {
    background-color: #fff;
  }

  .responsiveDesignBasketHeader td {
    background-color: #e8e8e8;
  }

  .responsiveDesignBasketHeader td * {
    color: #000;
  }

  .responsiveDesignBasketFooter td {
    background-color: #eee;
  }

  .responsiveDesignBasketFooter td * {
    color: #000;
  }

  /* 名入れ */
  .responsiveDesignBasket .nameList{
    background-color: #fff;
    margin:10px;
    width:95%;
  }

  .responsiveDesignBasket .nameAmount{
    background:#eee;
  }

  .responsiveDesignBasket .nameFix{
    padding-bottom:5px;
  }

  /* 買い物かご総合計 */
  .responsiveDesignTotalPrice {
    border: 1px solid #666;
    background-color: #666;
  }

  .responsiveDesignTotalPrice > tbody > tr > td {
    padding: 5px;
  }

  .responsiveDesignTotalPrice tr {
    background-color: #fff;
  }

  .responsiveDesignTotalPrice td * {
    color: #000;
  }

  .responsiveDesignTotalPrice table {
    margin-bottom: 5px;
  }

  .responsiveDesignTotalPrice .large_font_size {
    font-size: 16px;
  }

  .responsiveDesignTotalPrice .responsiveDesignTotalPriceText * {
    color: #f00;
  }

  /* 入力フォーム */
  .responsiveDesignSectionInput {
    background-color: #ccc;
  }

  .responsiveDesignSectionInputHeader {
    background-color: #666;
  }

  .responsiveDesignSectionInputHeader * {
    color: #fff;
  }

  .responsiveDesignSectionInput .require_mark {
    color: #f00;
    font-weight: bold;
    float: none;
  }

  .responsiveDesignSectionInput #sender_email {
    max-width:270px;
  }

  .responsiveDesignSectionInput #sender_emailconfirm {
    max-width:270px;
  }

  .responsiveDesignSectionInput #sender_addr {
    max-width:270px;
  }

  .responsiveDesignSectionInput #receiver_addr {
    max-width:270px;
  }

  .example {
    font-size:11px;
    color:#666;
    margin-left:5px;
  }

  /* アカウントログイン */

  #loginTable{
    border : 0;
    border-collapse: collapse;
  }

  .responsiveDesignSectionLoginHeader {
    background: #eee;
    color: #333;
  }

  #loginTable .noLogin{
    text-align: center;
  }

  .responsiveDesignSectionLoginHeader td {
    display: block;
    padding: 20px !important;
  }

  .responsiveDesignSectionLoginHeader div {
    padding: 14px 0;
    text-align: center;
    border-radius: 6px;
    font-size: 14px;
    background: -moz-linear-gradient(
      top,
      #ffffff 0%,
      #ebe8eb);
    background: -webkit-gradient(
      linear, left top, left bottom,
      from(#ffffff),
      to(#ebe8eb));
    border: 1px solid #c0c2c0;
    -moz-box-shadow:
      1px 1px 0px rgba(000,000,000,0.2),
      inset 0px 0px 0px rgba(255,255,255,0.7);
    -webkit-box-shadow:
      1px 1px 0px rgba(000,000,000,0.2),
      inset 0px 0px 0px rgba(255,255,255,0.7);
    box-shadow:
      1px 1px 0px rgba(000,000,000,0.2),
      inset 0px 0px 0px rgba(255,255,255,0.7);
    color: #333;
    width: 98% ;
    margin: 0 auto 8px;
  }

  .responsiveDesignSectionLoginHeader .openIcon{
    width: 12px;
    height: auto;
    margin-right: 6px;
    vertical-align: top;
  }

  #responsiveAmazonLoginButton,
  #responsiveKuronekoLoginButton,
  #responsiveKuronekoLoginButton .loginButtonWrap{
    padding: 0;
    background: none;
    border: 0;
    width: 100%;
    box-shadow: none;
  }

  #loginTable tr.responsiveDesignShow ~ tr.responsiveDesignSectionLoginHeader{
    margin-top: -20px !important;
  }

  #loginTable tr:nth-last-child(2) #responsiveAmazonLoginButton{
    margin-bottom: 0px !important;
  }

  .responsiveDesignSectionLoginHeader + tr > td {
    display: none;
  }

  #loginTable .responsiveDesignLoginButton{
    width: 60%;
    max-width: 60%;
    background: #333;
    color: #fff;
    -webkit-appearance: none;
    border-radius: 6px;
    font-size: 14px;
    padding: 12px !important;
    border : 0;
    margin-bottom: 12px !important;
  }

  .responsiveDesignSectionLoginHeader + tr > .loginWrap{
    display: table-cell;
    padding: 0 !important;
    background: #fff;
  }

  #loginTable .loginWrap{
    padding: 0 !important;
  }

  .point,
  .loginform{
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    box-sizing: border-box;
    background: #fff !important;
  }

  .point,#amazonLg{
    margin-bottom: 20px;
  }

  #loginTable .point td{
    padding: 8px !important;
    box-sizing: border-box;
  }

  .point input[type="text"],
  .point input[type="email"],
  .point input[type="password"]{
    max-width: 94%;
    width: 94%;
  }

  #loginTable .point .keeptxt{
    margin: 8px 0;
  }

  #loginTable .point .responsiveDesignSectionLoginItemHeader th {
    display: block !important;
    width: 100% !important;
    padding: 8px;
    background-color: #eee;
    border: none;
    text-align: left;
    box-sizing: border-box;
  }

  /* クーポン */
  #couponTable input{
	margin-bottom:2px;
  }

  /* Amazon ログイン*/
  #AmazonPayButton,#AmazonPayButton img{
    width:100%;
  }

  #AmazonPayButton img{
    margin-bottom:5px;
  }

  .AmazonLoginWrap {
    border: 1px solid #ccc;
  }
  
  .AmazonAdressWrap .responsiveDesignSectionUserHeaderSide td {
    padding: 12px;  
  }

  /* ログイン後 */
  input[name="shop_point_way_option_val"],
  input[name="gmo_point_way_option_val"]{
    width: 30% !important;
    max-width: 30% !important;
  }

  table#loginTable span.loginId{
    background: none;
  }

  #loginTable .loginWrap li{
    padding: 4px 0;
  }

  /* 定期購入 */
  .repeatSaleConfirmButton {
    display:block;
    border:1px solid #959595;
    border-radius:4px;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#dfdfdf),color-stop(0.03, #fff),color-stop(0.45, #fff),color-stop(0.52, #e7e7e7),to(#fefefe));
    background:-moz-linear-gradient(top,#dfdfdf 0%,#fff 3%,#fff 45%,#e7e7e7 52%,#fefefe 100%);
    color:#333;
    font-size:13px;
    font-weight:bold;
    text-align:center;
    padding:5px;
    margin:10px auto 10px;
    width: 60%;
  }
  .repeatSaleNextButton {
    display:block;
    border:1px solid #959595;
    border-radius:4px;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#dfdfdf),color-stop(0.03, #fff),color-stop(0.45, #fff),color-stop(0.52, #e7e7e7),to(#fefefe));
    background:-moz-linear-gradient(top,#dfdfdf 0%,#fff 3%,#fff 45%,#e7e7e7 52%,#fefefe 100%);
    color:#333;
    font-size:14px;
    font-weight:bold;
    text-align:center;
    padding:5px;
    margin:10px auto 10px;
    width: 100%;
    max-width: 100%;
  }

  /* 注文者情報 */
  .responsiveDesignSectionOrder {
    background-color: #2D79C5;
  }

  .responsiveDesignSectionOrderHeader * {
    color: #fff;
  }

  .responsiveDesignSectionUser {
    background-color: #ccc;
  }

  .responsiveDesignSectionUserHeaderTop {
    background-color: #2D79C5;
  }

  .responsiveDesignSectionUserHeaderTop * {
    color: #fff;
  }

  .responsiveDesignSectionUserHeaderSide {
    background-color: #E3EFFE;
  }

  .responsiveDesignPaymethodText {
    color: #2D79C5;
    font-weight: bold;
    font-size: 13px;
    white-space: nowrap;
    display: block;
  }

  .responsiveDesignDelivery td {
    background-color: #fff;
  }
  
  .responsiveDesignDelivery .responsiveDesignBasketHeader td {
    background-color: #e8e8e8;
  }

  .responsiveDesignDelivery .responsiveDesignBasketHeader td * {
    color: #000;
  }

  /* 返品特約 */
  .responsiveDesignSectionReturnGoods {
    background-color: #fff;
    border-spacing: 0;
    padding: 0;
  }

  /* 注文確定ボタン */
  .responsiveDesignOrderButton {
    display:block;
    border:1px solid #000;
    border-radius:4px;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#595757),color-stop(0.45, #595757),color-stop(0.52, #231815),to(#120c0b));
    background:-moz-linear-gradient(top,#595757 0%,#595757 45%,#231815 52%,#120c0b 100%);
    color:#fff;
    text-shadow: -1px -1px 0px #000;
    font-size:16px;
    font-weight:bold;
    text-align:center;
    padding:10px 0;
    width:95%;
    margin:10px auto 0;
  }

  /* 注文修正ボタン */
  .responsiveDesignModifyButton {
    display:block;
    border:1px solid #959595;
    border-radius:4px;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#dfdfdf),color-stop(0.03, #fff),color-stop(0.45, #fff),color-stop(0.52, #e7e7e7),to(#fefefe));
    background:-moz-linear-gradient(top,#dfdfdf 0%,#fff 3%,#fff 45%,#e7e7e7 52%,#fefefe 100%);
    color:#333;
    font-size:16px;
    font-weight:bold;
    text-align:center;
    padding:3px 0;
    width:60%;
    margin:0 auto 10px;
  }

  /* 決済画面へ進むボタン */
  .responsiveDesignPopupOrderButton{
    display:block;
    border:1px solid #940000;
    border-radius:4px;
    background: #CC0000;
    background: -webkit-gradient(
      linear, left top, left bottom,
      color-stop(0%,#f03a1d),
      color-stop(3%,#f03a1d),
      color-stop(50%,#cc0101),
      color-stop(51%,#c20001),
      color-stop(96%,#ca0000),
      color-stop(100%,#a80a24)
    );/* webkit */
    background: -webkit-linear-gradient(top,#f03a1d 0%, #f03a1d 3%, #cc0101 50%, #c20001 51%, #ca0000 96%, #a80a24 100%);/* webkit */
    background:    -moz-linear-gradient(top,#f03a1d 0%, #f03a1d 3%, #cc0101 50%, #c20001 51%, #ca0000 96%, #a80a24 100%);/* fx */
    text-shadow:0 -1px 0 rgba(0, 0, 0, 0.4);
    color:#fff;
    font-size:16px;
    font-weight:bold;
    text-align:center;
    padding:10px 0;
    width:95%;
    margin:10px auto;
  }

  /* ショップのトップへボタン */
  .responsiveDesignTopButton {
    display:block;
    border:1px solid #959595;
    border-radius:4px;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#dfdfdf),color-stop(0.03, #fff),color-stop(0.45, #fff),color-stop(0.52, #e7e7e7),to(#fefefe));
    background:-moz-linear-gradient(top,#dfdfdf 0%,#fff 3%,#fff 45%,#e7e7e7 52%,#fefefe 100%);
    color:#333;
    font-size:13px;
    font-weight:bold;
    text-align:center;
    padding:3px 0;
    width:60%;
    margin:0 auto 10px;
  }

  .responsiveDesignTopButton:link, .responsiveDesignOrderButton:link, .responsiveDesignPopupOrderButton:link, .responsiveDesignModifyButton:link {
    text-decoration:none;
  }

  /* ポップアップ決済 */
  .responsiveDesignPopupOrderNoticeIcon {
    vertical-align: top;
  }

  .responsiveDesignPopupOrderNoticeIcon img {
    width: 30px;
    height: 30px;
  }

  #popupSettlementBox {
    border: solid 2px #666;
  }

  /* 銀行振り込み */
  #bankinfo {
    width: 100%;
  }

  /* カード決済 */
  .cardTable .cardSelect img {
    width: 50px;
  }

  input.cardTextBox {
    max-width: 90% !important;
	width: 100%;
  }

  .cardTable{
    width:100%;
  }

  .cardTable th{
    background:#eee;
    font-weight:normal;
    text-align:left;
    width:100%;
    padding:4px 0;
  }


  .cardTable td{
    text-align:left;
  }

  .cardTable #inputBg{
    background:#eef5ff;
  }

  .responsiveDesignSectionInput p{
    margin:4px 0 0;
    }
    .responsiveDesignSectionInput .cautionTxt{
        color:#ff0000;
    }

    .responsiveDesignSectionInput .memberidError{
        color:#ff0000;
    }
    .responsiveDesignSectionInput .memberidOk{
        color:#0000cc;
    }

    .cardTable .responsiveDesignSectionUserHeaderSide{
        background:#eee;

    }
    .cardTable .responsiveDesignSectionUserHeaderSide th{

        display:block;
    }

    .cardTable .tableTop th{
        border-top:1px solid #bbb;
    }



  #numberTable{
    width:280px;
    border-collapse:collapse;
    margin:10px 0;
    border-left:1px solid #bbb;
    border-top:1px solid #bbb;
  }

  #numberTable th,#numberTable td{
    padding:5px 7px;
    border-right:1px solid #bbb;
    border-bottom:1px solid #bbb;
  }

  #numberTable th{
    color:#333;
    background:#eee;
    line-height:20px;
  }

  #numberTable td span{
    color:#555;
    font-size:11px;
    line-height:1.4;
  }

  #numberTable select,#numberTable input{
    margin-bottom:5px;
  }

  /* イプシロンコンビニ決済 */
  img.epsionConvenienceImage {
    width: 260px;
  }

  /* キャリア決済 */
  #carrierImg img{
    width:90px;
  }

  /* GMOポイント */
  .tokuPentry {
    width: 100%;
    border-radius: 8px;
    box-shadow: none !important;
  }

  /* ネットスーパー警告文 */
  .alertNetSuper {
    width: 100%;
  }

  /* 複数配送の配送先リスト */
  #deli_list p{
    display: block;
  }

  .deli_list_btns{
    display: block;
  }

  /* 複数配送の商品振り分け */
  div.divideBox {
    height: auto;
  }

  div.divideBox select {
    width: 70px;
    height: 32px;
    margin: 5px 0;
    position: static;
  }

  /* お問い合わせ */
  .contactBox {
    width: 100%;
  }

  /* 商品別決済 */
  .responsiveDesignPaymentMsg{
    width:800;
    text-align:center;
    margin:10px auto 20px;
    padding:10px;
    background:#fff;
    border:3px solid #ff0000;
    background:#FEECEC;
  }

  .responsiveDesignPaymentMsg .paymentMsg p{
    margin:0 0 5px 0;
    padding:0;
    color:#ff0000;
  }

  /* 次へボタン */
  .nextBtnWrap{
    width: 100% !important;
  }

  /* 複数配送対応 */
  .pluralOrder-wrap{
    background: #eee !important;
  }

  .pluralOrder-wrap td{
	padding:10px;
  }

  .pluralOrder-deliTitle{
  	display:table-row !important;
	width:100%;
	background:#777;
	color:#fff;
	font-weight:bold;

  }

  body .pluralOrder-deliTitle td{
	padding:6px 8px;
	box-sizing:border-box;
  }

  .pluralOrder-wrap .pluralOrder-confirmInfo td{
		padding:4px;
  }

  .pluralOrder-total{
	width:100%;
  }

}

@media screen and (max-width:768px) {
  div table,
  table.responsiveDesignSectionInput.amazon_login_hide_item table,
  #loginTable{
    box-shadow: none !important;
    border: 1px solid #ccc;
    border-collapse: collapse;
    background-color: #ccc !important;
  }

  .responsiveDesignSectionOrderHeader,
  .responsiveDesignBasketHeader td,
  table.settlementCompleteMessage td.responsiveDesignSectionOrderHeader,
  .responsiveDesignSectionInputHeader{
    color: #fff;
    background-color: #7f7f7f;
  }

  .responsiveDesignBasketHeader td * {
    color: #fff;
  }

  .responsiveDesignSectionUserHeaderSide {
    background-color: #efefef;
  }

  .responsiveDesignSectionUserHeaderTop {
    background-color: #7f7f7f;
  }

  .responsiveDesignPaymethodText {
    color: #333;
  }

  div table table,
  table.responsiveDesignBasket table,
  table.responsiveDesignSectionOrder,
  div table:not([class]),
  table#note.responsiveDesignSectionInput + table.responsiveDesignSectionInput {
    border: none;
    background: transparent !important;
  }

  .responsiveDesignSectionLoginHeader {
    background: #fff;
  }

  .responsiveDesignSectionLoginHeader div {
    background: #fff;
    border: none;
    box-shadow: none;
  }

  .responsiveDesignSectionLoginHeader div.open {
    padding: 14px 0;
    text-align: center;
    border-radius: 6px;
    font-size: 14px;
    background: -moz-linear-gradient( top, #ffffff 0%, #ebe8eb);
    background: -webkit-gradient( linear, left top, left bottom, from(#ffffff), to(#ebe8eb));
    border: 1px solid #c0c2c0;
    -moz-box-shadow: 1px 1px 0px rgba(000,000,000,0.2), inset 0px 0px 0px rgba(255,255,255,0.7);
  }

  table.responsiveDesignBasket td {
    border: 1px solid #dadada;
  }

  table.totalPriceItems td {
    border: none;
  }

  table.responsiveDesignSectionUser td, table.orderSortTable td {
    border: 1px solid #dadada;
  }

  tr.responsiveDesignShow.responsiveDesignSectionUserHeaderSide td {
    border: none;
  }

  .point, .loginform {
    border: 0;
  }

  .point, #amazonLg {
    margin-bottom: 0;
  }

  input[type="text"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  textarea {
    font-size: 16px !important;
  }

  .responsiveDesignShow.pluralOrder-deliTitle + tr td {
    background: #fff;
  }

  table.responsiveDesignSectionInput + table.responsiveDesignSectionInput[cellspacing="0"]{
    border:none;
  }
  
  .display-flex {
    display: flex;
  }
}

@-moz-document url-prefix() {
  @media screen and (max-width:768px) {
    div table, table.responsiveDesignSectionInput.amazon_login_hide_item table, #loginTable {
      border-collapse: inherit;
      background: #ccc !important;
    }
    table td {
      border: none !important;
    }
    table.responsiveDesignSectionUser td {
      border: none;
    }
    #gpay_card_form table, #gpay_card_form table td {
      border: 1px solid #ccc !important;
    }
    .cardTable th, .cardTable td{
      border:none;
    }
    .responsiveDesignTotalPrice {
      border: 1px solid #ccc;
    }
    .cardTable{
      border: 1px solid #bbb;
    }

    .responsiveDesignBasketFooter .responsiveDesignBasket {
      background: #ccc !important;
    }

    .pluralOrder-wrap {
      border-collapse: inherit !important;
      background: #eee !important;
      padding: 0 !important;
      margin: 10px auto 30px;
      border: 2px solid #ccc;
    }
    .pluralOrder-wrap .pluralOrder-basket td {
      border: 1px solid #ccc !important;
    }
  }
}
