@charset "UTF-8";

html {
height: 100vh;
}

.wrapper {
  width: 100%;
  overflow: hidden;
}
@media (max-width: 767px) {
  body.st__stop .wrapper {
    position: fixed;
    overflow: hidden;
    left: 0;
    top: 0;
    right: 0;
  }
}
@media (min-width: 768px) {
  html,body {
    height: 100%;
  }
  .wrapper {
    min-width: 1080px;
    min-height: 100%;
    display: flex;
    flex-flow: column;
  }
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .wrapper {
    /* IE11 にのみ適用される */
    display: block;
  }
}

.container {
  width: 100%;
}
.pane-contents ,
.pane-order-contents {
  flex: 1;
  min-height: inherit;
  margin: 0;
  padding: 0;
}
.pane-contents .container {
  display: flex;
  flex-flow: column;
}
.pane-order-contents .container {
  display: block;
}
body.page-goods .pane-contents .pane-main {
  width: 100%!important;
  margin: 0;
  /*overflow: hidden;*/
}
@media (min-width: 768px) {
  body.page-goods .pane-contents .pane-main {
    overflow: hidden;
  }
}

@media (min-width: 768px) {
  /*.pane-contents > .container ,
  .pane-order-contents > .container {
    max-width: 1080px;
    padding: 0;
    margin-left: auto;
    margin-right: auto;
  }*/
	
.pane-contents > .container,
.pane-order-contents > .container {
  width: 100%;
  max-width: 1300px; 
  margin: 0 auto;
}
  /* 2カラム */
  body:not(.page-top) .pane-contents > .container {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
  }
  body:not(.page-top) .pane-contents > .container > .pane-left-menu {
    width: 24.8%;
  }
  body:not(.page-top) .pane-contents > .container > .pane-left-menu + .pane-main {
    width: 71.296%;
    margin: 0;
  }
  body:not(.page-top) .pane-contents > .container > .pane-right-menu {
    width: 100%;
  }

  body.page-goods .pane-contents > .container {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
  }
  body.page-goods .pane-contents > .container > .pane-left-menu {
    width: 100%;
  }
}
.pane-left-menu {
  width: 100%;
  margin: 0 0 0;
  order: 0;
}
.pane-right-menu {
  width: 100%;
  margin: 5rem 0 0;
  order: 0;
}
.pane-main {
  width: 100%;
  overflow-x: hidden;
  max-width: 1300px;
  margin: 1.5rem auto 0;
}

/* マイページ＆イベントページは上書きして解除 */
.pane-main .block-mypage,
.pane-main.block-mypage,
.block-mypage,
.pane-main .block-member-info, 
.pane-main .block-order-method, 
.pane-main .block-purchase-history-detail, 
.pane-main .block-shipping-address, 
.pane-main .block-purchase-history, 
.pane-main .block-mysize, 
.pane-main .block-favorite, 
.pane-main .block-coupon-list,
.pane-main .block-logout {
  width: 93.75%;
  margin: 0 auto;
}

/* トピックページ本文だけ中央寄せ（slick は除外） */
.block-topic-page--article > *:not(.slick-slider) {
  width: 93.75%;
  margin: 0 auto;
}

/* ランキングの中身だけ中央寄せにする */
.pane-main > .block-event-page > .block-event-page--header-freespace + .block-event-page--comment,
.block-event-page--accessory {
  width: 93.75%; /* マイページと同じ */
  margin: 0 auto;
}


.pane-topic-path  + .pane-contents .pane-main {
  margin-top: 0;
}
@media (min-width: 768px) {
  .pane-main {
    width: 100%;
    margin: 3.0rem auto 0;
  }
}

body.page-top .pane-main ,
body.page-cart .pane-main ,
body.page-method .pane-main ,
body.page-estimate .pane-main {
  width: 100%;
}

@media (max-width: 767px) {
  body .wrapper {
  	overflow: visible;
  }
  body.page-goods .pane-contents .pane-main {
  	overflow: visible;
  }
}

/* order */
.block-order-method--contents,
.block-order-estimate--content {
    width: auto;
    float: none;
}
.block-order-method--side-area,
.block-order-estimate--side-area {
    position: relative;
    float: none;
}

/* goods detail */
.block-goods-detail {
  display: block;
}
.pane-goods-header {
  margin: 0;
  padding: 0;
}
