@charset "utf-8";

/*========================================================================================================================


  ショッピングカート

  
========================================================================================================================*/

body {
  background-color:#f8f8f8;
}

@media print,screen and (min-width:641px) {
  .lo {
    max-width:1180px;
    margin-left:auto;
    margin-right:auto;
    padding-left:40px;
    padding-right:40px;
    padding-top:80px;
    padding-bottom:80px;
  }
}

@media screen and (max-width:640px) {
  .lo {
    padding-left:1em;
    padding-right:1em;
    padding-top:2.5em;
    padding-bottom:3em;
  }
}


/*-----------------------------------------------------------------------------------
  logo
-----------------------------------------------------------------------------------*/

.shopLogo {
  line-height:1;
  text-align:center;
}

.shopLogo img[src$=".svg"] {
  height:auto;
}

@media print,screen and (min-width:641px) {
  .shopLogo {
    margin-top:-20px;
    margin-bottom:80px;
  }
  
  .shopLogo img[src$=".svg"] {
    width:280px;
  }
}

@media screen and (max-width:640px) {
  .shopLogo {
    margin-bottom:3.5em;
  }
  
  .shopLogo img[src$=".svg"] {
    width:-webkit-calc(280 / 640 * 100vw);
    width:calc(280 / 640 * 100vw);
    min-width:180px;
  }
}


/*-----------------------------------------------------------------------------------
  STEP
-----------------------------------------------------------------------------------*/

.stepList {
  list-style:none;
  counter-reset:number;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  margin:0 auto;
}

.stepList li {
  width:100%;
  position:relative;
  text-align:center;
  padding:2.5em 0.75em 0 0.75em;
  line-height:1.4;
}

.stepList li > span {
  font-size:0.88em;
  display:block;
  color:#646464;
}

.stepList li:before {
  content:"";
  counter-increment:number;
  content:counter(number);
  background:#646464;
  color:#fff;
  display:inline-block;
  height:2em;
  line-height:2em;
  width:2em;
  border-radius:50%;
  font-weight:bold;
  z-index:2;
  position:absolute;
  left:50%;
  top:0;
  transform:translateX(-50%);
  z-index:2;
}

.stepList li:not(:first-child):after {
  content:"";
  background:#dcdcdc;
  width:-webkit-calc(100% - 1em);
  width:calc(100% - 1em);
  height:2px;
  position:absolute;
  left:-webkit-calc(-50% + 1em);
  left:calc(-50% + 1em);
  top:1em;
}

.stepList li.is-visited > span {
  color:#00af96;
}

.stepList li.is-visited:before {
  background-color:#00af96;
}

.stepList li.is-visited:after {
  background-color:#00af96;
}

@media print,screen and (min-width:641px) {
  .stepList {
    width:70%;
    margin-bottom:80px;
  }
}

@media screen and (max-width:640px) {
  .stepList {
    width:100%;
    margin-bottom:3em;
  }
}


/*----------------------------------------------------------------------------------------------------

  カートの中
  
----------------------------------------------------------------------------------------------------*/

.cart-item-tbl {
  width:100%;
  border:0;
  border-collapse:collapse;
}

.cart-item-tbl th,
.cart-item-tbl td {
  vertical-align:middle;
  line-height:1.4;
}

.cart-item-tbl thead th {
  background-color:#e1e1e1;
  font-weight:normal;
  padding:0.9em 1.1em;
  font-size:0.9em;
}

.cart-item-tbl tbody tr {
  background-color:#fff;
}

.cart-item-tbl th.item,
.cart-item-tbl td.item {
  text-align:left;
}

.cart-item-tbl td .item-cols {
  width:100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
  
.cart-item-tbl td .item-photo {
  padding-right:1em;
}

.cart-item-tbl td .item-photo img {
  min-width:100%;
  height:100%;
  object-fit:cover;
  font-family:'object-fit: cover;';
}

.cart-item-tbl td .item-detail {
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}

.cart-item-tbl td.item ul {
  list-style:none;
  font-size:0.88em;
}

.cart-item-tbl td.item li {
  display:inline-block;
  padding-right:1em;
  padding-top:0.5em;
}

.cart-item-tbl tr.kei .kei_price {
  font-weight:bold;
  text-align:right;
}

.cart-item-tbl .kosu input,
.cart-item-tbl .kosu button {
  vertical-align:middle;
}

.cart-item-tbl .kosu input {
  text-align:center;
  width:3em;
  margin-left:0.25em;
  margin-right:0.25em;
}

.cart-item-tbl .kosu button[disabled],
.cart-item-tbl .kosu button[disabled]:hover {
  background-color:#ccc;
}

.cart-item-tbl .kosu button[disabled] .p-icon[icon="minus"] {
  background-image:url(../image/icon/minus_white.svg);
}

.cart-item-tbl .kosu button[disabled] .p-icon[icon="plus"] {
  background-image:url(../image/icon/plus_white.svg);
}

@media print,screen and (min-width:641px) {
  .cart-item-tbl {
    filter:drop-shadow(0 0 8px rgba(0,0,0,0.04));
  }
  
  .cart-item-tbl tbody tr:not(:first-child) {
    border-top:1px solid #dcdcdc;
  }
  
  .cart-item-tbl td {
    padding:1em;
  }

  .cart-item-tbl th:not(.item),
  .cart-item-tbl td:not(.item) {
    text-align:center;
    white-space:nowrap;
  }
  
  .cart-item-tbl .shoukei,
  .cart-item-tbl tr.kei .kei_price {
    padding-right:1.5em;
  }

  .cart-item-tbl td.shoukei {
    width:5%;
    text-align:right;
  }

  .cart-item-tbl .del {
    width:10%;
  }
  
  .cart-item-tbl .kosu {
    width:15%;
  }
  
  .cart-item-tbl .price {
    width:15%;
  }
  
  .cart-item-tbl td .item-photo {
    width:120px;
    height:80px;
  }

  .cart-item-tbl .kosu .p-btn.is-hide {
    opacity:0;
    pointer-events:none;
  }
}

@media screen and (max-width:640px) {
  .cart-item-tbl thead {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    margin-bottom:1em;
    background-color:#e1e1e1;
    filter:drop-shadow(0 0 8px rgba(0,0,0,0.04));
    padding:0.8em 1em;
    line-height:1.4;
  }
  
  .cart-item-tbl thead th {
    display:none;
  }

  .cart-item-tbl thead:before {
    display:block;
    content:attr(aria-label);
    font-weight:bold;
  }
  
  .cart-item-tbl tbody tr {
    display:block;
    padding-left:4em;
    position:relative;
    margin-bottom:1em;
    border:1px solid #f0f0f0;
    filter:drop-shadow(0 0 8px rgba(0,0,0,0.04));
  }
  
  .cart-item-tbl td.del {
    border-right:1px solid #e6e6e6;
    bottom:0;
    left:0;
    padding:0;
    position:absolute;
    text-align:center;
    top:0;
    width:4em;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
  }
  
  .cart-item-tbl td.del,
  .cart-item-tbl td.kosu,
  .cart-item-tbl td.tanka,
  .cart-item-tbl td.shoukei {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
  }
  
  .cart-item-tbl td.item {
    padding:1em;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
  }
  
  .cart-item-tbl td .item-photo {
    width:-webkit-calc(120 / 640 * 100vw);
    width:calc(120 / 640 * 100vw);
    height:-webkit-calc(80 / 640 * 100vw);
    height:calc(80 / 640 * 100vw);
    min-width:90px;
    min-height:60px;
  }

  .cart-item-tbl td.kosu:before,
  .cart-item-tbl td.tanka:before,
  .cart-item-tbl td.shoukei:before {
    content:attr(aria-label);
    font-weight:bold;
    font-size:0.9em;
    white-space:nowrap;
    padding-right:0.75em;
    text-align:left;
  }

  .cart-item-tbl td.kosu,
  .cart-item-tbl td.tanka,
  .cart-item-tbl td.shoukei {
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    padding:0.75em 1em;
    border-top:1px solid #e6e6e6;
  }

  .cart-item-tbl td.kosu div,
  .cart-item-tbl td.tanka div,
  .cart-item-tbl td.shoukei div {
    -webkit-box-flex:1;
    -ms-flex:1;
    flex:1;
    word-break:break-all;
    text-align:right;
  }
  
  .cart-item-tbl tr.kei {
    width:100%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    padding:1em;
  }
  
  .cart-item-tbl tr.kei td:first-child {
    padding-right:1em;
  }

  .cart-item-tbl .kosu .p-btn.is-hide {
    display:none;
  }
}


/*-----------------------------------------------------------------------------------
  注記
-----------------------------------------------------------------------------------*/

.cart-atList {
  font-size:0.95em;
  line-height:1.4;
}

.cart-atList li:not(:first-child) {
  padding-top:0.5em;
}

@media print,screen and (min-width:641px) {
  .cart-atList {
    margin-top:1.5em;
  }
}

@media screen and (max-width:640px) {
  .cart-atList {
    margin-top:0.5em;
  }
}


/*-----------------------------------------------------------------------------------
  ボタン
-----------------------------------------------------------------------------------*/

.cart-btns {
  width:100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin-top:3em;
}

.cart-btns--gp {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
  
.cart-btns--gp {
  margin-left:-1em;
}

.cart-btns--gp div,
.cart-btns--gp form {
  padding-left:1em;
}

@media print,screen and (min-width:641px) {
  .cart-btn__next {
    margin-left:auto;
    -webkit-box-ordinal-group:2;
    -ms-flex-order:1;
    order:1;
  }
  
  .cart-btn__next .p-btn {
    min-width:240px;
  }
}

@media screen and (max-width:640px) {
  .cart-btns {
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    text-align:center;
  }
  
  .cart-btn__next .p-btn {
    width:100%;
    max-width:360px;
  }
  
  .cart-btns--gp {
    padding-top:1.5em;
  }

  .cart-btns--gp div,
  .cart-btns--gp form {
    width:50%;
  }
  
  .cart-btns--gp .p-btn {
    width:100%;
  }
}


/*-----------------------------------------------------------------------------------
  カート空
-----------------------------------------------------------------------------------*/

.cart-empty {
  text-align:center;
}

.cart-empty p,
.cart-empty .btn {
  width:100%;
}

@media print,screen and (min-width:641px) {
  .cart-empty p {
    padding-bottom:60px;
  }
}

@media screen and (max-width:640px) {
  .cart-empty p {
    padding-bottom:3em;
  }
}


/*----------------------------------------------------------------------------------------------------

  注文・確認ページ　商品一覧
  
----------------------------------------------------------------------------------------------------*/

.odr-item-tbl {
  width:100%;
  border:0;
  border-collapse:collapse;
}

.odr-item-tbl th,
.odr-item-tbl td {
  vertical-align:middle;
  line-height:1.4;
}

.odr-item-tbl thead th {
  background-color:#e1e1e1;
  font-weight:normal;
  padding:0.9em 1.1em;
  font-size:0.9em;
}

.odr-item-tbl tbody tr,
.odr-item-tbl tfoot tr {
  background-color:#fff;
}

.odr-item-tbl th.item,
.odr-item-tbl td.item {
  text-align:left;
}

.odr-item-tbl td.item ul {
  list-style:none;
  font-size:0.88em;
}

.odr-item-tbl td.item li {
  display:inline-block;
  padding-right:1em;
  padding-top:0.5em;
}

.odr-item-tbl tr.skei .kei_price,
.odr-item-tbl tr.kei .kei_price {
  font-weight:bold;
  text-align:right;
}

@media print,screen and (min-width:641px) {
  .odr-item-tbl {
    filter:drop-shadow(0 0 8px rgba(0,0,0,0.04));
  }
  
  .odr-item-tbl tbody tr:not(:first-child) {
    border-top:1px solid #e6e6e6;
  }
  
  .odr-item-tbl tfoot tr.skei {
    border-top:1px solid #e6e6e6;
  }
  
  .odr-item-tbl tfoot tr.kei {
    border-top:1px solid #dcdcdc;
    position:relative;
  }
  
  .odr-item-tbl tfoot tr.kei:after {
    content:"";
    display:block;
    width:100%;
    border-top:1px solid #dcdcdc;
    position:absolute;
    left:0;
    top:2px;
  }
  
  .odr-item-tbl td {
    padding:1em;
  }

  .odr-item-tbl th:not(.item),
  .odr-item-tbl td:not(.item) {
    width:10%;
    text-align:center;
    white-space:nowrap;
  }
  
  .odr-item-tbl .shoukei,
  .odr-item-tbl tr.skei .kei_price,
  .odr-item-tbl tr.kei .kei_price {
    padding-right:1.5em;
  }

  .odr-item-tbl td.shoukei {
    width:5%;
    text-align:right;
  }
}

@media screen and (max-width:640px) {
  .odr-item-tbl thead th {
    display:none;
  }
  
  .odr-item-tbl thead {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    margin-bottom:1em;
    background-color:#e1e1e1;
    filter:drop-shadow(0 0 8px rgba(0,0,0,0.04));
    padding:0.8em 1em;
    line-height:1.4;
  }

  .odr-item-tbl thead:before {
    display:block;
    content:attr(aria-label);
    font-weight:bold;
  }
  
  .odr-item-tbl tbody tr,
  .odr-item-tbl tfoot {
    margin-bottom:1em;
    border:1px solid #f0f0f0;
    filter:drop-shadow(0 0 8px rgba(0,0,0,0.04));
  }
  
  .odr-item-tbl tbody tr,
  .odr-item-tbl tfoot {
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
  }
  
  .odr-item-tbl tfoot tr:not(:first-child) {
    border-top:1px solid #e6e6e6;
  }
  
  .odr-item-tbl tfoot tr.kei:not(:first-child) {
    border-top:1px solid #dcdcdc;
    position:relative;
  }
  
  .odr-item-tbl tfoot tr.kei:not(:first-child):after {
    content:"";
    display:block;
    width:100%;
    border-top:1px solid #dcdcdc;
    position:absolute;
    left:0;
    top:2px;
  }
  
  .odr-item-tbl tbody td.item {
    width:100%;
    padding:1em;
  }
  
  .odr-item-tbl tbody td:not(.item) {
    width:50%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    padding:0.75em 1em;
    border-top:1px solid #e6e6e6;
  }
  
  .odr-item-tbl td.kosu {
    border-left:1px solid #e6e6e6;
  }

  .odr-item-tbl td.tanka div,
  .odr-item-tbl td.kosu div {
    -webkit-box-flex:1;
    -ms-flex:1;
    flex:1;
    word-break:break-all;
    text-align:right;
  }

  .odr-item-tbl tbody td:not(.item):before {
    content:attr(aria-label);
    font-weight:bold;
    font-size:0.9em;
    white-space:nowrap;
    padding-right:0.75em;
    text-align:left;
  }
  
  .odr-item-tbl td.shoukei {
    width:100% !important;
  }
  
  .odr-item-tbl td.shoukei:before {
    -webkit-box-flex:1;
    -ms-flex:1;
    flex:1;
    text-align:right !important;
  }
  
  .odr-item-tbl td.shoukei div {
    word-break:break-all;
    text-align:right;
    min-width:-webkit-calc(50% - 3.6em);
    min-width:calc(50% - 3.6em);
  }
  
  .odr-item-tbl tr.skei,
  .odr-item-tbl tr.kei {
    width:100%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    padding:1em;
  }
  
  .odr-item-tbl tr.skei td:first-child,
  .odr-item-tbl tr.kei td:first-child {
    padding-right:1em;
  }
  
  .odr-item-tbl tr.skei td,
  .odr-item-tbl tr.kei td {
    width:auto;
  }
  
  .odr-item-tbl tr.skei .kei_price {
    min-width:5em;
  }
}


/*----------------------------------------------------------------------------------------------------

  注文情報入力
  
----------------------------------------------------------------------------------------------------*/

.odr-sbj {
  border-bottom:1px solid #646464;
  line-height:1.4;
  padding-bottom:0.75em;
}

@media print,screen and (min-width:641px) {
  .odr-sbj {
    padding-top:80px;
  }
}

@media screen and (max-width:640px) {
  .odr-sbj {
    padding-top:2.5em;
  }
}


/*-----------------------------------------------------------------------------------
  お客様情報
-----------------------------------------------------------------------------------*/

.odr-step1-tbl {
  width:100%;
  border-collapse:collapse;
}

.odr-step1-tbl th,
.odr-step1-tbl td {
  text-align:left;
}

.odr-step1-tbl .ex-r,
.odr-step1-tbl .ex-b {
  color:#787878;
  font-size:0.88em;
  display:inline-block;
}

.odr-step1-tbl .ex-b { display:block; padding-top:0.5em; }

.odr-step1-tbl input[type="text"] {
  margin-right:1em;
}

.odr-step1-tbl input[type="radio"] {
  vertical-align:middle;
}

.odr-step1-otodoke {
  padding-top:1.5em;
}

@media print,screen and (min-width:641px) {
  .odr-step1-tbl--1 {
    margin-top:1em;
  }
  
  .odr-step1-tbl th,
  .odr-step1-tbl td {
    padding-top:1.5em;
  }

  .odr-step1-tbl th {
    width:20%;
    white-space:nowrap;
    position:relative;
  }
  
  .odr-step1-tbl th .p-fm-label {
    position:absolute;
    right:0;
    top:2.2em;
  }

  .odr-step1-tbl td {
    padding-left:1em;
  }

  .odr-step1-tbl .ip-err .err-msg {
    padding-top:0.35em;
  }
}

@media screen and (max-width:640px) {
  .odr-step1-tbl--1 {
    margin-top:0.5em;
  }
  
  .odr-step1-tbl th,
  .odr-step1-tbl td {
    display:block;
    width:100%;
  }
  
  .odr-step1-tbl th {
    padding-top:1.5em;
  }
  
  .odr-step1-tbl th .p-fm-label {
    margin-left:1em;
  }
  
  .odr-step1-tbl td {
    padding-top:0.5em;
  }
}

/* お届け先 */
.odr-step1-otodokefm {
  padding-top:3em;
}

@media screen and (max-width:640px) {
  .odr-step1-otodokefm {
    padding-top:2em;
  }
}

.odr-step1-otodokefm:first-of-type {
  padding-top:1.5em;
}

.odr-step1-otodoke-sbj {
  background-color:#646464;
  color:#fff;
  line-height:1;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin-bottom:0.5em;
}

.odr-step1-otodoke-sbj .delBtn {
  margin-left:auto;
  cursor:pointer;
  font-weight:normal;
}

.odr-step1-otodoke-sbj .delBtn .p-icon,
.odr-step1-otodokeBtn .p-icon {
  margin-right:0.5em;
}

.odr-step1-otodokeBtn {
  padding-top:2em;
}

@media print,screen and (min-width:641px) {
  .odr-step1-otodoke-sbj {
    padding:1em;
  }
}

@media screen and (max-width:640px) {
  .odr-step1-otodoke-sbj {
    padding:0.75em;
  }
}

/*-----------------------------------------------------------------------------------
  商品振り分け
-----------------------------------------------------------------------------------*/

.odr-step1-item {
  padding-top:1.5em;
}

.odr-step1-item .err-msg:first-of-type {
  padding-top:1em;
}

.odr-step1-item .err-msg:first-of-type {
  padding-bottom:0;
}

.odr-step1-item-tbl {
  width:100%;
  border:0;
  border-collapse:collapse;
  margin-top:0.5em;
}

.odr-step1-item-tbl tbody tr:not(:first-child) {
  border-top:1px solid #e6e6e6;
}

.odr-step1-item-tbl th,
.odr-step1-item-tbl td {
  vertical-align:middle;
  line-height:1.4;
}

.odr-step1-item-tbl thead th,
.odr-step1-item-tbl thead td {
  background-color:#e1e1e1;
  font-weight:normal;
  font-size:0.9em;
}

.odr-step1-item-tbl thead th {
  text-align:left;
}

.odr-step1-item-tbl thead th,
.odr-step1-item-tbl thead td {
  white-space:nowrap;
}

.odr-step1-item-tbl tbody th {
  font-weight:normal;
  text-align:left;
  width:80%;
}

.odr-step1-item-tbl td {
  text-align:center;
  white-space:nowrap;
}

.odr-step1-item-tbl tbody tr,
.odr-step1-item-tbl tfoot tr {
  background-color:#fff;
}

@media print,screen and (min-width:641px) {
  .odr-step1-item-tbl thead th,
  .odr-step1-item-tbl thead td {
    padding:0.9em 1.1em;
  }
  
  .odr-step1-item-tbl tbody th,
  .odr-step1-item-tbl tbody td {
    padding:0.75em 1em;
  }
}

@media screen and (max-width:640px) {
  .odr-step1-item-tbl thead th,
  .odr-step1-item-tbl thead td {
    padding:0.8em 1em;
  }
  
  .odr-step1-item-tbl tbody th,
  .odr-step1-item-tbl tbody td {
    padding:0.75em 0.9em;
  }
}


/*-----------------------------------------------------------------------------------
  お支払い方法
-----------------------------------------------------------------------------------*/

.odr-step1-shiharai {
  padding-top:1.5em;
}

.odr-step1-shiharai .pay {
  background-color:#fff;
}

.odr-step1-shiharai .pay__ttl {
  line-height:1.2;
}

.odr-step1-shiharai .pay__ttl label {
  display:block;
  padding:1em;
  cursor:pointer;
  background-color:#e1e1e1;
}

.odr-step1-shiharai .pay__ttl label.is-active {
  background-color:#b2e7df;
}

.odr-step1-shiharai .pay__ttl input[type="radio"] {
  margin-right:0.5em;
  vertical-align:middle;
}

.odr-step1-shiharai .pay__list dt {
  font-weight:bold;
  padding-top:1.5em;
  padding-bottom:0.5em;
}

.odr-step1-shiharai .pay__list .pay-logo {
  list-style:none;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  margin-left:-0.75em;
}

.odr-step1-shiharai .pay__list .pay-logo li {
  margin-left:1em;
  margin-bottom:0.75em;
}

.odr-step1-shiharai .pay__list .pay-atList {
  line-height:1.4;
  margin-left:1.5em;
  font-size:0.8em;
}

.odr-step1-shiharai .pay__list .pay-atList li {
  padding-top:0.25em;
}

.odr-step1-shiharai .ip-err .err-msg {
  padding-top:0.5em;
}

@media print,screen and (min-width:641px) {
  .odr-step1-shiharai .pay {
    margin-top:2em;
  }

  .odr-step1-shiharai .pay:first-of-type {
    margin-top:1.5em;
  }

  .odr-step1-shiharai .pay__body {
    padding:1.5em;
  }

  .odr-step1-shiharai .pay__list .pay-logo img {
    height:2em;
  }
}

@media screen and (max-width:640px) {
  .odr-step1-shiharai .pay {
    margin-top:1.5em;
  }

  .odr-step1-shiharai .pay__body {
    padding:1em;
  }

  .odr-step1-shiharai .pay__list .pay-logo img {
    height:1.5em;
  }
}


/*-----------------------------------------------------------------------------------
  お届け希望日
-----------------------------------------------------------------------------------*/

.odr-step1-kiboubi {
  padding-top:1.5em;
}

.odr-step1-kiboubi select {
  margin-top:1.5em;
}

.odr-step1-kiboubi .timeList {
  list-style:none;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  margin-left:-1.5em;
  padding-top:1em;
}

.odr-step1-kiboubi .timeList li {
  margin-left:1.5em;
  margin-top:0.5em;
}

.odr-step1-kiboubi .timeList li label {
  cursor:pointer;
}

.odr-step1-kiboubi .timeList li input {
  margin-right:0.25em;
}

.odr-step1-kiboubi .timeList li input[type="radio"] {
  vertical-align:middle;
}


/*-----------------------------------------------------------------------------------
  備考
-----------------------------------------------------------------------------------*/

.odr-step1-bikou {
  padding-top:1.5em;
}

.odr-step1-bikou .fm-bikou {
  margin-top:1.5em;
}


/*-----------------------------------------------------------------------------------
  ボタン
-----------------------------------------------------------------------------------*/

.odr-step1-btn {
  width:100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  margin-top:3em;
}

@media print,screen and (min-width:641px) {
  .odr-step1-btn .p-btn {
    min-width:240px;
  }
}

@media screen and (max-width:640px) {
  .odr-step1-btn .p-btn {
    width:100%;
    max-width:360px;
  }
}


/*----------------------------------------------------------------------------------------------------

  注文内容確認
  
----------------------------------------------------------------------------------------------------*/

.odr-step2-tbl {
  width:100%;
  border-collapse:collapse;
}

.odr-step2-tbl th,
.odr-step2-tbl td {
  text-align:left;
  line-height:1.4;
  vertical-align:middle;
}

.odr-step2-tbl thead {
  position:relative;
}

.odr-step2-tbl thead:after {
  content:"";
  display:block;
  width:100%;
  height:0.5em;
}

.odr-step2-tbl thead th {
  padding:0.65em 0.75em;
  font-size:1.1em;
  background-color:#646464;
  color:#fff;
}

.odr-step2-tbl tbody th,
.odr-step2-tbl tbody td {
  border:1px solid #c8c8c8;
}

.odr-step2-tbl tbody th {
  min-width:6em;
  background-color:#ebebeb;
  vertical-align:top;
}

.odr-step2-tbl tbody td {
  background-color:#fff;
}

.odr-step2-tbl tbody td.item {
  border-bottom:1px dotted #a0a0a0;
}

.odr-step2-tbl tbody td.kei {
  border-top:1px dotted #a0a0a0;
}

@media print,screen and (min-width:641px) {
  .odr-step2-tbl {
    margin-top:2.5em;
  }
  
  .odr-step2-tbl--1 {
    margin-top:60px;
  }
  
  .odr-step2-tbl tbody th,
  .odr-step2-tbl tbody td {
    padding:1em;
  }

  .odr-step2-tbl tbody th {
    width:20%;
    white-space:nowrap;
  }
}

@media screen and (max-width:640px) {
  .odr-step2-tbl {
    margin-top:2em;
  }
  
  .odr-step2-tbl tbody th,
  .odr-step2-tbl tbody td {
    padding:0.75em;
  }
  
  .odr-step2-tbl tbody th {
    width:25%;
  }
}


/*-----------------------------------------------------------------------------------
  ボタン
-----------------------------------------------------------------------------------*/

.odr-step2-btns {
  margin-top:3em;
}

.odr-step2-btns form {
  width:100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
}

@media print,screen and (min-width:641px) {
  .odr-step2-btns .p-btn {
    min-width:240px;
  }
  
  .odr-step2-btns__back {
    padding-right:0.5em;
  }
  
  .odr-step2-btns__next {
    padding-left:0.5em;
  }
}

@media screen and (max-width:640px) {
  .odr-step2-btns form {
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    text-align:center;
  }
  
  .odr-step2-btns .p-btn {
    max-width:360px;
  }
  
  .odr-step2-btns .p-btn,
  .odr-step2-btns__back,
  .odr-step2-btns__next {
    width:100%;
  }
  
  .odr-step2-btns__back {
    -webkit-box-ordinal-group:2;
    -ms-flex-order:1;
    order:1;
    padding-top:1.5em;
  }
}


/*----------------------------------------------------------------------------------------------------

  完了
  
----------------------------------------------------------------------------------------------------*/

.odr-step3 {
  text-align:center;
}

@media print,screen and (min-width:641px) {
  .odr-step3 .msg {
    padding-bottom:2.5em;
  }
  
  .odr-step3 textarea {
    max-width:1000px;
    height:600px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:2.5em;
  }
}

@media screen and (max-width:640px) {
  .odr-step3 .msg {
    padding-bottom:2em;
  }
  
  .odr-step3 .msg:not(:first-of-type) {
    text-align:left;
  }
  
  .odr-step3 textarea {
    height:400px;
    margin-bottom:2em;
  }
}


/*-----------------------------------------------------------------------------------
  Webコレクト
-----------------------------------------------------------------------------------*/

.odr-step3 .yamato-wc {
  background-color:#ffe8e5;
}

.odr-step3 .yamato-wc ul {
  text-align:left;
}

.odr-step3 .yamato-wc form {
  padding-top:1.75em;
  padding-bottom:1.75em;
}

@media print,screen and (min-width:641px) {
  .odr-step3 .yamato-wc {
    display:inline-block;
    min-width:800px;
    margin-left:auto;
    margin-right:auto;
    padding:2em 2.5em;
    margin-bottom:2.5em;
  }

  .odr-step3 .yamato-wc-logo {
    height:2.25em;
    margin-top:1em;
    margin-bottom:2em;
  }
}

@media screen and (max-width:640px) {
  .odr-step3 .yamato-wc {
    padding:2em 1.5em;
    margin-bottom:2em;
  }

  .odr-step3 .yamato-wc-logo {
    height:2em;
    margin-top:0.5em;
    margin-bottom:1.5em;
  }
}


/*========================================================================================================================


  Parts

  
========================================================================================================================*/

/*----------------------------------------------------------------------------------------------------

  List
  
----------------------------------------------------------------------------------------------------*/

.p-list--in {
  margin-left:1.25em;
}


/*-----------------------------------------------------------------------------------
  マーク
-----------------------------------------------------------------------------------*/

.p-list--mk {
  list-style:none;
  line-height:1.4;
}

.p-list--mk li {
  padding-left:1.25em;
}

.p-list--mk li:not(:first-child) {
  padding-top:0.25em;
}

.p-list--mk li:before {
  margin-left:-1.25em;
  margin-right:0.25em;
  display:inline-block;
}

.p-list--mk[list-mk="maru"] li:before {
  content:"●";
  font-size:0.8em;
}

.p-list--mk[list-mk="at"] li:before {
  content:"※";
}

.p-list--mk[list-mk="dot"] li:before {
  content:"・";
}


/*----------------------------------------------------------------------------------------------------

  Button
  
----------------------------------------------------------------------------------------------------*/

.p-btn {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  display:inline-block;
  vertical-align:middle;
  border:none;
  margin:0;
  outline:none;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
  line-height:1.4;
  font-weight:400;
  position:relative;
  overflow:hidden;
  padding:0.75em 1.5em;
  border-radius:3px;
  filter:drop-shadow(1px 1px 1px rgba(0,0,0,0.04));
}

.p-btn[btn-size="M"] { padding:0.65em 1em; }
.p-btn[btn-size="S"] { padding:0.25em 0.5em; }

@media screen and (max-width:640px) {
  .p-btn { padding:0.75em 1em; }
}

.p-btn,
.p-btn:visited,
.p-btn:hover,
.ua-pc .p-btn:hover,
.p-btn a,
.p-btn a:visited,
.p-btn a:hover,
.ua-pc .p-btn a:hover { color:inherit; text-decoration:none !important; }

.ua-pc .p-btn {
  transition:border 0.15s ease-out, background 0.15s ease-out, color 0.15s ease-out;
}


/*-----------------------------------------------------------------------------------
  Color
-----------------------------------------------------------------------------------*/

/* デフォルト
----------------------------------------------------------------------*/

.p-btn,
.p-btn:visited,
.p-btn:hover,
.p-btn a,
.p-btn a:visited,
.p-btn a:hover {
  color:#fff;
  background-color:#a0a0a0;
  border:1px solid #a0a0a0;
}

.ua-pc .p-btn:hover,
.ua-pc .p-btn a:hover {
  color:#fff;
  background-color:#afafaf;
  border:1px solid #afafaf;
}


/* 白
----------------------------------------------------------------------*/

.p-btn[btn-color="white"],
.p-btn[btn-color="white"]:visited,
.p-btn[btn-color="white"]:hover,
.p-btn[btn-color="white"] a,
.p-btn[btn-color="white"] a:visited,
.p-btn[btn-color="white"] a:hover {
  color:#1e1e1e;
  background-color:#f5f5f5;
  border:1px solid #bebebe;
}

.ua-pc .p-btn[btn-color="white"]:hover,
.ua-pc .p-btn[btn-color="white"] a:hover {
  color:#1e1e1e;
  background-color:#fff;
  border:1px solid #bebebe;
}


/* 赤
----------------------------------------------------------------------*/

.p-btn[btn-color="red"],
.p-btn[btn-color="red"]:visited,
.p-btn[btn-color="red"]:hover,
.p-btn[btn-color="red"] a,
.p-btn[btn-color="red"] a:visited,
.p-btn[btn-color="red"] a:hover {
  color:#fff;
  background-color:#e64632;
  border:1px solid #e64632;
}

.ua-pc .p-btn[btn-color="red"]:hover,
.ua-pc .p-btn[btn-color="red"] a:hover {
  color:#fff;
  background-color:#fd5c48;
  border:1px solid #fd5c48;
}


/* 緑
----------------------------------------------------------------------*/

.p-btn[btn-color="green"],
.p-btn[btn-color="green"]:visited,
.p-btn[btn-color="green"]:hover,
.p-btn[btn-color="green"] a,
.p-btn[btn-color="green"] a:visited,
.p-btn[btn-color="green"] a:hover {
  color:#fff;
  background-color:#00af96;
  border:1px solid #00af96;
}

.ua-pc .p-btn[btn-color="green"]:hover,
.ua-pc .p-btn[btn-color="green"] a:hover {
  color:#fff;
  background-color:#15c6ad;
  border:1px solid #15c6ad;
}


/* オレンジ
----------------------------------------------------------------------*/

.p-btn[btn-color="orange"],
.p-btn[btn-color="orange"]:visited,
.p-btn[btn-color="orange"]:hover,
.p-btn[btn-color="orange"] a,
.p-btn[btn-color="orange"] a:visited,
.p-btn[btn-color="orange"] a:hover {
  color:#fff;
  background-color:#f5a028;
  border:1px solid #f5a028;
}

.ua-pc .p-btn[btn-color="orange"]:hover,
.ua-pc .p-btn[btn-color="orange"] a:hover {
  color:#fff;
  background-color:#ffb33a;
  border:1px solid #ffb33a;
}


/*----------------------------------------------------------------------------------------------------

  Icon
  
----------------------------------------------------------------------------------------------------*/

.p-icon {
  display:inline-block;
  background-position:center center;
  background-repeat:no-repeat;
  background-size:contain;
  vertical-align:middle;
  margin-bottom:0.2em;
}

/* プラス */
.p-icon[icon="plus"] {
  width:0.75em;
  height:0.75em;
  background-image:url(../image/icon/plus.svg);
}

/* マイナス */
.p-icon[icon="minus"] {
  width:0.75em;
  height:0.75em;
  background-image:url(../image/icon/minus.svg);
}

/* クロス */
.p-icon[icon="cross"] {
  width:0.75em;
  height:0.75em;
  background-image:url(../image/icon/cross.svg);
}

/* 送料 */
.p-icon[icon="track"] {
  width:1.2em;
  height:1em;
  background-image:url(../image/icon/track.svg);
}

/* クール便 */
.p-icon[icon="cool"] {
  width:1.2em;
  height:1em;
  background-image:url(../image/icon/cool.svg);
}

/* 削除 */
.p-icon[icon="delR"] {
  width:1em;
  height:1em;
  background-image:url(../image/icon/delR_black.svg);
}

/* プラス（●） */
.p-icon[icon="plusR"] {
  width:1em;
  height:1em;
  background-image:url(../image/icon/plusR_orange.svg);
}


/*-----------------------------------------------------------------------------------
  送料・クール便
-----------------------------------------------------------------------------------*/

.p-souryou,
.p-cool {
  font-size:0.88em;
  display:inline-block;
  line-height:1.2;
}

.p-souryou .p-icon { margin-right:0.5rem; }
.p-cool .p-icon { margin-right:0.25rem; }

.p-souryou { color:#00af96; }
.p-cool { color:#23a5d7; }


/*-----------------------------------------------------------------------------------
  任意・必須
-----------------------------------------------------------------------------------*/

.p-fm-label {
  display:inline-block;
  color:#fff;
  padding:0.4em 0.5em;
  vertical-align:middle;
  font-size:0.77em;
  font-weight:normal;
  line-height:1.2;
}

.p-fm-label--req { background-color:#e64632; }
.p-fm-label--opt { background-color:#b4b4b4; }

