@charset "UTF-8";
/* reset
----------------------------------------------- */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.8;
  vertical-align: baseline;
  background: transparent;
}

html {
  font-size: 62.5%;
}

body {
  color: #313131;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1;
      -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 768px) {
  body {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

span {
  font-size: inherit;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
  display: block;
}

ul {
  list-style: none;
}

blockquote,q {
  quotes: none;
}

blockquote:before,blockquote:after,q:before,q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

a:link,a:visited {
  text-decoration: none;
}

a {
  color: inherit;
}

img {
  vertical-align: middle;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

ins {
  background-color: #ffff99;
  color: #000000;
  text-decoration: none;
}

mark {
  background-color: #ffff99;
  color: #000000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,select {
  vertical-align: middle;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,*:before,*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

/* base
----------------------------------------------- */
.cf:before,.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

.cf {
  overflow: hidden;
}

.txt-cap {
  padding-left: 1em;
  text-indent: -1em;
}

.cursor,label {
  cursor: pointer;
}

input[type="text"],input[type="password"],input[type="email"],input[type="tel"],input[type="number"],select,textarea {
  width: 100%;
  padding: 15px;
  font-size: 13px;
  font-size: 1.3rem;
  border: solid 1px #cccccc;
  background-color: #ffffff;
  border-radius: 5px;
  line-height: 1;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
}

input[type="text"]:invalid {
  -webkit-box-shadow: none;
          box-shadow: none;
}

textarea {
  height: 30vw;
  max-height: 300px;
}

input[type="submit"] {
  width: 100%;
  border: none;
  -webkit-appearance: none;
  cursor: pointer;
}

/* layout
----------------------------------------------- */
@media screen and (min-width: 769px) {
  .l-wrapper {
    position: relative;
    width: calc(100% - 260px);
    padding: 0;
    left: 260px;
  }
}

@media screen and (min-width: 1030px) {
  body.fsOrderPage .l-wrapper {
    width: calc(100% - 520px);
    left: 520px;
  }
}

.l-content {
  padding: 7% 0 0;
}

body#page_product_detail .l-content {
  padding: 3% 0 0;
}

@media screen and (min-width: 769px) {
  .l-content {
    padding: 70px 0 0 !important;
  }
}

.l-sectionInner {
  padding: 0 5%;
}

.l-main_head {
  padding: 0 5% 8%;
}

@media screen and (min-width: 1030px) {
  .l-main_head {
    padding: 0 50px 70px;
  }
}

@media screen and (min-width: 1030px) {
  body#page_product_list .l-main_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

/* header
----------------------------------------------- */
@media screen and (min-width: 769px) {
  .l-header {
    display: block;
    width: 260px;
    height: 100vh;
    padding: 0;
    position: fixed;
    left: 0;
    top: 0;
    border-right: solid 1px #e5e5e5;
    overflow: hidden;
  }
}

.l-header_inner {
  width: 95%;
  height: 100vh;
  padding: 0 0 40px;
  z-index: 2000;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: right cubic-bezier(.165, .84, .44, 1) .5s;
          transition: right cubic-bezier(.165, .84, .44, 1) .5s;
}

@media screen and (max-width: 768px) {
  .l-header_inner {
    display: none;
    position: fixed;
    top: 20px;
    left: 0;
    right: 0;
    margin: auto;
    border-radius: 20px;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
            box-shadow: 0 0 20px rgba(0, 0, 0, .2);
    z-index: 1000;
    background-color: #ffffff;
  }
}

@media screen and (min-width: 769px) {
  .l-header_inner {
    display: block !important;
    width: 100%;
    padding: 0 17px 0 0;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    position: static;
  }
}

.l-header_blc {
  padding: 0 8%;
}

@media screen and (min-width: 769px) {
  .l-header_blc {
    width: 260px;
    padding: 0 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.l-header-logo {
  margin: 0 0 20px;
  padding: 5% 0 0;
  text-align: center;
}

.l-header-logo img {
  width: 110px;
}

@media screen and (min-width: 769px) {
  .l-header-logo img {
    width: 135px;
  }
}

@media screen and (min-width: 769px) {
  .l-header-logo {
    padding: 20px 0 0;
  }
}

.l-header_blc .c-cartnav {
  margin: 0 0 10px;
}

.l-header_blc .c-searchBox {
  margin: 0 0 10px;
}

.l-header_blc .p-categoryNav {
  margin: 0 0 30px;
}

.l-header_blc .l-header_nav_list {
  padding: 0 0 100px;
}

@media screen and (min-width: 769px) {
  .l-header_blc .l-header_nav_list {
    padding: 0 0 50px;
  }
}

.l-header_listBtn {
  margin: 0 0 20px;
}

.l-header-bnrs {
  margin: 0 0 20px;
}

.l-header_nav_list {
  text-align: center;
}

.l-header_nav_item {
  margin: 0 0 18px;
  line-height: 1;
}

@media screen and (min-width: 769px) {
  .l-header_nav_item {
    margin: 0 0 15px;
  }
}

.l-header_nav_item a {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: inherit;
}

@media screen and (min-width: 769px) {
  .l-header_nav_item a {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.l-header_spHead {
  padding: 20px 5%;
}

@media screen and (min-width: 769px) {
  .l-header_spHead {
    display: none;
  }
}

.l-header_spCart {
  position: fixed;
  bottom: 30px;
  left: 8%;
  z-index: 999;
}

.l-header_spCart .c-cartnav {
  border: none;
  padding: 0;
}

.l-header_spCart .c-cartnav_price {
  display: none;
}

.l-header_spCart a {
  display: block;
  padding: 8px 15px;
  background-color: #ffffff;
  border-radius: 100px;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .15);
          box-shadow: 0 0 20px rgba(0, 0, 0, .15);
}

@media screen and (min-width: 769px) {
  .l-header_spCart {
    display: none;
  }
}

.ovarlay {
  display: none;
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, .8);
}

@media screen and (min-width: 769px) {
  .ovarlay {
    display: none !important;
  }
}

/* footer
----------------------------------------------- */
.l-footer {
  margin: 10% 0 0;
}

@media screen and (min-width: 1030px) {
  .l-footer {
    margin: 100px 0 0;
  }
}

.l-footer_content {
  background-color: #f5f7f8;
}

@media screen and (max-width: 1030px) {
  .l-footer_content {
    margin: -50vw 0 0;
    padding: 50vw 5% 100px;
  }
}

@media screen and (max-width: 500px) {
  .l-footer_content {
    margin: -80vw 0 0;
    padding: 80vw 5% 100px;
  }
}

@media screen and (min-width: 1030px) {
  .l-footer_content {
    margin: -200px 0 0;
    padding: 270px 5% 150px;
  }
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .l-footer_content_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 930px;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .l-footer_content_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 930px;
  }
}

@media screen and (max-width: 1030px) {
  .l-footer_companyInfoArea {
    padding: 0 3%;
    margin: 0 0 25px;
  }
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .l-footer_companyInfoArea {
    padding: 0 3%;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .l-footer_companyInfoArea {
    padding: 0 3%;
  }
}

.l-footer_logo {
  width: 200px;
  margin: 0 0 10px;
}

@media screen and (min-width: 1030px) {
  .l-footer_logo {
    width: 291px;
  }
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .l-footer_companyInfoArea_list {
    padding: 0 0 0 63px;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .l-footer_companyInfoArea_list {
    padding: 0 0 0 63px;
  }
}

@media screen and (min-width: 1030px) {
  .l-footer_underContent {
    width: 350px;
    padding: 30px 0 0;
  }
}

.l-footer_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 1030px) {
  .l-footer_nav {
    margin: 0 0 50px;
    padding: 0 3%;
  }
}

.l-footer_nav_list {
  margin: 0 20px 0 0;
}

.l-footer_nav_item {
  padding: 5px 0;
}

@media screen and (max-width: 768px) {
  .l-footer_nav_item {
    padding: 10px 0;
    border-top: solid 1px #eeeeee;
  }
}

.l-footer_nav_item .c-iconLink {
  font-size: 12px;
  font-size: 1.2rem;
  white-space: nowrap;
}

.l-footer_copyright {
  display: block;
  font-size: 8px;
  font-size: .8rem;
  color: #008d00;
  font-weight: bold;
  letter-spacing: .05em;
  text-align: center;
}

@media screen and (min-width: 1030px) {
  .l-footer_copyright {
    margin: 20px 0 0;
    text-align: left;
  }
}

/* title
----------------------------------------------- */
.c-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-ttl:before {
  content: "";
  display: block;
  width: 5px;
  background-color: #008d00;
  border-radius: 100px;
}

.c-ttl_inner {
  padding: 11px 15px;
}

.c-ttl_en {
  margin: 0 0 8px;
  line-height: 1;
  color: #008d00;
  font-weight: bold;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.c-ttl_txt {
  line-height: 1.3;
}

@media screen and (min-width: 769px) {
  .c-ttl-page .c-ttl_txt {
    font-size: 30px;
    font-size: 3rem;
  }
}

.c-ttl-second .c-ttl_txt {
  font-size: 20px;
  font-size: 2rem;
  color: #008d00;
}

.c-ttl-g .c-ttl_txt {
  font-size: 18px;
  font-size: 1.8rem;
}

.c-ttl_sup {
  margin: 5px 0 0;
  font-size: 12px;
  font-size: 1.2rem;
}

.c-ttl-orange:before {
  background-color: #ff7800;
}

.c-ttl-orange .c-ttl_txt {
  color: #ff7800;
}

/* button
----------------------------------------------- */
.c-btn a,.c-btn button {
  position: relative;
  display: block;
  width: 100%;
  border: none;
  cursor: pointer;
  font-size: 13px;
  font-size: 1.3rem;
  padding: 15.25px 20px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  border-radius: 100px;
  -webkit-transition: opacity cubic-bezier(.165, .84, .44, 1) .3s;
          transition: opacity cubic-bezier(.165, .84, .44, 1) .3s;
}

@media screen and (max-width: 768px) {
  .c-btn a,.c-btn button {
    padding: 20px 20px;
  }
}

.c-btn a:hover,.c-btn button:hover {
  opacity: .8;
}

.c-btn-colorKey a,.c-btn-colorKey button {
  background-color: #008d00;
  color: #ffffff;
}

.c-btn-colorAccent a,.c-btn-colorAccent button {
  background-color: #ff7800;
  color: #ffffff;
}

.c-btn-colorSub a,.c-btn-colorSub button {
  background-color: #f5f7f8;
  font-weight: normal;
}

.c-btn-next a:after,.c-btn-next button:after {
  content: "";
  display: block;
  width: 5px;
  height: 9px;
  background: url(../images/common/icon_next_white.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  right: 25px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-btn-cart a:after,.c-btn-cart button:after {
  content: "";
  display: block;
  width: 18px;
  height: 16px;
  background: url(../images/common/icon_cart_white.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  left: 9%;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-subBtn a,.c-subBtn button {
  display: inline-block;
  padding: 10px;
  background-color: #f5f7f8;
  border-radius: 5px;
  line-height: 1;
  font-size: 11px;
  font-size: 1.1rem;
  border: none;
  cursor: pointer;
}

.c-btnIcon {
  display: block;
  width: 26px;
  height: 26px;
  background-color: #008d00;
  border-radius: 50px;
}

.c-btnIcon-plus,.c-btnIcon-minus {
  position: relative;
}

.c-btnIcon-plus::before,.c-btnIcon-plus::after,.c-btnIcon-minus::before,.c-btnIcon-minus::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: #ffffff;
}

.c-btnIcon-plus::after,.c-btnIcon-minus::after {
  width: 10px;
  height: 1px;
}

.c-btnIcon-plus::before,.c-btnIcon-minus::before {
  width: 1px;
  height: 10px;
}

.c-btnIcon-minus::before {
  content: none;
}

.c-btnIcon-black {
  background-color: #313131;
}

.c-btnIconClose {
  display: block;
  width: 20px;
  height: 20px;
  background-color: #313131;
  border-radius: 50px;
  position: relative;
  border: none;
}

.c-btnIconClose::before,.c-btnIconClose::after {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #ffffff;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-btnIconClose::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.c-btnIconClose::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.c-btnAdd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: bold;
  position: relative;
  cursor: pointer;
}

.c-btnAdd span.c-btnAdd_icon {
  display: block;
  width: 24px;
  height: 24px;
  margin: 0 5px 0 0;
  background-color: #008d00;
  border-radius: 50px;
  position: relative;
}

.c-btnAdd span.c-btnAdd_icon:before,.c-btnAdd span.c-btnAdd_icon:after {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #ffffff;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-btnAdd span.c-btnAdd_icon:before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

/* link
----------------------------------------------- */
a.c-link {
  text-decoration: underline;
}

a.c-link:hover {
  text-decoration: none;
}

a.c-link-em {
  font-weight: bold;
  color: #008d00;
}

.c-iconLink {
  display: inline-block;
  padding: 3px 0 3px 20px;
  line-height: 1.5;
  background: url(../images/common/icon_linkarr.png) left center no-repeat;
  background-size: 15px auto;
  -webkit-transition: all cubic-bezier(.165, .84, .44, 1) .3s;
          transition: all cubic-bezier(.165, .84, .44, 1) .3s;
}

.c-iconLink:hover {
  background: url(../images/common/icon_linkarr.png) 3px center no-repeat;
  background-size: 15px auto;
  color: #008d00;
}

.c-iconLink.is-blank {
  position: relative;
}

.c-iconLink.is-blank::after {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  background: url(../images/common/icon_blank.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  right: -13px;
  top: 0;
}

/* tag
----------------------------------------------- */
.c-tag span {
  display: inline-block;
  padding: 4px 8px;
  font-size: 10px;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  border-radius: 100px;
}

@media screen and (min-width: 769px) {
  .c-tag span {
    min-width: 70px;
    padding: 7px 10px;
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.c-tag-color1 span {
  background: #ff7800;
  color: #ffffff;
}

.c-tag-color2 span {
  background: #dcb800;
  color: #ffffff;
}

/* product 商品詳細関連
----------------------------------------------- */
.c-pdcName {
  color: #008d00;
  line-height: 1.5;
  font-weight: bold;
}

.c-pdcSup {
  color: #626262;
  font-size: 11px;
  font-size: 1.1rem;
}

.c-pdcSup span:not(:nth-child(1))::before {
  content: "/";
}

/* cartnav
----------------------------------------------- */
.c-cartnav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px;
  border-top: solid 1px #e5e5e5;
  border-bottom: solid 1px #e5e5e5;
}

.c-cartnav_numAree {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-cartnav_icon {
  margin: 3px;
}

.c-cartnav_num {
  display: inline-block;
  min-width: 20px;
  padding: 5px 3px;
  text-align: center;
  line-height: 1;
  background-color: #ff7800;
  color: #ffffff;
  font-weight: bold;
  font-size: 10px;
  font-size: 1rem;
  border-radius: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.c-cartnav_price {
  font-weight: bold;
}

/* searchbox
----------------------------------------------- */
.c-searchBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  height: 50px;
  padding: 0 10px 0 20px;
  border: solid 1px #cccccc;
  border-radius: 100px;
}

.c-searchBox input[type="search"] {
  width: 100%;
  border: none;
  background: transparent;
  -webkit-appearance: textfield;
}

.c-searchBox input[type="search"]:focus {
  outline: 0;
}

.c-searchBox button {
  background: none;
  border: none;
  cursor: pointer;
}

/* form
----------------------------------------------- */
.c-form {
  margin: 0 0 100px;
  padding: 0 5%;
}

@media screen and (max-width: 768px) {
  .c-form {
    margin: 0 0 20%;
  }
}

.c-form .c-secTtl {
  margin: 0 0 30px;
}

.c-form_inner {
  max-width: 100%;
  margin: 0 auto;
}

.c-form_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 2%;
  border-top: dashed 1px #cccccc;
}

@media screen and (max-width: 768px) {
  .c-form_item {
    display: block;
    padding: 20px 0;
  }
}

.c-form_item dt {
  width: 30%;
  padding: 0 3% 0 0;
  line-height: 1.5;
  font-weight: bold;
}

.p-form-input .c-form_item dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .p-form-input .c-form_item dt {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}

@media screen and (max-width: 768px) {
  .c-form_item dt {
    width: 100%;
    margin: 0 0 10px;
  }
}

@media screen and (max-width: 768px) {
  .c-form_item dt > p {
    margin: 0 10px 0 0;
  }
}

.c-form_item dt .ibItem {
  display: inline-block;
}

.c-form_item dt .required {
  padding: 3px;
  border: solid 1px tomato;
  color: tomato;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  white-space: nowrap;
}

.c-form_item dd {
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
}

.c-form_item-slectColor ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-form_item-slectColor ul li {
  margin: 0 20px 0 0;
}

.c-form_item-yubin input[type="text"] {
  width: auto;
}

.c-err {
  margin: 0 0 10px;
}

.c-err_item {
  color: tomato;
  line-height: 1.5;
  font-size: 12px;
  font-size: 1.2rem;
}

.c-note {
  margin: 5px 0 0;
}

input.c-radio + label,input.c-checkbox + label {
  padding: 0 0 0 25px;
  font-size: 14px;
  font-size: 1.4rem;
}

input.c-radio {
  display: none;
}

input.c-radio + label {
  position: relative;
}

input.c-radio + label::before,input.c-radio + label::after {
  content: "";
  display: block;
  border-radius: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

input.c-radio + label::before {
  width: 20px;
  height: 20px;
  left: 0;
  border: solid 1px #cccccc;
  background-color: #ffffff;
}

input.c-radio + label::after {
  width: 14px;
  height: 14px;
  left: 3px;
  background-color: #ffffff;
}

input.c-radio:checked + label::after {
  background-color: #ff7800;
}

.c-radioItem:not(:last-child) {
  margin: 0 0 5px;
}

input[type="checkbox"] {
  display: none;
}

input[type="checkbox"] + label {
  padding: 0 0 0 27px;
  position: relative;
}

input[type="checkbox"] + label::before,input[type="checkbox"] + label::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

input[type="checkbox"] + label::before {
  left: 0;
  border: solid 1px #cccccc;
  background-color: #ffffff;
}

input[type="checkbox"]:checked + label::after {
  background: url(../images/common/icon_check.png) center center no-repeat;
  background-size: 18px auto;
  left: 0;
}

.c-select {
  display: block;
  width: 100%;
  background-color: #f5f7f8;
  border-radius: 5px;
  border: none;
  position: relative;
}

.c-select::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: url(../images/common/icon_down_black.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-select select {
  width: 100%;
  height: 50px;
  background: transparent;
  padding: 17px;
  border: none;
}

.c-selectForm {
  display: block;
  width: 100%;
  max-width: 400px;
  background-color: #ffffff;
  border-radius: 5px;
  border: solid 1px #cccccc;
  position: relative;
}

.c-selectForm::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: url(../images/common/icon_down_black.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-selectForm select {
  width: 100%;
  background: transparent;
  padding: 17px;
  border: none;
}

.c-number input[type="number"] {
  border: none !important;
  background-color: #f5f7f8 !important;
  font-size: 15px !important;
}

/* bnr
----------------------------------------------- */
.c-bnrOfficial a {
  display: block;
  height: 80px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
          box-shadow: 0 0 20px rgba(0, 0, 0, .2);
  border-radius: 10px;
  position: relative;
  text-align: center;
  -webkit-transition: opacity cubic-bezier(.165, .84, .44, 1) .3s;
          transition: opacity cubic-bezier(.165, .84, .44, 1) .3s;
}

.c-bnrOfficial a:hover {
  opacity: .8;
}

.c-bnrOfficial_txt {
  -webkit-transform: translate(-5px, 10px);
          transform: translate(-5px, 10px);
}

.c-bnrOfficial_item {
  position: absolute;
  right: -3px;
  top: -3px;
}

/* menu icon
----------------------------------------------- */
/*menu icon*/
.c-menuIcon {
  width: 60px;
  height: 60px;
  cursor: pointer;
  position: fixed;
  right: 5%;
  top: 18px;
  z-index: 1001;
  -webkit-transition: top cubic-bezier(.165, .84, .44, 1) .5s;
          transition: top cubic-bezier(.165, .84, .44, 1) .5s;
}

@media screen and (min-width: 769px) {
  .c-menuIcon {
    display: none;
  }
}

.is-open .c-menuIcon {
  top: 25px;
}

.c-menuIcon_inner {
  position: absolute;
  width: 34px;
  height: 26px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.c-menuIcon_bar {
  display: block;
  height: 3px;
  margin: 0 0 6px;
  background-color: #313131;
  border-radius: 5px;
  -webkit-transition: all cubic-bezier(.165, .84, .44, 1) .5s;
          transition: all cubic-bezier(.165, .84, .44, 1) .5s;
}

.l-header.is-open .c-menuIcon_bar-top {
  -webkit-transform: rotate(15deg);
          transform: rotate(15deg);
  position: relative;
  top: 4px;
}

.l-header.is-open .c-menuIcon_bar-under {
  -webkit-transform: rotate(-15deg);
          transform: rotate(-15deg);
  position: relative;
  top: -5px;
}

.c-menuIcon_txt {
  display: block;
  font-size: 9px;
  font-size: .9rem;
  line-height: 1;
  text-align: center;
  font-weight: bold;
  letter-spacing: .17em;
  text-transform: uppercase;
  -webkit-transition: etter-spacing cubic-bezier(.165, .84, .44, 1) .5s;
          transition: etter-spacing cubic-bezier(.165, .84, .44, 1) .5s;
}

.is-open .c-menuIcon_txt {
  letter-spacing: 0;
}

/*company
----------------------------------------------- */
.c-companyAddr,.c-companyInfo {
  font-size: 12px;
  font-size: 1.2rem;
}

.c-companyAddr {
  line-height: 1.5;
}

.c-companyAddr span {
  display: block;
}

.c-companyInfo {
  line-height: 1.5;
}

/*err
----------------------------------------------- */
.ec-alert-warning {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

.ec-alert-warning__text {
  padding: 20px 30px;
  color: #e60012;
  border: solid 1px #e60012;
  border-radius: 5px;
}

.p-errorShoppingPage {
  padding: 0 5%;
}

@media screen and (min-width: 1030px) {
  .p-errorShoppingPage {
    padding: 0 50px;
  }
}

.p-errorShoppingPage .c-btn {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}

.p-errorShoppingPage_inner {
  padding: 50px 0 0;
  border-top: solid 1px #e5e5e5;
}

/*other 分類しづらいもの
----------------------------------------------- */
.c-errTxt {
  line-height: 1.5;
  color: #e60012;
}

/* linebox
----------------------------------------------- */
.p-lineBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-lineBox::before {
  content: "";
  display: block;
  width: 5px;
  background-color: #edeff0;
  border-radius: 50px;
}

.p-lineBox_wrap {
  width: 100%;
  position: relative;
  z-index: 1;
}

.p-lineBox_ttl {
  -webkit-transform: translateX(-5px);
          transform: translateX(-5px);
}

.p-lineBox_content {
  padding: 10px 0 20px 20px;
}

/* pdclist 商品一覧等
----------------------------------------------- */
.p-pdcList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 2.5%;
}

@media screen and (min-width: 1030px) {
  .p-pdcList {
    padding: 0 35px;
  }
}

.p-pdcItem {
  width: 50%;
  padding: 0 2.5%;
  margin-bottom: 8%;
  position: relative;
}

@media screen and (min-width: 1030px) {
  .p-pdcItem {
    padding: 0 15px;
    margin-bottom: 50px;
  }
}

@media (min-width: 1100px) {
  .p-pdcItem {
    width: 33.33333%;
  }
}

@media (min-width: 1500px) {
  .p-pdcItem {
    width: 25%;
  }
}

@media (min-width: 1900px) {
  .p-pdcItem {
    width: 20%;
  }
}

.p-pdcItem .p-tags {
  position: absolute;
  top: 2%;
  left: calc(5% + 5%);
}

@media screen and (min-width: 1030px) {
  .p-pdcItem .p-tags {
    top: 20px;
    left: 35px;
  }
}

.p-pdcItem:hover .p-pdcItem_pic {
  opacity: .8;
}

.p-pdcItem_pic {
  margin: 0 0 3%;
  border-radius: 10px;
  overflow: hidden !important;
  position: relative;
  -webkit-transition: opacity cubic-bezier(.165, .84, .44, 1) .3s;
          transition: opacity cubic-bezier(.165, .84, .44, 1) .3s;
}

@media screen and (min-width: 769px) {
  .p-pdcItem_pic {
    margin: 0 0 15px;
  }
}

.p-pdcItem_obi,.p-pdcItem_soldout {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.p-pdcItem_detail {
  padding: 0 5%;
}

@media screen and (min-width: 769px) {
  .p-pdcItem_detail {
    padding: 0 3%;
  }
}

.p-pdcItem_name {
  font-size: 15px;
  font-size: 1.5rem;
}

.p-pdcItem_sup {
  margin: 0 0 5px;
  font-size: 10px;
  font-size: 1rem;
}

@media screen and (min-width: 769px) {
  .p-pdcItem_sup {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

@media screen and (max-width: 600px) {
  span.p-pdcItem_price_sup,span.p-pdcItem_price_txt {
    display: block;
  }
}

span.p-pdcItem_price_sup {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
}

@media screen and (min-width: 769px) {
  span.p-pdcItem_price_sup {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

span.p-pdcItem_price_txt {
  font-size: 18px;
  font-size: 1.8rem;
}

span.p-pdcItem_price_txt span {
  font-size: 11px;
  font-size: 1.1rem;
}

.p-listSort {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

@media screen and (max-width: 1030px) {
  .p-listSort {
    margin: 20px 0 0;
  }
}

.p-listSort .c-select {
  width: 120px;
  height: auto;
  margin: 0 0 0 12px;
}

@media screen and (min-width: 769px) {
  .p-listSort .c-select {
    width: 150px;
    height: 50px;
  }
}

.p-listSort .c-select select {
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  .p-listSort .c-select select {
    height: auto;
    padding: 10px;
  }
}

/* detail 商品詳細等
----------------------------------------------- */
.p-detai {
  padding: 0 5%;
  margin: 0 auto 5%;
}

@media screen and (max-width: 768px) {
  .p-detai {
    width: 100%;
  }
}

@media (min-width: 900px) {
  .p-detai {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1030px) {
  .p-detai {
    padding: 0 50px;
    margin: 0 auto 50px;
  }
}

.p-detai .c-pdcName {
  font-size: 20px;
  font-size: 2rem;
}

.p-detai .p-tags {
  margin: 0 0 10px;
}

.p-detai_content {
  padding: 0 3%;
}

@media (min-width: 900px) {
  .p-detai_content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
    padding: 0 0 0 5%;
  }
}

@media (min-width: 1400px) {
  .p-detai_content {
    padding: 0 0 0 60px;
  }
}

@media (min-width: 900px) {
  .p-detai_content,.p-detai_picArea {
    width: calc(50% - 30px);
  }
}

@media (min-width: 900px) {
  .p-detai_picArea {
    max-width: 540px;
  }
}

.p-detai_price {
  margin: 0 0 15px;
  padding: 0 0 15px;
  border-bottom: solid 1px #e5e5e5;
}

.p-detai_price_txt {
  font-size: 20px;
  font-size: 2rem;
}

.p-detai_price_txt span {
  font-size: 13px;
  font-size: 1.3rem;
}

.p-detai_code {
  margin: 0 0 10px;
  font-size: 11px;
  font-size: 1.1rem;
  color: #626262;
}

.p-detail_dataList {
  margin: 0 0 20px;
}

.p-detail_data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-detail_data:not(:last-child) {
  margin: 0 0 10px;
}

.p-detail_data::before {
  content: "";
  display: block;
  width: 5px;
  background: #abcd03;
  border-radius: 10px;
}

.p-detail_data_inner {
  padding: 8px 15px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
}

.p-detail_data_ttl {
  line-height: 1.5;
  font-size: 11px;
  font-size: 1.1rem;
}

.p-detail_data_val {
  line-height: 1.5;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-detail_cart {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-detail_cart .ec-select {
  width: 100%;
  margin-bottom: 15px;
}

.p-detail_cart .ec-select select {
  max-width: 400px;
}

.p-detail_cart_num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  white-space: nowrap;
}

.p-detail_cart_num_txt {
  font-size: 13px;
  font-size: 1.3rem;
  padding: 0 10px 0 0;
}

.p-detail_cart_num_inp {
  width: 60px;
}

.p-detail_cart_num_inp input[type="number"] {
  text-align: center;
  padding: 17px 10px;
}

.p-detail_cart_btn {
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
  padding: 0 0 0 10px;
}

.p-detail_cart_btn .c-btn button {
  max-width: 300px;
}

.p-detail_freeArea {
  margin: 0 0 20px;
}

.p-detail_note p:not(.p-detail_note_caution) {
  margin: 0 0 3px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}

.p-detail_note_caution {
  margin: 10px 0 0;
  line-height: 1.5;
  color: #e60012;
}

@media screen and (max-width: 1120px) {
  .p-detail_note_caution br {
    display: none;
  }
}

.p-detai_inTtl {
  padding: 0 8%;
  margin: 0 0 30px;
}

@media screen and (min-width: 1030px) {
  .p-detai_inTtl {
    padding: 0 50px;
  }
}

.p-detail_soldout {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #e60012;
}

.p-detail_msgNoSale_ttl {
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-detail_fruit {
  padding: 0 8%;
}

@media screen and (min-width: 1030px) {
  .p-detail_fruit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 50px;
  }
}

.p-detail_fruit_table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 30px;
}

@media screen and (min-width: 1030px) {
  .p-detail_fruit_table {
    width: calc(50% - 30px);
  }
}

.p-detail_fruit_item {
  width: 33.33333%;
  border-right: solid 1px #ffffff;
  border-bottom: solid 1px #ffffff;
  background-color: #f5f7f8;
}

.p-detail_fruit_item dt,.p-detail_fruit_item dd {
  text-align: center;
  line-height: 1.5;
}

.p-detail_fruit_item dt {
  padding: 12px 10px;
  background-color: #54a52d;
  font-weight: bold;
  color: #ffffff;
  font-size: 13px;
  font-size: 1.3rem;
}

.p-detail_fruit_item dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 20px 10px;
}

@media screen and (min-width: 1030px) {
  .p-detail_fruit_about {
    width: calc(50% - 30px);
  }
}

.p-detail_fruit_about .c-ttl {
  margin: 0 0 10px;
}

.p-detail_fruit_about .c-ttl_txt {
  color: #008d00;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-detai_gift_headWrap {
  margin: 0 auto 50px;
  padding: 0 8%;
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_headWrap {
    padding: 0 50px;
  }
}

.p-detai_gift_head {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-detai_gift_head_ttl {
  margin: 0 0 15px;
  color: #008d00;
  line-height: 1.5;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: justify;
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_head_ttl {
    font-size: 25px;
    font-size: 2.5rem;
  }
}

.p-detai_gift_head_cont {
  margin: 0 0 20px;
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_head_cont {
    width: 50%;
    margin: 0;
    padding: 0 5% 0 0;
  }
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_head figure {
    width: 50%;
  }
}

.p-detai_gift_head figcaption {
  margin: 5px 0 0;
  text-align: center;
}

.p-detai_gift_sets {
  padding: 10% 8% 15%;
  background-color: #f5f7f8;
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_sets {
    padding: 60px 50px 100px;
  }
}

.p-detai_gift_sets_ttl {
  margin: 0 0 30px;
  text-align: center;
}

.p-detai_gift_sets_ttl h3 {
  line-height: 1;
  margin: 0 0 5px;
  font-size: 18px;
  font-size: 1.8rem;
}

@media screen and (min-width: 769px) {
  .p-detai_gift_sets_ttl h3 {
    font-size: 25px;
    font-size: 2.5rem;
  }
}

@media (min-width: 600px) {
  .p-detai_gift_sets_list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_sets_list ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.p-detai_gift_sets_list ul li {
  width: 90%;
  padding: 30px;
  background: #ffffff;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .1);
          box-shadow: 0 0 10px rgba(0, 0, 0, .1);
  border-radius: 10px;
}

@media (min-width: 600px) {
  .p-detai_gift_sets_list ul li {
    width: calc(50% - 10px);
    margin-bottom: 20px;
  }
  .p-detai_gift_sets_list ul li:nth-child(odd) {
    margin-right: 20px;
  }
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_sets_list ul li {
    width: 33.33333%;
    max-width: 340px;
    margin: 0 1% !important;
  }
}

@media screen and (max-width: 600px) {
  .p-detai_gift_sets_list ul li {
    margin-left: auto;
    margin-right: auto;
  }
  .p-detai_gift_sets_list ul li:not(:last-child) {
    margin-bottom: 20px;
  }
}

.p-detai_gift_sets_list ul li figure {
  margin: 0 0 10px;
  text-align: center;
}

.p-detai_gift_sets_list ul li figure img {
  width: 50%;
  max-width: 145px;
}

@media screen and (min-width: 769px) {
  .p-detai_gift_sets_list ul li figure img {
    width: 145px;
  }
}

.p-detai_gift_sets_list ul li figcaption {
  margin: 5px 0 0;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  color: #008d00;
}

.p-detai_gift_sets_list ul li p {
  margin: 0 0 20px;
  text-align: center;
  line-height: 1.5;
}

.p-detai_gift_sets_list ul li a {
  display: block;
  width: 130px;
  height: 40px;
  line-height: 40px;
  margin: 0 auto;
  text-align: center;
  border: solid 1px #cccccc;
  border-radius: 50px;
  font-size: 11px;
  font-size: 1.1rem;
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_packing {
    padding: 70px 50px 0;
  }
}

.p-detai_gift_packing_inner {
  padding: 10% 8%;
  background-color: #f7f4ee;
}

@media (min-width: 500px) {
  .p-detai_gift_packing_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 1080px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 769px) {
  .p-detai_gift_packing_inner {
    padding: 60px;
  }
}

@media screen and (min-width: 1030px) {
  .p-detai_gift_packing_inner {
    border-radius: 30px;
  }
}

.p-detai_gift_packing figure {
  width: 100%;
  margin: 0 auto 20px;
}

@media (min-width: 500px) {
  .p-detai_gift_packing figure {
    width: 50%;
    max-width: 315px;
    margin: 0;
    padding: 0 5% 0 0;
  }
}

.p-detai_gift_packing .txt-cap {
  line-height: 1.5;
  margin: 0 0 5px;
}

@media (min-width: 500px) {
  .p-detai_gift_packing_cont {
    width: 50%;
  }
}

.p-detai_gift_packing_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 10px;
}

.p-detai_gift_packing_ttl::before {
  content: "";
  display: block;
  width: 5px;
  background: #313131;
  border-radius: 50px;
}

.p-detai_gift_packing_ttl h3 {
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
  padding: 10px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
}

/* tags タグのリスト
----------------------------------------------- */
.p-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-tags .c-tag {
  margin: 0 5px 0 0;
}

/* category navigation カテゴリーリスト
----------------------------------------------- */
.p-categoryNav {
  overflow: hidden;
}

.p-categoryNav_ttl {
  margin: 0 0 10px;
}

.p-categoryNav_item {
  padding: 5px 0;
  border-bottom: dotted 1px #d8d8d8;
}

.p-categoryNav_parentName {
  padding: 12.25px 0 12.25px 54px;
  font-weight: bold;
  cursor: pointer;
  line-height: 1.5;
  position: relative;
}

.p-categoryNav_parentName.catId11 {
  background: url("../images/common/catenav_icon-sets.png") left center no-repeat;
  background-size: 44px auto;
}

.p-categoryNav_parentName.catId7 {
  background: url("../images/common/catenav_icon-budo.png") left center no-repeat;
  background-size: 44px auto;
}

.p-categoryNav_parentName::after {
  content: "";
  display: block;
  width: 9px;
  height: 5px;
  background: url("../images/common/icon_down_black.png") center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: -webkit-transform cubic-bezier(.165, .84, .44, 1) .3s;
          transition: -webkit-transform cubic-bezier(.165, .84, .44, 1) .3s;
          transition:         transform cubic-bezier(.165, .84, .44, 1) .3s;
          transition:         transform cubic-bezier(.165, .84, .44, 1) .3s, -webkit-transform cubic-bezier(.165, .84, .44, 1) .3s;
}

.p-categoryNav_item.is-on .p-categoryNav_parentName::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.p-categoryNav_childList {
  display: none;
  -webkit-transform: translateX(50px);
          transform: translateX(50px);
  padding: 0 0 10px;
}

.p-categoryNav_childItem {
  margin: 0 0 5px;
}

.p-categoryNav_childItem a {
  display: block;
  padding: 0 0 0 10px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
  position: relative;
  -webkit-transition: color cubic-bezier(.165, .84, .44, 1) .3s;
          transition: color cubic-bezier(.165, .84, .44, 1) .3s;
}

.p-categoryNav_childItem a::before {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #313131;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: border-color cubic-bezier(.165, .84, .44, 1) .3s;
          transition: border-color cubic-bezier(.165, .84, .44, 1) .3s;
}

.p-categoryNav_childItem a:hover {
  color: #008d00;
}

.p-categoryNav_childItem a:hover::before {
  border-color: transparent transparent transparent #008d00;
}

/* progress 購入フローパーツ
----------------------------------------------- */
.p-progress {
  margin: 0 auto 30px;
  padding: 8px 3%;
  display: table;
  table-layout: fixed;
  width: 100%;
  max-width: 600px;
  list-style: none;
}

.p-progress_item {
  display: table-cell;
  position: relative;
  font-size: 14px;
  text-align: center;
  z-index: 10;
}

.p-progress_item::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  margin-left: 1.5em\9;
  top: 20px;
  left: 50%;
  z-index: -1;
  background: #eeeeee;
}

.p-progress_item:last-child:after {
  display: none;
}

.p-progress_number {
  line-height: 40px;
  width: 40px;
  height: 40px;
  margin-bottom: 5px;
  font-size: 12px;
  font-size: 1.2rem;
  background: #eeeeee;
  top: 0;
  left: 18px;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  border-radius: 50%;
}

.p-progress_item.is-on .p-progress_number {
  background: #008d00;
  color: #ffffff;
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
}

.p-progress_label {
  padding: 0 5px;
  line-height: 1.3;
  font-weight: normal;
  font-size: 11px;
  font-size: 1.1rem;
}

.p-progress_label span {
  display: inline-block;
  line-height: inherit;
}

.p-progress_item.is-on .p-progress_label {
  color: #008d00;
  font-weight: bold;
}

/* guidecmn
----------------------------------------------- */
.p-guideCmn {
  margin: 0 0 8%;
  padding: 0 5%;
  position: relative;
}

@media screen and (min-width: 1030px) {
  .p-guideCmn {
    margin: 0;
    padding: 0 50px;
  }
}

.p-guideCmn_content {
  padding: 8% 8% 15%;
  border-radius: 10px;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
          box-shadow: 0 0 20px rgba(0, 0, 0, .2);
  background: #ffffff;
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .p-guideCmn_content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 70px 7%;
    border-radius: 30px;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .p-guideCmn_content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 70px 7%;
    border-radius: 30px;
  }
}

.p-guideCmn_content .c-ttl {
  margin: 0 0 20px;
}

.p-guideCmn_discArea {
  margin: 0 0 20px;
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .p-guideCmn_discArea {
    width: 50%;
    margin: 0;
    padding: 0 5% 0 0;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .p-guideCmn_discArea {
    width: 50%;
    margin: 0;
    padding: 0 5% 0 0;
  }
}

.p-guideCmn_discArea_ttl {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5;
  margin: 0 0 10px;
}

@media screen and (min-width: 1030px) {
  .p-guideCmn_discArea_ttl {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-guideCmn_txt {
  text-align: justify;
}

.p-guideCmn_btnArea {
  padding: 20px 0 0;
  border-top: solid 1px #e5e5e5;
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .p-guideCmn_btnArea {
    width: 50%;
    margin: 25px 0 0;
    padding: 0 30px 30px;
    border: solid 1px #e5e5e5;
    border-radius: 20px;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .p-guideCmn_btnArea {
    width: 50%;
    margin: 25px 0 0;
    padding: 0 30px 30px;
    border: solid 1px #e5e5e5;
    border-radius: 20px;
  }
}

.p-guideCmn_btnArea_logo {
  width: 90%;
  max-width: 275px;
  margin: 0 auto 20px;
}

@media screen and (min-width: 1030px) {
  body:not(.fsOrderPage) .p-guideCmn_btnArea_logo {
    margin: -25px auto 20px;
    padding: 0 3%;
    background: #ffffff;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
  }
}

@media (min-width: 1290px) {
  .fsOrderPage .p-guideCmn_btnArea_logo {
    margin: -25px auto 20px;
    padding: 0 3%;
    background: #ffffff;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
  }
}

.p-guideCmn_btnArea_ttl {
  margin: 0 0 20px;
  text-align: center;
}

.p-guideCmn_btnArea_btns {
  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;
}

.p-guideCmn_btnArea_btns .c-btn a {
  line-height: 1.2;
}

.p-guideCmn_btnArea_btns .c-btn:nth-child(1),.p-guideCmn_btnArea_btns .c-btn:nth-child(2) {
  width: 48%;
  margin: 0 0 15px;
}

.p-guideCmn_btnArea_btns .c-btn:nth-child(1) a,.p-guideCmn_btnArea_btns .c-btn:nth-child(2) a {
  font-size: 12px;
  font-size: 1.2rem;
}

.p-guideCmn_btnArea_btns .c-btn:nth-child(1) span {
  display: inline-block;
  line-height: inherit;
}

.p-guideCmn_btnArea_btns .c-btn:nth-child(3) {
  width: 100%;
}

.p-guideCmn_btnArea_btns .c-btn a {
  font-weight: bold;
}




/* pager
----------------------------------------------- */
.p-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-pager_item-active a,.p-pager_item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 35px;
  height: 35px;
  font-size: 13px;
  font-size: 1.3rem;
}

.p-pager_item-active a {
  border-radius: 50px;
  background-color: #008d00;
  color: #ffffff;
  font-weight: bold;
}

/* cart 購入周り
----------------------------------------------- */
.p-cart {
  padding: 0 5%;
}

@media screen and (min-width: 1030px) {
  .p-cart .p-cartItemDetail {
    width: calc(100% - 400px);
  }
}

.p-cart .p-cartItemDetail_item span {
  display: block;
}

.p-cart_headTotal {
  width: 100%;
  max-width: 900px;
  margin: 0 auto 20px;
  padding: 10px 0;
  text-align: center;
  border-top: solid 1px #e5e5e5;
  border-bottom: solid 1px #e5e5e5;
}

.p-cart_headTotal span {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (min-width: 1030px) {
  .p-cart_headTotal {
    margin: 0 auto 50px;
  }
}

.p-cartList {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.p-cartItem {
  margin: 0 0 25px;
  padding: 0 0 25px;
  border-bottom: dotted 1px #e5e5e5;
}

@media screen and (min-width: 1030px) {
  .p-cartItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-cartItemDetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 10px;
}

.p-cartItemDetail_pic {
  width: 30%;
  max-width: 150px;
  border-radius: 10px;
  overflow: hidden;
}

.p-cartItemDetail_about {
  width: 70%;
  padding: 1% 20px 0 20px;
}

.p-cartItemDetail .c-pdcName {
  margin: 0 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-cartItemDetail_item {
  margin: 0 0 5px;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1;
}

.p-cartItemDetail_item span {
  margin: 0 0 5px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: inherit;
}

.p-cartItem_infoArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 15px 8%;
  background-color: #f5f7f8;
  border-radius: 10px;
}

@media screen and (min-width: 1030px) {
  .p-cartItem_infoArea {
    width: 400px;
    padding: 15px 30px;
  }
}

.p-cartItem_infoArea .p-cartItem_pdcPrice {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1;
}

.p-cartItem_infoArea .p-cartItem_pdcPrice span {
  display: block;
  margin: 0 0 5px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: inherit;
}

.p-cartItem_infoArea_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-cartItem_del a {
  background-color: #e4e6e7;
}

.p-cartItem_quantity {
  margin: 0 20px 0 0;
}

.p-cartItem_quantity_num {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1;
  text-align: center;
  margin: 0 0 5px;
}

.p-cartItem_quantity_num span {
  margin: 0 0 5px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: inherit;
}

.p-cartItem_quantity_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-cartItem_quantity_item .c-btnIcon {
  margin: 0 3px;
}

.p-cart_total {
  padding: 0 0 20px;
  text-align: center;
  line-height: 1;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
}

.p-cart_total span {
  font-weight: normal;
  font-size: 15px;
  font-size: 1.5rem;
}

.p-cart_total_txt {
  font-size: 13px !important;
}

/* mssage box 完了画面などで
----------------------------------------------- */
.p-msgBox {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 8%;
}

@media screen and (min-width: 769px) {
  .p-msgBox {
    padding: 0 5%;
  }
}

@media screen and (min-width: 1030px) {
  .p-msgBox {
    padding: 0 50px;
  }
}

.p-msgBox_ttl {
  margin: 0 0 10px;
  line-height: 1.5;
}

.p-msgBox_txt {
  margin: 0 0 20px;
}

.p-msgBox_orderNumber {
  margin: 0 0 20px;
  padding: 15px 0;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  border-top: solid 1px #e5e5e5;
  border-bottom: solid 1px #e5e5e5;
}

.p-msgBox_btn {
  max-width: 250px;
  margin: 0 auto;
}

/* formarea お客様情報入力エリアなど
----------------------------------------------- */
.p-formArea {
  padding: 0 5%;
}

.p-formArea_inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.p-formItem {
  margin: 0 0 15px;
  padding: 0 0 15px;
  border-bottom: dotted 1px #e5e5e5;
}

@media screen and (min-width: 1030px) {
  .p-formItem {
    margin: 0 0 20px;
    padding: 0 0 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-formArea_head {
  max-width: 900px;
  margin: 0 auto 20px;
  padding: 20px;
  border-radius: 5px;
  background-color: #f5f7f8;
  border: solid 1px #e1e3e4;
}

@media screen and (min-width: 1030px) {
  .p-formArea_head {
    margin: 0 auto 50px;
  }
}

.p-formArea_head ul li {
  margin: 0 0 5px;
  line-height: 1.5;
}

.p-formArea_head_ttl {
  margin: 0 0 5px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .p-formArea_head_ttl {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.p-formItem_ttl {
  margin: 0 0 10px;
}

@media screen and (min-width: 1030px) {
  .p-formItem_ttl {
    width: 20%;
  }
}

.p-formItem_ttl_txt {
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-formItem_required {
  margin: 0 0 0 5px;
  padding: 3px 5px;
  background-color: #ff7800;
  color: #ffffff;
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: bold;
  border-radius: 3px;
}

@media screen and (min-width: 1030px) {
  .p-formItem_inp {
    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
  }
}

.p-formItem_inp_item:not(:last-child) {
  margin: 0 0 10px;
}

.p-formItem_inp-2clm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-formItem_inp-2clm .p-formItem_inp_item {
  width: 49%;
}

.p-formItem_inp_item-yubin {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-formItem_inp_item-yubin input {
  width: 10em;
}

.p-formItem_inp_item-yubin p {
  margin: 0 10px 0 0;
}

.p-formItem .c-errTxt {
  margin: 5px 0;
  font-size: 11px;
  font-size: 1.1rem;
}

.p-formArea .p-btnArea_item-link a {
  font-size: 13px;
  font-size: 1.3rem;
}

/* btnarea ボタン並ぶエリア
----------------------------------------------- */
.p-btnArea .c-btn {
  width: 100%;
  max-width: 400px;
}

.p-btnArea .p-btnArea_item-link {
  text-align: center;
}

.p-btnArea_item:not(:last-child) {
  margin: 0 auto 20px;
}

/* multiple 複数配送先の登録
----------------------------------------------- */
.p-multiple {
  padding: 0 5%;
}

.p-multiple_inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.p-multiple_new {
  margin: 0 0 30px;
  padding: 8% 8% 10%;
  background-color: #ffffff;
  border-radius: 10px;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
          box-shadow: 0 0 20px rgba(0, 0, 0, .2);
}

@media screen and (min-width: 769px) {
  .p-multiple_new {
    padding: 50px;
  }
}

.p-multiple_new .c-btn {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}

.p-multiple_new .c-ttl {
  margin: 0 0 20px;
}

.p-multiple_txt {
  text-align: center;
  font-weight: bold;
  margin: 0 0 20px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .p-multiple_txt {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-multipleItem {
  margin: 0 0 20px;
  padding: 5% 5% 30px;
  background-color: #f5f7f8;
  border-radius: 10px;
}

.p-multipleItem .p-cartItemDetail {
  margin: 0 0 20px;
}

.p-multipleItemList {
  margin: 0 0 50px;
}

.p-multipleItem_select_list {
  margin: 0 0 20px;
}

.p-multipleItem_select {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 10px;
}

.p-multipleItem_select .c-btnIconClose {
  -webkit-transform: translateY(.75em);
          transform: translateY(.75em);
}

.p-multipleItem_select_addr {
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
  margin: 0 10px 0 0;
}

.p-multipleItem_select_addr .c-selectForm {
  height: 50px;
  max-width: 100%;
}

.p-multipleItem_select_addr .c-selectForm::after {
  right: 10px;
}

.p-multipleItem_select_addr .c-selectForm select {
  padding: 17px 30px 17px 17px;
}

.p-multipleItem_select_quantity {
  width: 50px;
  margin: 0 10px 0 0;
}

.p-multipleItem_select_quantity input {
  padding: 15px 10px;
}

.p-multipleItem .c-btnAdd {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* procedure ご注文手続き
----------------------------------------------- */
.p-procedure {
  padding: 0 5%;
}

@media screen and (min-width: 1030px) {
  .p-procedure {
    padding: 0 50px;
  }
}

.p-procedure_inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.p-procedure .p-lineBox {
  margin: 0 0 20px;
}

.p-procedure .c-ttl_txt {
  font-size: 18px;
  font-size: 1.8rem;
}

.p-procedure_customer {
  margin: 0 0 10px;
}

.p-procedure_customer_item {
  font-size: 13px;
  font-size: 1.3rem;
}

.p-procedure .customer-name01,.p-procedure .customer-name02,.p-procedure_customer_item-name {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
}

.p-procedure .customer-name01 span,.p-procedure .customer-name02 span,.p-procedure_customer_item-name span {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: normal;
}

.p-procedure_customer_item-addr span {
  display: inline-block;
}

.p-procedure_changeInfo .p-formItem {
  display: block;
}

@media (min-width: 1350px) {
  .p-procedure_changeInfo .p-formItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-procedure_changeInfo .p-formItem_ttl {
  width: 100%;
}

@media (min-width: 1350px) {
  .p-procedure_changeInfo .p-formItem_ttl {
    width: 20%;
  }
}

.p-procedure #customer-cancel {
  text-align: center;
}

.p-procedure #customer-cancel button {
  border: none;
  background: none;
  font-size: 13px;
  font-size: 1.3rem;
  text-decoration: underline;
}

.p-procedure #customer-cancel button:hover {
  text-decoration: none;
}

.p-procedure_deliveryList {
  margin: 0 0 20px;
}

.p-procedure_delivery:not(:last-child) {
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: solid 3px #e5e5e5;
}

.p-procedure_delivery_ttl {
  margin: 0 0 10px;
  font-weight: bold;
  font-size: 17px;
  font-size: 1.7rem;
}

.p-procedure_delivery_shipping_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 15px 0 10px;
}

#page_shopping_confirm .p-procedure_delivery_shipping_item {
  margin: 0;
}

.p-procedure_delivery_shipping_item dt {
  width: 75px;
  padding: 0 10px 0 0;
  font-weight: bold;
}

.p-procedure_delivery_shipping_item dd {
  width: 70%;
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
}

.p-procedure_delivery_shipping_item .c-selectForm {
  max-width: 200px;
}

.p-procedure_delivery_shipping_item .c-selectForm select {
  padding: 10px 10px;
  font-size: 11px;
}

.p-procedure_delivery_addBtn {
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: dashed 2px #e5e5e5;
}

.p-procedure_delivery_addBtn .c-btn {
  max-width: 400px;
  margin: 0 auto;
}

.p-totalBox {
  background-color: #ffffff;
}

@media screen and (max-width: 1030px) {
  .p-totalBox {
    padding: 10% 10% 40px;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .2);
            box-shadow: 0 0 10px rgba(0, 0, 0, .2);
    border-radius: 10px;
  }
}

@media screen and (min-width: 1030px) {
  .p-totalBox {
    width: 260px;
    height: 100vh;
    padding: 70px 30px 0;
    position: fixed;
    left: 260px;
    top: 0;
    border-right: solid 1px #e5e5e5;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-shadow: 5px 0 5px rgba(0, 0, 0, .1) inset;
            box-shadow: 5px 0 5px rgba(0, 0, 0, .1) inset;
  }
}

.p-totalBox_ttl {
  margin: 0 0 20px;
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-totalBox_spec {
  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;
  border-top: dotted 1px #e5e5e5;
  padding: 5px 0;
}

@media screen and (min-width: 1030px) {
  .p-totalBox_spec {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.p-totalBox_spec dt,.p-totalBox_spec dd {
  text-align: right;
}

.p-totalBox_spec dd {
  width: 130px;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-totalBox_total {
  padding: 5px 0 0;
  border-top: solid 2px #eeeeee;
  border-bottom: none;
}

.p-totalBox_total dd span {
  font-size: 11px;
  font-size: 1.1rem;
}

.p-totalBox_taxRate {
  text-align: right;
}

.p-totalBox_taxRate span {
  display: inline-block;
  font-size: 11px;
  font-size: 1.1rem;
}

.p-totalBox_paymentTotal {
  margin: 5% 0 0;
  padding: 30px 0;
  line-height: 1;
  text-align: center;
  border-top: solid 1px #e5e5e5;
}

.p-totalBox_paymentTotal span {
  line-height: inherit;
}

.p-totalBox_paymentTotal {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
}

.p-totalBox_paymentTotal_txt {
  margin: 0 0 10px;
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  font-weight: normal;
}

.p-totalBox_taxLabel {
  font-size: 12px;
  font-size: 1.2rem;
}

.p-procedure_noshi .noshi {
  padding-bottom: 15px;
}

.p-procedure_noshi .noshi .c-selectForm {
  max-width: 200px;
}

.p-procedure_noshi .noshi .c-selectForm select {
  padding: 10px 10px;
}

.p-procedure_noshi label {
  display: block;
  font-weight: bold;
  margin: 0 0 3px;
}

.p-procedure_noshi_item {
  display: none;
}

.p-procedure_noshiConfList .p-procedure_delivery_shipping_item dt {
  width: 110px;
}

/* modal 商品詳細ページのモーダル
----------------------------------------------- */
.ec-modal {
  display: none;
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, .6);
  z-index: 1500;
}

#ec-modal-checkbox {
  opacity: 0;
}

.ec-modal-overlay-close {
  width: 100%;
  height: 100vh;
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  text-indent: -9999px;
  z-index: 1500;
}

.ec-modal-overlay {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.ec-modal-wrap {
  width: 80%;
  max-width: 550px;
  margin: 0 auto;
  padding: 30px 8% 40px;
  background-color: #ffffff;
  border-radius: 10px;
  position: relative;
  z-index: 1600;
}

@media screen and (max-width: 768px) {
  .ec-modal-wrap {
    -webkit-transform: translateY(-80px);
            transform: translateY(-80px);
  }
}

.ec-modal-close {
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50px;
  background-color: #008d00;
  position: absolute;
  right: -15px;
  top: -15px;
}

.ec-modal-close span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.ec-modal-close span::before,.ec-modal-close span::after {
  content: "";
  display: block;
  background-color: #ffffff;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.ec-modal-close span::before {
  width: 2px;
  height: 10px;
}

.ec-modal-close span::after {
  width: 10px;
  height: 2px;
}

#ec-modal-header {
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 20px;
}

.ec-modal-box .ec-role .c-btn {
  margin: 0 0 20px;
}

.ec-modal-box .ec-role label {
  display: block;
  text-align: center;
  font-weight: bold;
  color: #008d00;
  font-size: 13px;
  font-size: 1.3rem;
}

/* faq よくあるご質問
----------------------------------------------- */
.p-faq {
  padding: 0 5%;
}

@media screen and (min-width: 1030px) {
  .p-faq {
    padding: 0 50px;
  }
}

.p-faq_index {
  margin: 0 0 8%;
}

@media screen and (min-width: 769px) {
  .p-faq_index {
    margin: 0 0 70px;
  }
}

.p-faq_index_ttl {
  margin: 0 0 10px;
  line-height: 1;
}

.p-faq_index_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (min-width: 769px) {
  .p-faq_index_list {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}

.p-faq_index_item {
  width: calc((100%/3) - 5px);
  border-radius: 5px;
  border: solid 1px #cccccc;
}

@media screen and (min-width: 769px) {
  .p-faq_index_item {
    max-width: 220px;
    margin: 0 10px 0 0;
  }
}

.p-faq_index_item a {
  display: block;
  padding: 10px 10px 25px;
  text-align: center;
  line-height: 1.5;
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: bold;
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-faq_index_item a {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px;
    font-weight: normal;
  }
}

.p-faq_index_item a::after {
  content: "";
  display: block;
  width: 9px;
  height: 5px;
  background: url(../images/common/arrow_down_black.png) center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 12px;
  margin: auto;
}

@media screen and (min-width: 769px) {
  .p-faq_index_item a::after {
    right: 20px;
    left: auto;
    bottom: 0;
    top: 0;
  }
}

@media screen and (min-width: 769px) {
  .p-faq_index_item br {
    display: none;
  }
}

.p-faq_block {
  margin: 0 0 10%;
}

@media screen and (min-width: 1030px) {
  .p-faq_block {
    margin: 0 0 80px;
  }
}

.p-faq_block .c-ttl {
  margin: 0 0 25px;
}

.p-faq_block .c-ttl .c-ttl_txt {
  color: #008d00;
}

.p-faq_item {
  padding: 0 4%;
  background-color: #f5f7f8;
  border-radius: 10px;
}

.p-faq_item:not(:last-child) {
  margin: 0 0 3%;
}

@media screen and (min-width: 769px) {
  .p-faq_item:not(:last-child) {
    margin: 0 0 20px;
  }
}

@media screen and (min-width: 769px) {
  .p-faq_item {
    padding: 0 30px;
  }
}

.p-faq_item dl dt {
  padding: 20px 25px 20px 25px;
  font-weight: bold;
  line-height: 1.5;
  position: relative;
  cursor: pointer;
}

@media screen and (min-width: 769px) {
  .p-faq_item dl dt {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 30px 25px 30px 25px;
  }
}

.p-faq_item dl dt::before,.p-faq_item dl dt::after {
  content: "";
  display: block;
  position: absolute;
}

.p-faq_item dl dt::before {
  width: 16px;
  height: 19px;
  background: url(../images/common/faq_q.png) center center no-repeat;
  background-size: 100% auto;
  left: 0;
}

.p-faq_item dl dt::after {
  width: 20px;
  height: 20px;
  background: url(../images/common/faq_down.png) center center no-repeat;
  background-size: 100% auto;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: -webkit-transform cubic-bezier(.165, .84, .44, 1) .5s;
          transition: -webkit-transform cubic-bezier(.165, .84, .44, 1) .5s;
          transition:         transform cubic-bezier(.165, .84, .44, 1) .5s;
          transition:         transform cubic-bezier(.165, .84, .44, 1) .5s, -webkit-transform cubic-bezier(.165, .84, .44, 1) .5s;
}

.p-faq_item dl dt.is-on::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.p-faq_item dl dd {
  display: none;
  margin: 0 0 0;
  padding: 20px 25px 30px 25px;
  border-top: solid 1px #e0e2e3;
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-faq_item dl dd {
    padding: 30px 25px 50px 25px;
  }
}

.p-faq_item dl dd::before {
  content: "";
  display: block;
  position: absolute;
  width: 15px;
  height: 19px;
  background: url(../images/common/faq_a.png) center center no-repeat;
  background-size: 100% auto;
  left: 0;
}

.p-faq_item dl dd > p {
  margin: 0 0 20px;
}

.p-faq_item dl dd .c-btn {
  max-width: 300px;
}

.p-faq_item_orderFax .c-companyAddr {
  display: none;
}

/* guide ご利用ガイド
----------------------------------------------- */
.p-guide {
  padding: 0 5%;
}

@media screen and (min-width: 1030px) {
  .p-guide {
    padding: 0 50px;
  }
}

.p-guide_list .p-lineBox:not(:last-child) {
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: dotted 1px #d8d8d8;
}

@media screen and (min-width: 769px) {
  .p-guide_list .p-lineBox {
    margin: 0 0 30px;
    padding: 0 0 30px;
  }
}

.p-guide_list .c-ttl_txt {
  font-size: 17px;
  font-size: 1.7rem;
}

.p-guide_item_txt {
  margin: 0 0 20px;
}

.p-guide_item dl {
  margin: 0 0 20px;
}

.p-guide_item dl dt {
  margin: 0 0 5px;
  line-height: 1.5;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
}

.p-guide_item dl dd p:not(:last-child) {
  margin: 0 0 10px;
}

.p-guide_item table {
  width: 100%;
  max-width: 740px;
  margin: 0 0 20px;
}

.p-guide_item table tr {
  border-bottom: solid 1px white;
}

.p-guide_item table th,.p-guide_item table td {
  vertical-align: middle;
  line-height: 1.5;
}

.p-guide_item table th {
  padding: 15px 10px;
  background-color: #54a52d;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  border-right: solid 1px white;
  white-space: nowrap;
}

.p-guide_item table td {
  padding: 15px 20px;
  background-color: #f5f7f8;
}

.p-guide_item-about_name {
  font-weight: bold;
  font-size: 15px;
  font-size: 1.5rem;
}

.p-guide_item-about_name {
  font-weight: bold;
  font-size: 15px;
  font-size: 1.5rem;
}

.p-guide_item-about_note {
  margin: 5px 0 0;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.5;
}

.p-guide_item-pay table th {
  width: 145px;
  line-height: 1.5;
}

@media screen and (max-width: 600px) {
  .p-guide_item-pay table th {
    width: 40%;
  }
}

.p-guide_item-pay table th span {
  display: inline-block;
  line-height: inherit;
}

.p-guide_item-deliv .txt-cap {
  margin: 0 0 5px;
  line-height: 1.5;
}

.p-guide_item_withPic {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 740px;
  margin: 0 0 20px;
}

.p-guide_item_withPic figure {
  display: block;
  width: 50%;
  max-width: 315px;
  padding: 0 5% 0 0;
}

@media screen and (min-width: 769px) {
  .p-guide_item_withPic figure {
    padding: 0 30px 0 0;
  }
}

.p-guide_item_withPic p {
  -webkit-box-flex: 1;
  -ms-flex: 1;
      flex: 1;
}

@media screen and (max-width: 768px) {
  .p-guide_item_withPic p {
    width: 50%;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.5;
  }
}

table.yamato th:nth-child(1) {
  width: 200px;
}

@media screen and (max-width: 600px) {
  table.yamato th:nth-child(1) {
    width: 40%;
  }
}

.p-guide_shippingNote {
  width: 100%;
  max-width: 740px;
  margin: 0 0 20px;
  padding: 20px;
  border: solid 1px #e60012;
  border-radius: 5px;
}

.p-guide_shippingNote p {
  color: #e60012;
}

.p-guide_accountTable th,.p-guide_accountTable td {
  padding: 3px 10px !important;
  font-size: 12px !important;
}

.p-guide_accountTable th {
  width: 130px !important;
  background-color: #7d7d7d !important;
  font-weight: normal !important;
}

@media screen and (max-width: 768px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .u-sp {
    display: block;
  }
}

.u-pdT5 {
  padding-top: 5px !important;
}

.u-pdT10 {
  padding-top: 10px !important;
}

.u-pdT15 {
  padding-top: 15px !important;
}

.u-pdT20 {
  padding-top: 20px !important;
}

.u-pdT25 {
  padding-top: 25px !important;
}

.u-pdT30 {
  padding-top: 30px !important;
}

.u-pdT35 {
  padding-top: 35px !important;
}

.u-pdT40 {
  padding-top: 40px !important;
}

.u-pdT45 {
  padding-top: 45px !important;
}

.u-pdT50 {
  padding-top: 50px !important;
}

.u-pdT55 {
  padding-top: 55px !important;
}

.u-pdT60 {
  padding-top: 60px !important;
}

.u-pdT65 {
  padding-top: 65px !important;
}

.u-pdT70 {
  padding-top: 70px !important;
}

.u-pdT75 {
  padding-top: 75px !important;
}

.u-pdT80 {
  padding-top: 80px !important;
}

.u-pdB5 {
  padding-bottom: 5px !important;
}

.u-pdB10 {
  padding-bottom: 10px !important;
}

.u-pdB15 {
  padding-bottom: 15px !important;
}

.u-pdB20 {
  padding-bottom: 20px !important;
}

.u-pdB25 {
  padding-bottom: 25px !important;
}

.u-pdB30 {
  padding-bottom: 30px !important;
}

.u-pdB35 {
  padding-bottom: 35px !important;
}

.u-pdB40 {
  padding-bottom: 40px !important;
}

.u-pdB45 {
  padding-bottom: 45px !important;
}

.u-pdB50 {
  padding-bottom: 50px !important;
}

.u-pdB55 {
  padding-bottom: 55px !important;
}

.u-pdB60 {
  padding-bottom: 60px !important;
}

.u-pdB65 {
  padding-bottom: 65px !important;
}

.u-pdB70 {
  padding-bottom: 70px !important;
}

.u-pdB75 {
  padding-bottom: 75px !important;
}

.u-pdB80 {
  padding-bottom: 80px !important;
}

.u-mgT5 {
  margin-top: 5px !important;
}

.u-mgT10 {
  margin-top: 10px !important;
}

.u-mgT15 {
  margin-top: 15px !important;
}

.u-mgT20 {
  margin-top: 20px !important;
}

.u-mgT25 {
  margin-top: 25px !important;
}

.u-mgT30 {
  margin-top: 30px !important;
}

.u-mgT35 {
  margin-top: 35px !important;
}

.u-mgT40 {
  margin-top: 40px !important;
}

.u-mgT45 {
  margin-top: 45px !important;
}

.u-mgT50 {
  margin-top: 50px !important;
}

.u-mgT55 {
  margin-top: 55px !important;
}

.u-mgT60 {
  margin-top: 60px !important;
}

.u-mgT65 {
  margin-top: 65px !important;
}

.u-mgT70 {
  margin-top: 70px !important;
}

.u-mgT75 {
  margin-top: 75px !important;
}

.u-mgT80 {
  margin-top: 80px !important;
}

.u-mgB5 {
  margin-bottom: 5px !important;
}

.u-mgB10 {
  margin-bottom: 10px !important;
}

.u-mgB15 {
  margin-bottom: 15px !important;
}

.u-mgB20 {
  margin-bottom: 20px !important;
}

.u-mgB25 {
  margin-bottom: 25px !important;
}

.u-mgB30 {
  margin-bottom: 30px !important;
}

.u-mgB35 {
  margin-bottom: 35px !important;
}

.u-mgB40 {
  margin-bottom: 40px !important;
}

.u-mgB45 {
  margin-bottom: 45px !important;
}

.u-mgB50 {
  margin-bottom: 50px !important;
}

.u-mgB55 {
  margin-bottom: 55px !important;
}

.u-mgB60 {
  margin-bottom: 60px !important;
}

.u-mgB65 {
  margin-bottom: 65px !important;
}

.u-mgB70 {
  margin-bottom: 70px !important;
}

.u-mgB75 {
  margin-bottom: 75px !important;
}

.u-mgB80 {
  margin-bottom: 80px !important;
}
