body {
  /*font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;*/
  position: relative;
  /*font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;*/
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", verdana, sans-serif !important;
  scroll-behavior: smooth;
}

main {
  background-color: #ffffff;
  /*margin-bottom: 100px;*/
}


[v-cloak] {
  display:none;
}

.container-fluid {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 30px;
  padding-left: 30px;
}

.login-container {
  padding: 24px 0 124px 0;
}

.signup-container {
  padding: 24px 0 124px 0;
}

.mypage-container {
  padding: 24px 0 124px 0;
}

.kiyaku {
  margin: 20px 0 30px 30px;
  border: solid 1px #ccc;
  width: 90%;
  height: 350px;
  overflow: auto;
  padding: 20px;
}


.right-arrow-icon {
  display: block;
  position: absolute;
  top: 0;
  right: 27px;
  bottom: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  transform: translateY(-2px) rotate(-45deg);
  transition: transform 0.2s ease;
}

.navbar-status {
  font-size: 14px;
  text-align: right;
  background-color: #EFEFEF;
}

.navbar-brand {
  font-size: 30px;
  font-weight: bold;
}

.navbar-brand img {
  width: 270px;
}

.navbar-toggler {
  border: none;
  padding-left: 18px;
  /*padding-right: 18px;*/
}

.navbar-light .navbar-toggler-icon {
  background-image: url("/images/icons/toggle.svg");
  width: 30px;
  height: 20px;
}

#overlay {
  position: absolute;
  width: 100%;
  /*height: 100%;*/
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255,255,255,0.7);
  z-index: 9998;
  display: none;
  /*display: block;*/
}

.overlay-show {
  display: block !important;
}

#sideToggleBar {
  position: absolute;
  right: 0;
  width: 290px;
  z-index: 9999;
  padding: 20px;
  min-height: 100%;
  white-space: nowrap;
  background: #F7F7F7;
  text-align: left;
  /*height: 100%;*/
  display: block;
  box-shadow: 0 0 3px rgba(0,0,0,0.1);
}

#sideToggleBar .status-bar {
  font-size: 16px; text-align: right;
  white-space: pre-line;
}

#sideToggleBar .button-container {
  display: flex;
  margin: 18px 0 10px 0;
}
#sideToggleBar .button-container div {
  width: 49%;
  text-align: center;
  display: inline-block;
}

#sideToggleBar .button-container div + div {
  margin-left: 2%;
}

#sideToggleBar .button-container div.one-block {
  width: 100%;
}

.btn-toggle-mypage {
  font-size: 16px;
  color: #ffffff;
  background-color: #FF0000;
  display: inline-block;
  width: 100%;
  padding: 15px 0;
  border-radius: 4px;
}
.btn-toggle-mypage:hover,
.btn-toggle-mypage:focus {
  color: #ffffff;
  text-decoration: none;
  opacity: 0.5;
}

.btn-toggle-login {
  background-color: #F7F7F7;
  border: 1px solid #B6B6B6;
  display: inline-block;
  text-align: center;
  padding: 15px 0;
  color: #000000;
  width: 100%;
  border-radius: 4px;
}

.btn-toggle-login:hover,
.btn-toggle-login:focus {
  color: #000000;
  text-decoration: none;
  opacity: 0.5;
}

#sideToggleBar .button-container2 {
  margin-bottom: 32px;
}

#sideToggleBar .button-container2 div {
  font-size: 16px;
  width: 100%;

}

#sideToggleBar .button-container2 div a {
  padding: 12px 0;
  display: block;
  border-radius: 3px;
  padding-left: 100px;
  font-weight: bold;
}

.btn-toggle-upload {
  color: #000000;
  background-color: #F7F7F7;
  border: 1px solid #B6B6B6;
  background-image: url("/images/icons/upload.svg");
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: 60px;
}

.btn-toggle-upload:hover,
.btn-toggle-upload:focus {
  color: #000000;
  text-decoration: none;
  opacity: 0.5;
}


.btn-toggle-point {
  background-color: #F08C1E;
  border: 1px solid #F08C1E;
  color: #ffffff;
  background-image: url("/images/icons/point.svg");
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: 60px;
}

.btn-toggle-point:hover,
.btn-toggle-point:focus {
  color: #ffffff;
  text-decoration: none;
  opacity: 0.5;
}


#sideToggleBar .button-container2 div + div {
  margin-top: 7px;
}

.nav-item a {
  font-size: 16px !important;
}

.btn-header-login {
  padding: 6px 23px !important;
  border: 1px solid #EFEFEF;
  border-radius: 4px;
}
.btn-header-login-mypage {
  margin-left: 10px;
}

.btn-header-mypage {
  padding: 6px 23px !important;
  color: #ffffff !important;
  border-radius: 4px;
  background-color: #FF0000;
  border: 1px solid #FF0000;
  margin-left: 10px;
}

.btn-header-login:hover,
.btn-header-login-mypage:hover,
.btn-header-mypage:hover {
  opacity: 0.5;
}

.header-search-box {
  position: relative;
  margin-left: 260px;
}

.header-search-box input[type=text] {
  width: 490px;
  background-color: #EDEFF1;
  border: 1px solid #EDEFF1;
  height: 41px;
  padding: 15px 63px 15px 12px;
  font-size: 19px;
  border-radius: 4px 0 0 4px;
}

.header-search-box, .header-search-buttons {
  margin-top: 5px;
}
@media (max-width: 1440px) {
  .header-search-box {
      margin-left: 180px;
  }
  .header-search-box input[type=text] {
      width: 430px;
  }
}

@media (max-width: 1200px) {
  .header-search-box {
      margin-left: 120px;
  }
  .header-search-box input[type=text] {
      width: 310px;
  }
}

@media (max-width: 992px) {
  .header-search-box {
      margin-left: 20px;
  }

  .header-search-box input[type=text] {
      width: 230px;
  }

}

@media (max-width: 768px) {
  .navbar-brand {
      font-size: 25px;
  }

  .header-search-box {
      display: none;
  }

  .btn-header-mypage {
      display: none;
  }

  .navbar-status {
      display: none;
  }
}


.navbar-header {
  padding: 0;
  background: #F4F4F4;
  box-shadow: 0 0 3px rgb(0 0 0 /20%);
}

.navbar-header a {
  font-size: 14px !important;
  color: #000000;
  padding-top: 6px; padding-bottom: 6px;
}

.navbar-header  ul.mr-auto {
  padding-left: 42px;
}

.navbar-header  ul.mr-auto li {
  padding: 0 24px;
}

.navbar-nav {
  flex-direction: row;
}

.navbar-sp-header {
  display: none;
}

@media (max-width: 768px) {
  .navbar-sp-header {
      display: block;
  }
  .navbar-sp-actions {
      display: block;
      background-color: #EFEFEF;
      padding: 0 8px;
  }

  .navbar-sp-actions .nav-link {
      text-align: center;
      font-size: 11px !important;
      color: #333 !important;
      padding: 0;
  }

  .navbar-sp-actions .nav-link:hover,.navbar-sp-actions .nav-link:visited {
      color: #666;
  }

  .navbar-sp-actions span.span-header-point {
      background-image: url(/images/icons/point2.svg);
      width: 18px;
      height: 18px;
      display: block;
      background-repeat: no-repeat;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 6px;
  }

  .navbar-sp-actions span.span-header-favorite {
      background-image: url(/images/icons/list.svg);
      width: 18px;
      height: 18px;
      display: block;
      background-repeat: no-repeat;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 6px;
  }

  .navbar-sp-actions span.span-header-purchase {
      background-image: url(/images/icons/purchase.svg);
      width: 18px;
      height: 18px;
      display: block;
      background-repeat: no-repeat;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 6px;
  }

  .nav-sp-btn-header-cart {
      padding: 0;
      vertical-align: top;
      float: right;
  }
  .sp-btn-header-cart {
      font-size: 17px;
      line-height: 22px;
      padding: 14px 20px 14px 35px !important;
      color: #ffffff !important;
      background-color: #F08C1E;
      border-radius: 3px;
      font-weight: bold;
      text-decoration: none;
      background-image: url("/images/icons/cart.svg");
      background-repeat: no-repeat;
      background-size: 22px;
      background-position: 10px;
      display: block;
  }

  .sp-btn-header-cart:hover {
      text-decoration: none;
      opacity: 0.5;
  }

  .navbar-sp-actions ul {
      padding: 0;
      width: 100%;
      margin-bottom: 0;
  }
  .navbar-sp-actions li {
      list-style: none;
      display: inline-block;
  }
  .navbar-sp-actions li.sp-nav-link {
      width: calc((100% - 172px) / 3);
      padding: 5px 0 0 5px;
      vertical-align: bottom;
      height: 47px;
  }

  .sp-nav-link + .sp-nav-link {
      border-left: 1px solid #D7D7D7;
  }

  .navbar-sp-status {
      text-align: right;
      font-size: 16px;
      height: 30px;
      background-color: #ffffff;
      padding-top: 2px;
      padding-right: 8px;
  }

  .navbar-sp-search {
      padding: 6px;
      background-color: #ffffff;
  }

  .sp-header-search-box {
      position: relative;
      width: 100%;
  }

  .sp-header-search-box input[type=text] {
      width: 100%;
      background-color: #EAECEE;
      border: 1px solid #EAECEE;
      height: 48px;
      padding: 15px 12px 15px 40px;
      font-size: 19px;
      border-radius: 4px;
      background-image: url("/images/icons/search_sp.svg");
      background-repeat: no-repeat;
      background-size: 16px;
      background-position: 12px;
      color: #ACACAC;
  }
}

.link-header-ranking {
  background-image: url(/images/icons/ranking.svg);
  background-repeat: no-repeat;
  background-size: 20px;
  padding-left: 28px !important;
  background-position: left center;
}

.link-header-point {
  background-image: url(/images/icons/point2.svg);
  background-repeat: no-repeat;
  background-size: 18px;
  padding-left: 24px !important;
  background-position: left center;
  margin-top: 6px; margin-bottom: 6px;
}

.link-header-favorite {
  background-image: url(/images/icons/list.svg);
  background-repeat: no-repeat;
  background-size: 18px;
  padding-left: 24px !important;
  background-position: left center;
}

.link-header-purchase {
  background-image: url(/images/icons/purchase.svg);
  background-repeat: no-repeat;
  background-size: 18px;
  padding-left: 24px !important;
  background-position: left center;
  margin-top: 6px; margin-bottom: 6px;
}


.navbar-header .ml-auto li.nav-item {
  padding: 0 15px;
  border-right: 1px solid #B0B0B0;

  height: 38px;
}

.navbar-header .ml-auto a {
  font-size: 13px !important;
  line-height: 1.0;
}

.header-search-box input[type=text]:focus {
  border: 1px solid #EDEFF1 !important;
  outline: none;
}

.header-search-box input[type=submit],
.header-search-box button {
  background-color: #444444;
  background-image: url("/images/icons/search.svg");
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: center center;
  width: 51px; height: 41px;
  position: absolute;
  right: 0; top: 0;
  border-radius: 0 4px 4px 0;
}


.category-container label {
  font-size: 22px; padding-left: 6px;
}

.category-container label a {
  color: #333;
  text-decoration: none;
}

.category-container label a:hover {
  text-decoration: none;
}

.nav-btn-header-cart {
  padding: 0 15px;
}

.btn-header-cart {
  font-size: 16px;
  line-height: 28px;
  padding: 12px 15px 13px 50px !important;
  color: #ffffff !important;
  background-color: #F08C1E;
  border-radius: 3px;
  font-weight: bold;
  text-decoration: none;
  background-image: url("/images/icons/cart.svg");
  background-repeat: no-repeat;
  background-size: 22px;
  background-position: 14px;
  width: 150px;
  display: inline-block;
}

.btn-header-cart:hover, .btn-header-cart:focus {
  text-decoration: none;
  opacity: 0.5;
}

@media (max-width: 1200px) {
  .navbar-header ul.mr-auto {
      padding-left: 0;
  }

  .navbar-header ul.mr-auto li {
      padding: 0 12px;
  }


  .navbar-header .ml-auto li.nav-item {
      padding: 0 12px;
  }

  .nav-btn-header-cart {
      padding: 6px;
  }

  .btn-header-cart {
      padding: 10px 25px 10px 40px !important;
  }
}

@media (max-width: 992px) {
  .navbar-header {
      display: none;
  }
}

#page-container {
  display: flex;
}

#side {
  width: 220px;
  display: block;
  box-shadow: 0 0 3px rgb(0 0 0 / 20%);
}

#main {
  display: block;
  width: calc(100% - 220px);
}

@media (max-width: 768px) {
  #side {
      display: none;
  }
  #main {
      width: 100%;
  }
}

#mypage-layout {
  display: flex;
}


#mypage-side {
  width: 220px;
  display: block;
}

#mypage-main {
  display: block;
  width: calc(100% - 220px);
}


.mypage-title {
  font-size: 27px;
  margin-bottom: 18px;
}

@media (max-width: 768px) {
  #mypage-layout {
      display: block;
  }

  #mypage-side {
      width: 100%;
      display: none;
  }
  #mypage-main {
      width: 100%;

  }
  .mypage-title {
      padding-left: 15px;
      padding-right: 15px;
  }
}





.top-slider {
  padding: 40px 60px;
}

.section-item {
  padding: 45px 40px 15px 40px;
  overflow: hidden;
}

.section-item h2 {
  font-size: 22px;
  margin-bottom: 12px;
}

@media (max-width: 768px) {
  .section-item h2 {
      /*margin-left: 15px;*/
      font-size: 20px;
  }
}

.section-item h2 span.section-item-link {
  float: right;
  font-size: 16px;
  margin-top: 8px;
  margin-right: 30px;
}

.section-item h2 span.section-item-link a {
  color: #000;
  text-decoration: underline;
}

.section-item h2 span.section-item-link a:hover,
.section-item h2 span.section-item-link a:visited {
  color: #000;
}

.section-item h2 span.section-item-link a:hover {
  text-decoration: none;
}

@media (max-width: 768px) {
  .section-item h2 span.section-item-link {
      margin-right: 18px;
      margin-top: 0;
  }

  .section-item h2 span.section-item-link a {
      text-decoration: none;
  }

  .section-item h2 span.section-item-link a:after {
      content: '>';
      margin-left: 12px;
      font-size: 20px;
  }
}


@media (max-width: 1440px) {
  .top-slider {
      padding: 30px 40px;
  }

  .section-item {
      padding: 32px 30px 12px 30px;
  }
}
@media (max-width: 1200px) {
  .top-slider {
      padding: 20px 30px;
  }

  .section-item {
      padding: 23px 20px 8px 20px;
  }
}

@media (max-width: 768px) {
  .top-slider {
      padding: 0 0 70px 0;
  }

  .section-item {
      padding: 20px 8px 55px 8px;
  }

}

.top-page-container {
  padding-bottom: 280px;
  position: relative;
}

@media (max-width: 768px) {
  .top-page-container {
      margin-bottom: 0;
      padding-bottom: 0;
  }
}


.list-page-container {
  padding-top: 60px;
  position: relative;
  padding-bottom: 240px;
}

@media (max-width: 768px) {
  .list-page-container {
      padding-top: 0;
      padding-bottom: 0;
  }
}

.footer-seller-container {
  height: 250px;
  padding-top: 110px;
  padding-bottom: 60px;
  background-image: url(/images/backgrounds/footer-seller.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.footer-seller-title {
  font-size: 36px; line-height: 38px;
  color: #ffffff; font-weight: bold;
  margin-bottom: 12px;
}

.footer-seller-introduction {
  font-size: 17px; line-height: 32px;
  color: #ffffff;
}

.footer-seller-upload {
  width: 310px; height: 56px;
  font-size: 18px; line-height: 24px;
  padding: 16px 0;
  border-radius: 30px;
  display: inline-block;
  text-align: center;
  color: #000;
  background-color: #F4F4F4;
  position: relative;
  margin-right: 24px;
}

.footer-seller-upload:hover,
.footer-seller-upload:visited {
  color: #000;
  opacity: 0.5;
}

.footer-seller-upload:hover {
  text-decoration: none;
  opacity: 0.5;
}

.footer-seller-upload .right-arrow-icon {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

.footer-seller-guide {
  color: #fff;
  text-decoration: underline;
  vertical-align: bottom;
  font-size: 16px;
}

.footer-seller-guide:hover,
.footer-seller-guide:visited {
  color: #ffffff;
}

.footer-seller-guide:hover {
  text-decoration: none;
}

.footer-service-container {
  background: linear-gradient(90deg, #afd6f3 60%, #8ec1ec 40%);
  font-size: 14px;
}

.footer-service-container .footer-service-block {
  padding-top: 64px;
  height: 300px;
}

.footer-service-block-contact {
  text-align: center;
}

.footer-service-title {
  font-size: 26px; line-height: 28px;
  font-weight: bold;
  margin-bottom: 30px;
}

.footer-service-container p {
  margin-bottom: 16px;
}

.footer-service-container a,
.footer-service-container a:hover,
.footer-service-container a:visited {
  color: #000;
}

.footer-service-sns-links img {
  width: 25px; margin-right: 8px;
}

.footer-service-contact {
  max-width: 310px;
  background: #ffffff;
  position: relative;
  text-align: center;
  display: block;
  font-size: 16px;
  line-height: 18px;
  padding: 19px 0;
  margin-left: auto;
  margin-right: auto;
}

.footer-service-contact .right-arrow-icon {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

.footer-service-contact:hover {
  text-decoration: none;
  opacity: 0.5;
}

.footer-info-container {
  background: #333e90;
  height: 105px;
  color: #ffffff;
  padding: 27px 0;

}
.footer-info-container .footer-info-links {
  margin-bottom: 10px;
}

.footer-info-container .footer-info-links a {
  color: #ffffff; font-size: 13px;
  margin-right: 24px;
}

.footer-info-container .footer-info-links a:hover,
.footer-info-container .footer-info-links a:visited {
  color: #ffffff;
}

.footer-info-logo {
  color: #ffffff;
  font-size: 22px;
  line-height: 26px;
  margin-right: 30px;
  font-weight: bold;
}

.footer-info-logo img {
  width: 134px;
}

.footer-info-introduction {
  font-size: 13px;
  color: #ffffff;
}

.footer-info-desc {
  margin-bottom: 5px;
}

.footer-info-ssl {
  font-size: 13px;
  line-height: 18px;
  color: #ffffff;
  margin-top: auto;
  margin-left: -24px;
  margin-right: -24px;
  position: relative;
}

.footer-info-ssl img {
  width: 51px;
  margin-right: 12px;
  float: left;
}

.footer-info-ssl span {
  position: absolute;
  top: 8px;
}

@media (max-width: 1440px) {
  .footer-service-container {
      background: linear-gradient(90deg, #afd6f3 64%, #8ec1ec 36%);
  }
}

@media (max-width: 1200px) {
  .footer-service-container {
      background: linear-gradient(180deg, #afd6f3 50%, #8ec1ec 50%);
  }

  .footer-seller-upload {
      display: block;
  }

  .footer-seller-guide {
      display: block;
      font-size: 14px;
      text-align: center;
      margin-top: 18px;
      width: 310px;
  }

  .footer-info-ssl {
      margin-left: 18px;
  }
}

@media (max-width: 992px) {
  .footer-seller-introduction {
      font-size: 15px;
  }

  .footer-info-container .footer-info-links a {
      font-size: 11px; margin-right: 12px;
  }

  .footer-info-ssl {
      font-size: 12px;
  }

  .footer-info-ssl span {
      top: 0;
  }
}


.footer-pc {
  display: block;
}

.footer-sp {
  display: none;
}

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

  .footer-sp {
      display: block;
  }

  .footer-sp h2.footer-sp-title {
      font-size: 30px;
      margin-bottom: 15px;
  }

  .footer-sp p.footer-sp-info {
      font-size: 14px;
      margin-bottom: 15px;
  }

  .footer-sp-seller-container {
      text-align: center;
      padding: 50px 0;
      background: #ffffff;
      border-top: 1px solid #B0B0B0;
      /*border-bottom: 1px solid #B0B0B0;*/
  }

  .footer-sp-btn {
      font-size: 19px;
      line-height: 24px;
      padding: 20px 0;
      display: block;
      max-width: 300px;
      margin-left: auto;
      margin-right: auto;
      position: relative;
      border-radius: 3px;
  }

  .footer-sp-btn, .footer-sp-btn:hover, .footer-sp-btn:visited {
      color: #000;
  }

  .footer-sp-btn .right-arrow-icon {
      border-right: 2px solid #000;
      border-bottom: 2px solid #000;
  }

  .footer-sp-btn + .footer-sp-seller-btn {
      margin-top: 8px;
  }

  .footer-sp-seller-btn {
      background-color: #F4F4F4;
  }
  .footer-sp-seller-btn:hover {
      text-decoration: none;
      opacity: 0.5;
  }
  .footer-sp-contact-btn {
      background-color: #FFFFFF;
      border: 1px solid #B0B0B0;
  }

  .footer-sp-contact-btn:hover {
      text-decoration: none;
      opacity: 0.5;
  }


  .footer-sp-contact {
      text-align: center;
      padding: 50px 0;
      background: #F4F4F4;
      border-top: 1px solid #B0B0B0;
      border-bottom: 1px solid #B0B0B0;
  }

  .footer-sp-service {
      background: #F4F4F4;
      padding: 20px 12px;
  }

  .footer-sp-service h3 {
      font-size: 20px;
      padding-left: 8px;
      line-height: 24px;
      margin-bottom: 12px;
  }

  .footer-sp-service .footer-sp-link {
      display: block;
      font-size: 16px;
      line-height: 20px;
      padding: 12px 20px;
      background: #ffffff;
      position: relative;
      border-radius: 3px;
  }

  .footer-sp-service .footer-sp-link, .footer-sp-service .footer-sp-link:hover, .footer-sp-service .footer-sp-link:visited {
      color: #000000;
      text-decoration: none;
  }

  .footer-sp-link+.footer-sp-link {
      margin-top: 4px;
  }

  .footer-sp-service .footer-sp-link .right-arrow-icon {
      border-right: 2px solid #000;
      border-bottom: 2px solid #000;
  }

  .footer-sp-ssl {
      height: 88px;
      background-color: #FFFFFF;
      position: relative;
  }

  .footer-sp-ssl-img-container {
      float: left;
      width: 125px;
  }

  .footer-sp-ssl-img-container img {
      margin: 28px 12px;
  }

  .footer-sp-ssl-text-container {
      display: inline-block;
      max-width: calc(100% - 205px);
      font-size: 10px;
      vertical-align: middle;
      position: absolute;
      top: 50%;
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  }


  .footer-sp-logo {
      color: #ffffff;
      background-color: #333e90;
      /* background-color: #000; */
      text-align: center;
      padding: 16px 0;
  }

  .footer-sp-logo-title {
      font-size: 23px;
      margin-bottom: 8px;
      font-weight: bold;
  }

  .footer-sp-logo-title img {
      height: 40px;
  }

  .footer-sp-logo-info {
      font-size: 15px;
      margin-bottom: 0;
  }
}

.icon {
  display: inline-block;
  color: #333;
  vertical-align: middle;
}

.icon {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 1em;
  overflow: hidden;
  font-size: 1em;
  text-align: left;
  text-indent: 100%;
  white-space: nowrap;
}

.icon:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  line-height: 1;
  text-align: center;
  text-indent: 0;
}

.font-arrow-left:before {
  content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M29.84,35.46a1.14,1.14,0,0,1-.72-.24L9.33,21.09A1.35,1.35,0,0,1,8.78,20a1.33,1.33,0,0,1,.55-1.09L29.13,4.77a1.79,1.79,0,0,1,.76-.23A1.48,1.48,0,0,1,31,5.06a1.21,1.21,0,0,1,.27,1,1.26,1.26,0,0,1-.57.89L12.38,20l18.28,13A1.38,1.38,0,0,1,31,34.92,1.49,1.49,0,0,1,29.84,35.46Z' style='fill:%23333'/%3E%3C/svg%3E");
}

.font-arrow-right:before {
  content: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M10.07,35.51A1.47,1.47,0,0,1,9,35a1.23,1.23,0,0,1-.27-1,1.3,1.3,0,0,1,.57-.9L27.65,20,9.3,6.9A1.55,1.55,0,0,1,8.77,6,1.18,1.18,0,0,1,9,5a1.48,1.48,0,0,1,1.14-.55,1.14,1.14,0,0,1,.72.24L30.71,18.91A1.33,1.33,0,0,1,31.26,20a1.37,1.37,0,0,1-.55,1.1L10.84,35.29A2,2,0,0,1,10.07,35.51Z' style='fill:%23333'/%3E%3C/svg%3E");
}

.font-arrow-left, .font-arrow-right {
  margin-bottom: 2px;
}

.pagination {
  margin: 20px 0;
  font-size: 15px;
  text-align: center;
  display: block;
}

.pagination__inner {
  display: inline-block;
}

.pagination__num {
  display: inline-block;
  padding: 7px 20px;
}

.pagination__num.current {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 8px 0 0;
  margin: 0 13px;
  color: #fff;
  background-color: #666;
  border-radius: 50%;
}

.pagination__num.current:hover {
  opacity: 1;
}

.pagination__next, .pagination__prev {
  vertical-align: middle;
}

.pagination__next .icon, .pagination__prev .icon {
  margin-bottom: 4px;
}

.pagination a {
  color: inherit;
}

.pagination .icon:first-child {
  margin-right: 42px;
}

.pagination .icon:last-child {
  margin-left: 42px;
}

.page-search .pagination {
  margin-bottom: 40px;
}

.page-search .pagination__inner {
  margin-top: -10px;
}

.sp-pagination {
  display: none;
}

@media (max-width: 768px) {
  .pagination {
      display: none;
  }

  .sp-pagination {
      display: block;
      margin: 20px 0;
      font-size: 15px;
      text-align: center;
  }

  .sp-pagination a {
      color: inherit;
  }

  .sp-pagination .icon:first-child {
      margin-right: 12px;
  }

  .sp-pagination .icon:last-child {
      margin-left: 12px;
  }

  .pagination__num {
      padding: 7px 10px;
  }
}

.mypage-sidebar {
  width: 100%;
  margin-bottom: 24px;
}
.mypage-sidebar-title {
  font-size: 16px;
  color: white;
  background-color: #333333;
  padding: 12px 28px;
  font-weight: bold;
  width: 100%;
}
.mypage-sidebar-container {
  padding: 15px 0;
  background-color: #4D4D4D;
  width: 100%;
}
.mypage-sidebar-item {
  font-size: 14px;
  color: white;
  padding: 8px 28px;
}
.mypage-sidebar-item a {
  color: white;
  text-decoration: underline;
}

.mypage-sidebar-item a:hover {
  color: white;
  text-decoration: none;
}

.mypage-sidebar-item a:visited {
  color: white;
  text-decoration: underline;
}

.mypage_row{
  margin-left:35px !important;
  margin-right:20px !important;
}

.mypage_row a{
  color:#000000 !important;
  text-decoration:underline;
}
@media screen and (max-width:768px) {
  .mypage_row{
      margin-left:0px !important;
      margin-right:0px !important;
  }

  .mypage_row-pages-table {
      width: 100%;
  }
}

.mypage_row img {
  width: 70px;
}

.mypage_row table {
  min-width: 600px;
}

.mypage_row table th,
.mypage_row table td {
  max-width: 120px;
}

.grid-table th, .grid-table td {
  max-width: 240px;
}

.mypage_row .mypage_index_row table {
  min-width: 0;
}

.mypage-status table {
  width: 100%;
}

@media screen and (max-width:768px) {
  .mypage-status table {
      margin-bottom: 24px;
  }

  .mypage-status table tr td:first-child {
      width: 60%;
  }
}

.mypage_row-account-image {
  text-align: center;
}
.mypage_row-account-image img {
  width: 100%;
}

.mypage_row-account-image p {
  margin-bottom: 6px;
}

.mypage_row-account-container {
  margin-top: 24px;
}
.mypage_row-account-title {
  font-size: 16px;
}

.mypage_row-account-content {
  font-size: 14px;
  margin-left: 18px;
}

.mypage_row-account-link {
  float: right;
}

.mypage_row-account-link a {

}

.mypage_row .card {
  margin-bottom: 24px;
}

.mypage_row-dashboard-title {
  font-size: 15px;
  padding-bottom: 12px;
}

.mypage_row-pages-title {
  font-size: 15px;
  padding-bottom: 12px;
  text-align: center;
  font-weight: bold;
}

.mypage_row-pages-subtitle {
  vertical-align: top;
  padding: 6px;
  font-size: 15px;
}

.mypage_row-pages-link {
  padding: 6px;
}

.mypage_row-pages-link p {
  margin-bottom: 8px;
}

/*.mypage-table a {*/
/*    text-decoration: underline;*/
/*}*/
/*#my-strictly-unique-vue-upload-multiple-images {*/
/*    margin-top: 0 !important;*/
/*}*/

th.th-header {
  background: #F5F6F7;
}

.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none;
}

.pager li {
  display: inline;
}

.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}

.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eee;
}

.pager .next > a,
.pager .next > span {
  float: right;
}

.pager .previous > a,
.pager .previous > span {
  float: left;
}

.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777;
  cursor: not-allowed;
  background-color: #fff;
}

.list-item {
  border: solid 1px lightgrey;
  background-color: #f2f2f2;
  margin-top:2%;
}
.item-content{
  padding: 10px;
  width: 60%;
  border-bottom: solid 1px darkgrey;
}
.item-content tr{
  border-top: solid 1px darkgrey;

}
.item-list{
  padding: 10px;
  /*width: 80%;*/
  /*background-color: #f8fafc;*/
}
.show-scroller{
  overflow: auto;
  height: 400px;
}

.show-scroller a {
  text-decoration: underline;
  color: #337ab7;
}

.item-list tr.partner {
  text-align: right;
}
.fullwidth{
  width: max-content;
}
.padding-top-none{
  padding-top: 0px !important;
}
.send-td{
  text-align: center;
  vertical-align: middle;
}
.title-color{
  color: #718697;
}
.delete-button{
  border: solid 1px lightcoral;
  border-radius: 5px;
  box-shadow: 0px 2px 1px red;
  padding: 0px 3px;
}
.fa-trash-o:before{content:"\f014"}

.delete-button:hover{
  top: 2px;
  box-shadow: none;
  border: solid 1px lightcoral !important;
  border-radius: 5px;
  /*box-shadow: none !important;*/
}
.send-td input{
  background: #abb9d5;
  padding: 10px;
  border-radius: 3px;
  color: white;
  font-weight: bold;
}
.circle-width32{
  width:32px;
  height: 32px;
}
.input-send-message{
  background-color: #f8fafc !important;
}
.circle-width75{
  width:75px;
  height: 75px;
}
.display-table {
  display: table !important;
  margin-bottom: 0 !important;
}
.vertical-top{
  vertical-align: top;
  padding-top: 5px;
}

.img_curcle_icon{
  /*width:75px;*/
  /*height: 75px;*/
  border-radius: 50%;
  box-shadow: 0px 0px 0px 3px #f7f7f7;
}

.detail-items-send{
  border: solid 1px #c2ffc3;
  border-radius: 5px;
  background-color: #c2ffc3;
  width: 60%;
  margin: 5px;
  padding: 10px;
}

.reciver i {
  border: solid #f3fdb5;
  border-width: 1px 15px 15px 0;
  display: inline-block;
  position: relative;
  top: 35px;
  right: -7px;
}
.send i {
  border: solid #c2ffc3;
  border-width: 0px 15px 15px 0;
  display: inline-block;
  position: relative;
  top: 35px;
  right: 8px;
}

.right-arrow {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  padding: 5px;
  float: right;
}
.left-arrow {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  padding: 5px;
  float: left;
}
.detail-items-reciver{
  border: solid 1px #f3fdb5;
  border-radius: 5px;
  background-color: #f3fdb5;
  width: 60%;
  margin: 5px;
  padding: 10px;
}
.border-all-lightgray{
  border: solid 1px lightgray;
}
.message-body{
  width: 80%;
}
.inline-block{
  display: inline-block;
}
.vertical-bottom{
  vertical-align: bottom;
}
@media (max-width: 890px) {
  .message-body{
      width: 100%;
  }
  .detail-items-reciver{
      width: 80%;
  }
  .item-content, .item-list{
      width: 100%;
  }
}

.self .message-detail-image {
  display: none;
}

.message-detail-image {
  border-radius: 25px;
  width: 50px; height: 50px;
  float: left; margin-right: 16px;
}

.message-detail-text {
  max-width: 80%;
}

.self .message-detail-text {
  text-align: left;
  float: right;
  background-color: #ddd;
  padding: 8px;
  border-radius: 4px;
}

.partner {
  overflow: hidden;
}

.partner .message-detail-text {
  float: left;
  padding: 8px;
  border-radius: 4px;
  background-color: #f8fafc;
}

.partner .message-delete-link {
  display: none;
}

.self .message-delete-link {
  display: block;
}

.f14 {
  font-size: 14px;
}

.message-body img {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  margin-top: 10px;
  object-fit: cover;
}

.message-body .self img {
  float: right; margin-left: 10px;
}

.message-body .partner img {
  float: left; margin-right: 10px;
}

.strong-label {
  font-weight: bold;
}

.pc-only {
  display: block;
}
.sp-only {
  display: none;
}

@media (max-width: 768px) {
  .pc-only {
      display: none;
  }
  .sp-only {
      display: block;
  }
}






.icon-status {
  line-height: 20px;
  color: white;
  padding: 0 8px;
  border-radius: 0px !important;
  font-size: 11px !important;
  font-weight: bold !important;
  text-align: center;
  margin-right: 4px;
  display: inline-block;
}

.new-item-status {
  color: #fff;
  font-size: 12px !important;
  line-height: 18px !important;
  background-color: #F5485E;
  width: 31px !important;
  border-radius: 0px !important;
  display: inline-block;
  text-align: center;
}

.product-item-status {
  position: absolute;
  left: 0px !important;
  top: 0px !important;
}



.product-rank-status {
  /* position: absolute; */
  text-align: center;
  font-size: 11px !important;
  font-weight: bold;
  line-height: 20px;
  padding-left: 6px;
  padding-right: 6px;
  border-radius: 0px !important;
}

.user-item-status {
  position: absolute;
  left: 0px !important;
  top: 0px !important;
  text-align: center;
  display: inline-block;
}

.product-item-info p.sale-price {
  line-height: 20px;
  margin-top: 3px;
  /* margin-top: 16px; */
  margin-bottom: 2px;
  text-align: right;
  font-size: 11px !important;
}

.product-item-info h2 {
  font-size: 14px !important;
  line-height: 19px;
  height: 38px;
  margin-bottom: 0;
}


  .sp-btn-header-cart {
      font-size: 16px !important;
      line-height: 22px;
      padding: 14px 20px 14px 35px !important;
      color: #ffffff !important;
      background-color: #F08C1E;
      border-radius: 3px;
      font-weight: bold;
      text-decoration: none;
      background-image: url("/images/icons/cart.svg");
      background-repeat: no-repeat;
      background-size: 22px;
      background-position: 10px;
      display: block;
  }


.side-action-panel-actions .purchase-point {
  color: white;
  background-color: #dfa12a !important;
  background-image: url("/images/icons/point.svg");
  background-repeat: no-repeat;
  background-size: 18px;
  background-position: 32px;
  text-decoration: none;
}


.side-action-panel-title {
display:none !important;
}


.side-categories-title {
  background-color: #444444 important!;
}

.side-categories {
color: #ffffff !important;
}



.sub-categories-list a:hover{
  color: #333333 !important;
  text-decoration: none !important;
  margin-right: 15px;
}

.product-item-info p.sale-price span.sale-span {
  font-size: 14px !important;
  -webkit-text-decoration-line: line-through;
  text-decoration-line: line-through;
}

.product-item-info p.sale-price span.off-span {
  font-size: 10px !important;
  color: white;
  background-color: rgb(116, 116, 116) !important;
  padding: 1px 4px;
  vertical-align: top;
}

.product-item-info p.sale-price span.price-span {
  font-size: 16px !important;
  font-weight: bold;
  color: rgb(57, 57, 57) !important;
}

.btn-header-mypage {
  padding: 6px 23px !important;
  color: #ffffff !important;
  border-radius: 4px;
  background-color: #444 !important;
  border: 0px solid #fff !important;
  margin-left: 10px;
}

.detail-main-image {
  width: 100%;
  background-color: #fff !important;
  position: relative;
  margin-bottom: 16px;
}

.detail-sub-image {
  float: left;
  margin-right: 8px;
  position: relative;
  background-color: #efefef !important;
  margin-bottom: 8px;
}

.detail-sale-price p {
  font-size: 14px !important;
}

.detail-sale-price span.price-span {
  font-size: 26px !important;
  font-weight: bold;
  color: #333333 !important;
}

.detail-sale-price span.off-span {
  color: white;
  font-size: 14px !important;
  padding: 1px 4px;
  margin: 0px 0px 0px 5px !important;
  background-color: rgb(75, 75, 75) !important;
  /* vertical-align: middle; */
}

.detail-page-title {
  font-size: 23px !important;
  margin-bottom: 20px !important;
}

@media (max-width: 768px) {
  .detail-page-title {
      font-size: 20px !important;
      margin-bottom: 10px;
  }

.detail-content-span {
  font-size: 12px;
  padding: 4px 12px;
  background-color: #F5F5F5;
  border: 1px solid #B3B3B3 !important;
  border-radius: 3px !important;
  color: #333333;
  }

  .navbar-sp-status {
      font-size: 16px !important;
      height: 30px !important;
      background-color: #ffffff;
      padding-top: 5px !important;
      padding-right: 8px !important;
  }

.mypage_row-account-image img {
  width: 50%;
  }

}


.detail-price p {
  font-size: 26px !important;
  font-weight: bold !important;
}

.detail-price span {
  font-size: 15px !important;
  font-weight: normal !important;
  margin-left: 10px !important;
}

.product-item-info p.price span.price-status {
  font-size: 10px !important;
  font-weight: normal !important;
}

.product-item-info p.price {
  text-align: right;
  font-size: 16px !important;
  line-height: 24px;
  font-weight: bold;
  margin-top: 16px;
  margin-bottom: 6px;
}

.ship_detail_cards {
  display: flex;
  flex-wrap: wrap;
  gap: 4%;
}

.ship_detail_card {
  width: 48%;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 10px;
  margin-bottom: 10px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.ship_detail_item {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
  padding: 10px;
}

.ship_detail_item .left {
  font-weight: bold;
  width: 100px;
}

.ship_detail_item .right {
  width: calc(100% - 100px);
}

@media screen and (max-width: 768px) {
  .ship_detail_cards {
    display: flex;
    flex-wrap: wrap;
    gap: 4%;
  }

  .ship_detail_card {
    width: 48%;
  }

  .ship_detail_cards {
    justify-content: space-between;
  }
}

@media screen and (max-width: 560px) {
  .ship_detail_card {
    width: 100%;
  }
}

.detail_line {
  display: flex;
  padding: 10px 0;
  border-bottom: 1px solid #ccc;
}

.detail_line .line_left {
  width: 120px;
  font-weight: 600;
}

.detail_line .line_right {
  width: calc(100% - 120px);
}

.order_info {
  display: flex;
  padding: 16px;
}

.order_info .left {
  width: 200px;
}

.order_info .right {
  width: calc(100% - 200px);
  padding: 0 15px 0 35px;
  border-left: 1px solid #ccc;
}

.order_item_list {
  margin-bottom: 10px;
}

.order_item_list_item {
  display: flex; 
  margin-bottom: 10px;
}

.order_item_list_item .item_left {
  width: 100px;
}

.order_item_list_item .item_right {
  width: calc(100% - 100px);
}

.detail_info_item {
  display: flex;
  padding: 10px 0;
}

.detail_info_item .detail_info_item_label {
  width: 140px;
  text-align: right;
  font-weight: bold;
}

.detail_info_item .detail_info_item_value {
  width: calc(100% - 150px);
  margin-left: 20px;
  text-align: left;
}

.cart-list-item-remark {
  display: flex;
  width: calc(100% - 160px);
  gap: 20px;
  padding-top: 10px;
  margin-left: 160px;
}

.cart-list-item-remark label {
  width: 40px;
}

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

  .order_info .left {
    width: 100%;
  }

  .order_info .right {
    width: 100%;
    padding: 0;
    border-left: none;
  }

  .order_info .right .cart-list-items-body {
    padding: 0;
  }
  .navbar-brand img {
    width: 140px;
  }

}

@media screen and (max-width: 480px) {
  
}

@media screen and (max-width: 480px) {
  .top-slider-img {
    height: auto !important;
  }
}

.product-item-image {
  background-color: white !important;
}

.detail_title {
  white-space: normal !important;      /* デフォルトの改行処理に戻す */
  word-break: break-word !important;    /* 単語が長いときは途中で改行して良い */
}