﻿@charset "UTF-8";

/* リュク特集 */
.pane-globalnav {
  margin-bottom: 0;
}
.block-event-page--header-freespace {
  width: 100vw;
  position: relative;
  left: calc((100vw - 1200px) / -2);
  margin-bottom: 50px;
}
@media screen and (max-width: 1200px) {
  .block-event-page--header-freespace {
    width: 1200px;
    left: 0;
  }
}

#pages-backpack {
  min-width: 1200px;
  font-size: 14px;
}
#backpack-head {
  position: relative;
  width: 100%;
  margin: 0 0 80px;
  padding: 60px 0;
  background: #ececec;
}
#backpack-head > div {
  position: relative;
  z-index: 1;
  width: 980px;
  margin: 0 auto;
}
#backpack-head > div:before {
  position: absolute;
  left: -117px;
  top: -6px;
  z-index: 0;
  display: block;
  content: '';
  width: 147px;
  height: 600px;
  background: url(../../img/usr/event/r20t02/h_bg1.png) center no-repeat;
}
#backpack-head > div:after {
  position: absolute;
  right: -47px;
  top: 104px;
  z-index: 0;
  display: block;
  content: '';
  width: 147px;
  height: 600px;
  background: url(../../img/usr/event/r20t02/h_bg1.png) center no-repeat;
  transform: rotate(90deg);
}
#backpack-head > div > h1 {
  position: relative;
  z-index: 10;
}
#backpack-head > div > p {
  position: relative;
  z-index: 10;
  text-align: center;
  font-size: 16px;
  line-height: 1.7;
}

#backpack-headnav {
  width: 980px;
  margin: 0 auto 100px;
}
#backpack-headnav dl ul {
  margin: 0 0 45px;
  display: flex;
}
#backpack-headnav > ul {
  display: flex;
  align-items: center;
  justify-content: center;
}
#backpack-headnav > ul li {
  margin: 0 10px;
}
#backpack-headnav > ul li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border: 1px solid #242424;
  width: 250px;
  height: 50px;
  font-size: 16px;
  color: inherit;
  text-decoration: none!important;
  transition: all 0.3s;
}
#backpack-headnav > ul li a:hover {
  opacity: 0.7;
}
#backpack-headnav > ul li a:before {
  display: block;
  content: '';
  position: absolute;
  right: 14px;
  top: calc(50% - 6px);
  width: 8px;
  height: 8px;
  border-top: solid 1px #242424;
  border-right: solid 1px #242424;
  transform: rotate(135deg);
}

.bag-tit {
  margin: 0 0 80px;
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 120px;
  border: solid 1px #242424;
}
.bag-tit:before,
.bag-tit:after {
  display: block;
  content: '';
  width: calc(100% - 30px);
  height: 10px;
  background: #ffffff;
  position: absolute;
  left: 15px;
  right: 15px;
  top: -5px;
}
.bag-tit:after {
  top: calc(100% - 5px);
}
a.bag-block-btn-btn {
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border: 1px solid #242424;
  width: 250px;
  height: 50px;
  font-size: 16px;
  color: inherit;
  text-decoration: none!important;
  transition: all 0.3s;
}
a.bag-block-btn-btn:hover {
  opacity: 0.7;
}
a.bag-block-btn-btn:before {
  display: block;
  content: '';
  position: absolute;
  right: 14px;
  top: calc(50% - 4px);
  width: 8px;
  height: 8px;
  border-top: solid 1px #242424;
  border-right: solid 1px #242424;
  transform: rotate(45deg);
}

.bag-block {
  width: 980px;
  margin: 0 auto;
}
.bag-block + .bag-block {
  margin-top: 100px;
}
.bag-block-body {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.bag-block-body > figure {
  width: 454px;
}
.bag-block-body > .bag-block-spec {
  width: 470px;
}
.bag-block-spec-name {
}
.bag-block-spec-name > p:first-child {
  font-size: 18px;
}
.bag-block-spec-name > h3 {
  font-size: 26px;
  line-height: 1.2;
  font-weight: bold;
  margin: 12px 0;
}
.bag-block-spec-name > h3 + p {
  font-size: 16px;
}
.bag-block-spec-price {
  text-align: right;
  margin: 0 0 18px;
  padding: 0 0 10px;
  border-bottom: 1px dotted #666666;
}
.bag-block-spec-price p {
  font-size: 16px;
}
.bag-block-spec-price p span {
  font-size: 26px;
  font-weight: bold;
}
.bag-block-spec-price p span:after {
  display: inline-block;
  content: '税込';
  font-size: 17px;
}
.bag-block-spec-comment {
  line-height: 1.8;
}
.bag-block-spec-comment p + p {
  margin-top: 10px;
}
.bag-block-body > .bag-block-spec figure {
  margin-top: 24px;
}

.bag-block-btn {
  margin: 50px 0 0;
  text-align: center;
}
.bag-block-btn li + li {
  margin-top: 18px;
}

#bag_popular {
  width: 980px;
  margin: 0 auto 0;
}
#bag_highspec {
  width: 980px;
  margin: 80px auto 0;
}
#bag_sporty {
  width: 980px;
  margin: 80px auto 0;
}

#bag_bottom {
  margin: 130px auto 0;
  padding: 40px 0 48px;
  min-width: 1200px;
  background: #f3f3f3;
}
#bag_bottom {
  width: 100vw;
  position: relative;
  left: calc((100vw - 1200px) / -2);
}
@media screen and (max-width: 1200px) {
  #bag_bottom {
    width: 1200px;
    left: 0;
  }
}


#bag_bottom dl dt {
  text-align: center;
}
#bag_bottom dl dt span {
  display: inline-block;
  position: relative;
  margin: 0 0 25px;
  font-size: 22px;
  font-weight: bold;
}
#bag_bottom dl dt span:before,
#bag_bottom dl dt span:after {
  display: block;
  content: '';
  width: 38px;
  height: 1px;
  background: #333333;
  position: absolute;
  top: 13px;
}
#bag_bottom dl dt span:before {
  left: calc(50% - 7em);
  transform: rotate(60deg);
}
#bag_bottom dl dt span:after {
  right: calc(50% - 7em);
  transform: rotate(-60deg);
}

#bag_bottom dl dd ul {
  display: flex;
  justify-content: center;
}
#bag_bottom dl dd ul li {
  margin: 0 18px;
}

#bag_popular h2 + .bag-block .bag-block-btn li:first-child {
  margin-left: -24px;
}
#bag_highspec h2 + .bag-block .bag-block-btn li:last-child {
  margin-left: -6px;
}
#bag_highspec .bag-block:last-child .bag-block-spec-comment + div {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: -25px;
}