@charset "UTF-8";
aside {
 left: -100%;
}
main {
 width: 100%;
 margin-left: 0;
}
#shops, #shopDetail {
 padding: 0;
 background: #ececec;
}
#shopDetail {
 background: rgba(255, 244, 85, 1);
}
#shopDetail:before, #openBranch:before, #scheduleBranch:before {
 content: "";
 display: block;
 background: url(../images/texture.jpg) repeat;
 background-size: 100% auto;
 position: absolute;
 top: 0;
 left: 0;
 width: 100vw;
 height: 100%;
 mix-blend-mode: multiply;
 pointer-events: none;
 opacity: 0.3;
 margin: 0 calc(50% - 50vw);
}
#shops > .inner {
 padding: 5vw 5vw 0;
}
.pageHeader {
 background: url("../images/bg_points_experience.jpg?0502") no-repeat center center;
 background-size: cover;
}
.contentsNav {
 display: block;
 text-align: center;
 margin-bottom: 5vw;
}
.contentsNav ul {
 display: flex;
 align-items: center;
 justify-content: center;
}
.contentsNav ul li {
 margin: 0 0.5em;
}
.contentsNav ul li a {
 text-align: center;
 font-size: 1.7rem;
 font-weight: bold;
 background: #363638;
 color: #fff;
 line-height: 1.2;
 padding: 1em 3em 0.85em 1.75em;
 position: relative;
 cursor: pointer;
 border-radius: 0.4rem;
}
.contentsNav ul li a:hover {
 background: #e62310;
}
.contentsNav ul li a:before {
 content: "";
 display: inline-block;
 width: 8px;
 height: 8px;
 margin: 0 10px;
 border-bottom: 3px solid #fff;
 border-right: 3px solid #fff;
 transform: rotate(45deg) translateY(-50%);
 position: absolute;
 top: calc(50% - 4px);
 right: 1.0em;
 z-index: 2;
 transition: .2s;
}
.subTtl {
 display: block;
 text-align: center;
 margin: 2.5em auto 1.5em;
}
.subTtl span {
 display: inline-block;
 font-size: 2.0rem;
 font-weight: bold;
 position: relative;
 background: #e62310;
 color: #fff;
 padding: 1em 3em;
 line-height: 1;
 border-radius: 20rem;
}
.fairCard {
 display: flex;
 align-items: center;
 max-width: 1280px;
 margin: 0 auto;
 background: rgba(255, 255, 255, 1);
 border-radius: 1rem;
 padding: 2em;
 text-align: left;
}
.fairCard .thumb {
 flex: 1 0 40%;
 max-width: 40%;
}
.fairCard .detail {
 padding-left: 2em;
}
.fairCard .detail h4 {
 font-weight: bold;
 color: #e62310;
 font-size: 2.1rem;
 line-height: 1.5;
 margin-bottom: 0.5em;
}
.fairCard .detail .period {
 color: #5E5E5E;
 background: #eeefef;
 font-size: 1.4rem;
 padding: 0.5em 1em;
 line-height: 1.2;
 border-radius: 0.4rem;
 font-weight: 500;
 display: inline-block;
}
.fairCard .detail p {
 line-height: 1.7;
 font-size: 1.5rem;
 padding-top: 1em;
}
.fairCard .detail h5 {
 font-weight: bold;
 color: #e62310;
 font-size: 2.1rem;
 line-height: 1.5;
 margin-bottom: 0.5em;
}
.fairCard .detail h6 {
 color: #fff;
 background: #241C1C;
 font-size: 1.4rem;
 padding: 0.5em 1em;
 line-height: 1.2;
 font-weight: 700;
 margin: 1em 0;
 text-align: center;
}
.fairCard .detail .editArea p {
 margin: 0 0 1em;
 padding: 0;
}
.shopList {
 position: relative;
 margin: 1.5em auto 0;
}
.shopList > ul {
 display: flex;
 flex-wrap: wrap;
}
.shopList > ul > li {
 flex: 1 0 calc(25% - 1.5vw);
 max-width: calc(25% - 1.5vw);
 margin: 0 calc(6vw / 3) calc(6vw / 3) 0;
}
.shopList > ul > li:nth-child(4n) {
 margin: 0 0 calc(6vw / 3) 0;
}
.shopCard {
 background: #fdfdfd;
 color: #e95532;
 /*border: 1px solid rgba(9, 18, 23, 0.2);*/
 position: relative;
 border-radius: 1rem;
 overflow: hidden;
 box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
 text-align: left;
}
.shopCard .shopLogo {
 height: 6rem;
 margin: 0 auto;
 display: block;
 text-align: center;
 padding: 1rem 1.5rem;
 background: #fff;
}
.shopCard .shopLogo img {
 object-fit: contain;
 width: auto;
 height: auto;
 max-width: 100%;
 max-height: 100%;
 display: inline-block;
 line-height: 1;
 font-size: 0;
}
.shopCard .ph {
 position: relative;
 overflow: hidden;
 background: #f6f6f6;
}
.shopCard .ph:before {
 content: "";
 display: block;
 padding-top: 64%;
}
.shopCard .ph img {
 width: 100%;
 height: auto;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
}
.shopCard .shopInfo {
 position: relative;
}
.shopCard .genre {
 position: relative;
 padding: 1rem 1.5rem 0.5rem;
}
.shopCard .genre span {
 display: inline-block;
 font-weight: 500;
 font-size: 1.2rem;
 line-height: 1;
 padding: 0.4em 0.5em 0.35em;
 border-radius: 4px;
 margin: 0 0.5em 0.25em 0;
 background: #e95532;
 background: #8d8d8d;
 color: #fff;
}
.shopCard span.number {
 position: absolute;
 right: 1.0rem;
 top: 1rem;
 margin: 0;
}
.shopCard h5 {
 display: block;
 padding: 0.25em 1.6rem;
 line-height: 1.5;
 font-weight: bold;
 font-size: 1.6rem;
 position: relative;
 color: #241C1C;
 text-align: left;
}
.shopCard .period {
 color: #5E5E5E;
 background: #eeefef;
 font-size: 1.4rem;
 padding: 0.5em 0.5em;
 line-height: 1.2;
 border-radius: 0.4rem;
 font-weight: 500;
 display: block;
 margin: 0.5em auto;
 width: calc(100% - 3rem);
 letter-spacing: 0.025em;
 white-space: nowrap;
 overflow-x: scroll;
 -ms-overflow-style: none;
 scrollbar-width: none;
}
.shopCard .period:-webkit-scrollbar {
 display: none;
}
.shopCard p {
 font-size: 1.4rem;
 color: #636366;
 line-height: 1.5;
 padding: 0.5em 1.5rem 1em;
 font-weight: 500;
}
.shopCard .toBtn a {
 text-align: center;
 color: #fff;
 background: #363638;
 position: relative;
 font-size: 1.4rem;
 padding: 0.25em 0;
}
.shopCard .toBtn a:hover {
 background: #e95532;
}
.shopCard .toBtn a:before {
 content: "";
 display: inline-block;
 width: 6px;
 height: 6px;
 border-top: 3px solid #fff;
 border-right: 3px solid #fff;
 transform: rotate(45deg) translateY(-50%);
 position: absolute;
 top: calc(50% - 1px);
 right: 1.25em;
}
.allergy {
 display: flex;
 align-items: stretch;
 justify-content: space-between;
 position: relative;
}
.allergy a {
 background: url("../images/icon_pdf.svg") no-repeat left 1em center #9b240f;
 background-size: auto 1.4em;
 color: #fff;
 flex: 1 0 calc(50% - 1px);
 max-width: calc(50% - 1px);
 padding: 1em 1em 1em 3em;
 box-sizing: border-box;
 font-size: 1.4rem;
 white-space: nowrap;
 text-align: center;
}
#openBranch {
 width: 100vw;
 margin: 0 calc(50% - 50vw);
 background-image: linear-gradient(0deg, rgba(0, 173, 236, 1) 0%, rgba(255, 244, 85, 1) 60%);
}
#openBranch .inner, #scheduleBranch .inner {
 padding: 0 5vw 5vw;
}
#openBranch .inner .wideTtl, #scheduleBranch .inner .wideTtl {
 margin: 0 calc(50% - 50vw) 2.5em;
}
#openBranch .map {
 position: relative;
 width: 74%;
 border-radius: 1rem;
 overflow: hidden;
 margin: 0 auto 2em;
}
#openBranch .shopNumber {
 display: flex;
 flex-wrap: wrap;
}
#openBranch .shopNumber li {
 flex: 1 0 33.333%;
 max-width: 33.333%;
 font-weight: bold;
 line-height: 1.5;
 font-size: 1.5rem;
 padding: 0 0.5em 0 2.7em;
 position: relative;
 margin-bottom: 1.5em;
}
#openBranch .shopNumber li a {
 color: #241C1C;
}
#openBranch .shopNumber li a:hover {
 color: #e62310;
}
#openBranch .shopNumber li a span.number, #openBranch .shopNumber li a span.icon {
 position: absolute;
 left: 0;
 top: 50%;
 transform: translateY(-50%);
}
#openBranch .special {
 margin: 2em 0 0;
 text-align: center;
}
#openBranch .specialTtl {
 text-align: center;
 font-weight: bold;
 position: relative;
 display: block;
 background: #e62310;
 color: #fff;
 height: 8em;
 width: 8em;
 border-radius: 50%;
 line-height: 5.2em;
 font-size: 2.7rem;
 margin: 0 auto -4em;
}
#openBranch .special .box {
 position: relative;
}
span.number {
 display: inline-block;
 text-align: center;
 line-height: 2.1em;
 width: 2.1em;
 height: 2.1em;
 border-radius: 50%;
 margin-right: 0.4em;
 color: #fff;
 background: #e62310;
 position: relative;
 font-weight: bold;
}
li.suntory span.number {
 color: #fe0002;
 font-size: 160%;
 text-indent: -0.85em;
 background: none;
}
li span.number.enkai {
 background: #19376b;
}
li span.icon {
 display: inline-block;
 text-align: center;
 line-height: 1.5em;
 width: 1.5em;
 height: 1.5em;
 border-radius: 50%;
 margin: 0 0.25em;
 background: #19376b;
}
#openBranch .pins ul {
 display: flex;
 flex-wrap: wrap;
}
#openBranch .pins ul li {
 flex: 1 0 33.333%;
 max-width: 33.333%;
 font-weight: bold;
 line-height: 1.5;
 font-size: 1.4rem;
 padding: 0 0.5em 0 0;
 position: relative;
 margin-bottom: 0.75em;
 display: flex;
 align-items: center;
}
#openBranch .pins ul li span {
 display: inline-block;
 text-align: center;
 line-height: 2.1em;
 width: 2.1em;
 height: 2.1em;
 border-radius: 50%;
 margin-right: 0.4em;
 color: #111;
 border: solid 1px #111;
 position: relative;
 font-weight: bold;
 background: #fff;
}
#openBranch .pins ul li a {
 display: inline-block;
 position: relative;
 color: #e62310;
 overflow: visible;
}
#openBranch .pins ul li a:after {
 content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-top: 3px solid #e62310;
    border-right: 3px solid #e62310;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: calc(50% - 1px);
    right: -0.75em;
 transition: .2s;
}
#openBranch .pins ul li a:hover:after {
 right: -1em;
}
#scheduleBranch {
 position: relative;
 width: 100vw;
 margin: 0 calc(50% - 50vw);
 background: #ECC1C1;
}
#scheduleBranch #fair {
 position: relative;
}
#scheduleBranch #fair .fairList {
 position: relative;
}
#scheduleBranch #fair .fairList > li {
 margin: 0 0 1.5em 0;
 border-radius: 1.0rem;
 overflow: hidden;
}
#shopDetail .inner {
 padding: calc(10rem + 5vw) 5vw 5vw;
}
#shopDetail .shopLogo {
 height: 8rem;
 margin: 0 auto;
 display: block;
 text-align: center;
}
#shopDetail .shopLogo img {
 object-fit: contain;
 width: auto;
 height: auto;
 max-width: 100%;
 max-height: 100%;
 display: inline-block;
}
#shopDetail .flex {
 padding: 2.5vw 0 0;
 display: flex;
}
#shopDetail .flex .flexBox {
 flex: 1 0 50%;
 max-width: 50%;
}
#shopDetail .flex .flexBox.left {
 padding-right: 2.5vw;
}
#shopDetail .flex .flexBox.left .shopVisual {
 position: relative;
}
#shopDetail .flex .flexBox.left .shopVisual .sliderArea .slider img {
 border-radius: 1.0rem;
 border: solid 1px rgba(0, 0, 0, 0.1);
}
#shopDetail .flex .flexBox.left .shopVisual .shopDetail_slider_thumb .slick-slide {
 padding: 2px;
 cursor: pointer;
}
#shopDetail .flex .flexBox.left .shopVisual .shopDetail_slider_thumb .slick-slide img {
 border: solid 1px rgba(0, 0, 0, 0.1);
 border-radius: 1.0rem;
}
.shopDetail_slider {
 position: relative;
 margin: 0;
 padding: 0;
}
.shopDetail_slider .item {
 position: relative;
 height: 100%;
 border-radius: 1rem;
 overflow: hidden;
}
.shopDetail_slider .item a {
 display: block;
}
.shopDetail_slider .item::before {
 display: block;
 padding-top: 66.667%;
 content: "";
}
.shopDetail_slider .item .image {
 position: relative;
 overflow: hidden;
 border-radius: 1.0rem;
 border: solid 1px rgba(0, 0, 0, 0.1);
}
.shopDetail_slider .item img {
 position: absolute;
 top: 0;
 bottom: 0;
 right: 0;
 left: 0;
 margin: auto;
 width: 100%;
}
.shopDetail_slider > .slick-list, .shopDetail_slider > .slick-list > .slick-track, .shopDetail_slider > .slick-list > .slick-track > .slick-slide > div {
 position: relative;
 height: 100%;
}
/* shopDetail_slider-navigation */
.shopDetail_slider-navigation {
 line-height: 0;
 position: relative;
 margin: 0;
 padding: 0;
}
.shopDetail_slider-navigation .item {
 position: relative;
 cursor: pointer;
 overflow: hidden;
 padding: 4px 2px 0;
}
.shopDetail_slider-navigation .item .image {
 position: relative;
 overflow: hidden;
 width: 100%;
 height: 100%;
 margin: 0;
 padding: 0;
 border: solid 1px rgba(0, 0, 0, 0.1);
 border-radius: 1.0rem;
}
.shopDetail_slider-navigation .item .image::before {
 display: block;
 padding-top: 66.667%;
 content: "";
}
.shopDetail_slider-navigation .item .image::after {
 position: absolute;
 top: 0;
 left: 0;
 display: block;
 width: 100%;
 height: 100%;
 content: "";
 opacity: 0.5;
 background: #000;
}
.shopDetail_slider-navigation .slick-current .image::after {
 opacity: 0;
}
.shopDetail_slider-navigation .item .image {
 position: relative;
 overflow: hidden;
}
.shopDetail_slider-navigation .item .image img {
 position: absolute;
 top: 0;
 bottom: 0;
 right: 0;
 left: 0;
 margin: auto;
 width: 100%;
}
#shopDetail .flex .flexBox.right .shopInfo {
 position: relative;
 margin-top: 2em;
}
#shopDetail .flex .flexBox.right .shopInfo dl {
 display: flex;
 margin-bottom: 1em;
 border-bottom: 2px solid rgba(140, 136, 122, 0.40);
}
#shopDetail .flex .flexBox.right .shopInfo dl dt {
 white-space: nowrap;
 flex: 1 0 8em;
 max-width: 8em;
}
#shopDetail .flex .flexBox.right .shopInfo dl dd a {
 color: #7F7777;
 word-break: break-all;
}
#shopDetail .flex .flexBox.right .shopInfo dl dd a:hover {
 color: #241C1C;
}
#shopDetail .flex .flexBox.right {
 position: relative;
}
#shopDetail .flex .flexBox.right .genre span {
 display: inline-block;
 font-weight: 700;
 font-size: 1.6rem;
 line-height: 1;
 padding: 0.4em 0.5em;
 border-radius: 4px;
 margin: 0 0 1em;
 background: #e95532;
 color: #fff;
}
#shopDetail .flex .flexBox.right .shopName {
 font-size: 2.4rem;
 font-weight: bold;
 line-height: 1.5;
 margin-bottom: 1em;
}
#shopDetail .flex .flexBox.right .period {
 color: #5E5E5E;
 background: #fff;
 font-size: 1.6rem;
 line-height: 1.2;
 border-radius: 0.4rem;
 font-weight: 500;
 overflow: hidden;
 display: flex;
 align-items: center;
 margin-bottom: 1em;
}
#shopDetail .flex .flexBox.right .period dt {
 flex: 1 0 7em;
 max-width: 7em;
 padding: 0.75em 1em 0.5em;
 color: #fff;
 background: #e62310;
 white-space: nowrap;
 text-align: center;
}
#shopDetail .flex .flexBox.right .period dd {
 padding: 0.75em 1em 0.5em 1em;
 flex: 1 0 calc(100% - 7em);
}
#shopDetail .flex .flexBox.right .period dd span {
 position: relative;
 display: inline-block;
}
#shopDetail .flex .flexBox.right .period dd span:last-of-type:before {
 content: "〜";
 display: inline-block;
 margin: 0 0.25em;
 color: #5E5E5E;
}
#shopDetail .flex .flexBox.right .shopTxt .copy {
 font-size: 1.8rem;
 font-weight: 700;
 color: #e95532;
 margin-bottom: 0.25em;
 line-height: 1.5;
}
#shopDetail .flex .flexBox.right .shopTxt p {
 margin-bottom: 0.75em;
}
#shopDetail .flex .flexBox.right .menuList {
 margin: 2em auto 0;
 background: #fff;
 overflow: hidden;
 border-radius: 0.4rem;
}
#shopDetail .flex .flexBox.right .menuList h5 {
 font-size: 2.2rem;
 white-space: nowrap;
 font-weight: 700;
 display: block;
 position: relative;
 line-height: 1.2;
 background: #241C1C;
 color: #fff;
 padding: 0.5em 1em;
}
#shopDetail .flex .flexBox.right .menuList .editArea {
 padding: 1.5em;
}
#shopDetail .flex .flexBox.right .allergy {
 margin: 2em auto 0;
}
#shopDetail .btnBack {
 margin: 2em auto 0;
 display: block;
 text-align: center;
}
#payment {
 width: 100vw;
 margin: 0 calc(50% - 50vw);
 background: #fcfcfc;
 z-index: 10;
 position: relative;
}
#payment > h3 {
 border-radius: 0;
}
#payment .box {
 max-width: 1280px;
 margin: 0 auto;
 background: #fcfcfc;
}
#jizen {
 width: 100vw;
 margin: 0 calc(50% - 50vw);
 background: rgba(255, 244, 85, 1);
 z-index: 10;
 position: relative;
 background: #fcfcfc;
}
#jizen > h3 {
 font-size: 2.2rem;
 font-weight: bold;
 background: #0972C9;
 color: rgba(255, 244, 85, 1);
 text-align: center;
 line-height: 1.5;
 padding: 1.5em;
}
#jizen .box {
 max-width: 1280px;
 margin: 0 auto;
 background: #fcfcfc;
 padding: 4vw;
 text-align: center;
}
#jizen ul {
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 2vw 0 0;
}
#jizen ul li {
 margin: 0 0.5em 1em;
}
#jizen ul li a {
 display: inline-block;
 box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.3);
 text-align: center;
 font-size: 1.7rem;
 font-weight: bold;
 background: #363638;
 color: #fff;
 line-height: 1.5;
 padding: 1em 3em 0.85em 1.75em;
 position: relative;
 cursor: pointer;
 border-radius: 0.4rem;
}
#jizen ul li a:before {
 content: "";
 display: inline-block;
 width: 8px;
 height: 8px;
 margin: 0 10px;
 border-bottom: 3px solid #fff;
 border-right: 3px solid #fff;
 transform: rotate(-45deg) translateY(-50%);
 position: absolute;
 top: 50%;
 right: 1.0em;
 z-index: 2;
 transition: .2s;
}
#jizen ul li.asoview a {
 background: #e62310;
}
#jizen ul li.jalan a {
 background: #e77611;
}
#jizen ul li.kkday a {
 background: #26bec9;
}
#jizen ul li a:hover {
 background: #363638;
}


@media screen and (max-width: 999px) {
 #shops .inner {
  padding: 1.5rem 1.5rem 0;
 }
 .contentsNav ul {
  display: block;
 }
 .contentsNav ul li {
  margin: 0 0 0.5em;
 }
 .contentsNav ul li:last-child {
  margin: 0;
 }
 .contentsNav ul li a {
  font-size: 1.5rem;
 }
 .subTtl {}
 .subTtl span {
  font-size: 1.8rem;
 }
 .fairCard {
  display: block;
  max-width: 100%;
  padding: 1em;
 }
 .fairCard .thumb {
  flex: none;
  max-width: 100%;
 }
 .fairCard .detail {
  padding: 1.0em 0 0;
 }
 .fairCard .detail h4 {
  font-size: 1.9rem;
  text-align: center;
 }
 .fairCard .detail h5 {
  font-weight: bold;
  color: #e62310;
  font-size: 2.1rem;
  line-height: 1.5;
  margin-bottom: 0.5em;
 }
 .fairCard .detail h6 {
  color: #fff;
  background: #241C1C;
  font-size: 1.4rem;
  padding: 0.5em 1em;
  line-height: 1.2;
  font-weight: 700;
  margin: 1em 0;
  text-align: center;
 }
 .fairCard .detail ul {
  display: flex;
  flex-wrap: wrap;
 }
 .fairCard .detail ul li:after {
  content: "/";
  padding: 0 0.25em;
  opacity: 0.5;
 }
 .fairCard .detail ul li:last-child:after {
  display: none;
 }
 .shopList {
  margin: 1em auto 0;
 }
 .shopList > ul > li {
  flex: 1 0 calc(50% - 0.75rem);
  max-width: calc(50% - 0.75rem);
  margin: 0 1.5rem 1.5rem 0;
 }
 .shopList > ul > li:nth-child(4n) {
  margin: 0 1.5rem 1.5rem 0;
 }
 .shopList > ul > li:nth-child(even) {
  margin: 0 0 1.5rem 0;
 }
 .shopCard {
  border-radius: 0.4rem;
 }
 .shopCard .shopLogo {
  height: 5rem;
  padding: 1rem 1.0rem;
 }
 .shopCard .genre {
  padding: 1rem 1rem 0.5rem;
 }
 .shopCard h5 {
  padding: 0.45em 1rem 0;
  font-size: 1.5rem;
 }
 .shopCard .period {
  padding: 0.5em 1rem;
  margin: 0.5em auto;
  width: calc(100% - 2rem);
  overflow-x: inherit;
  white-space: normal;
  word-break: keep-all;
  text-align: center;
 }
 .allergy {
  display: block;
 }
 .allergy a {
  flex: none;
  max-width: 100%;
  text-align: center;
  padding: 1em 1em 1em 3em;
  margin: 0 auto 0.5em;
 }
 #openBranch .inner {
  padding: 0 1.5rem 4rem;
 }
 #openBranch .inner .wideTtl {
  margin: 0 calc(50% - 50vw) 0;
 }
 #openBranch .map {
  width: 100vw;
  margin: 0 calc(50% - 50vw) 1.5em;
  border-radius: 0;
 }
 #openBranch .shopNumber {
  display: block;
 }
 #openBranch .shopNumber li {
  flex: none;
  max-width: 100%;
 }
 #openBranch .pins ul {
  display: block;
 }
 #openBranch .pins ul li {
  flex: none;
  max-width: 100%;
  font-size: 1.3rem;
 }
 #openBranch .specialTtl {
  font-size: 2.0rem;
 }
 #openBranch .special .focus .txt {
  padding: 1.5em 0 0;
 }
 #openBranch .special .focus .txt h4 {
  font-size: 1.8rem;
 }
 span.number {
  display: inline-block;
  text-align: center;
  line-height: 2.1em;
  width: 2.1em;
  height: 2.1em;
  border-radius: 50%;
  margin-right: 0.4em;
  color: #fff;
  background: #e62310;
  position: relative;
  font-weight: bold;
 }
 #shopDetail .inner {
  padding: calc(5rem + 5rem) 1.5rem 4rem;
 }
 #shopDetail .shopLogo {
  height: 8rem;
 }
 #shopDetail .flex {
  padding: 2.0em 0 0;
  display: block;
 }
 #shopDetail .flex .flexBox {
  flex: none;
  max-width: 100%;
 }
 #shopDetail .flex .flexBox.left {
  padding: 0 0 2em;
 }
 #shopDetail .flex .flexBox.right .shopInfo dl {
  font-size: 1.4rem;
 }
 #shopDetail .flex .flexBox.right .genre span {
  font-size: 1.4rem;
  margin: 0 0 0.75em;
 }
 #shopDetail .flex .flexBox.right .shopName {
  font-size: 2.0rem;
 }
 #shopDetail .flex .flexBox.right .period {
  font-size: 1.4rem;
  display: block;
 }
 #shopDetail .flex .flexBox.right .period dt {
  flex: none;
  max-width: 100%;
  padding: 0.5em 1em 0.5em;
 }
 #shopDetail .flex .flexBox.right .period dd {
  padding: 1em 1.5rem;
  flex: none;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 500;
 }
 #shopDetail .flex .flexBox.right .shopTxt .copy {
  font-size: 1.6rem;
 }
 #shopDetail .flex .flexBox.right .shopTxt p {
  font-size: 1.4rem;
 }
 #shopDetail .flex .flexBox.right .menuList {
  margin: 1.5em auto 0;
  border-radius: 0.4rem;
 }
 #shopDetail .flex .flexBox.right .menuList h5 {
  font-size: 1.7rem;
 }
 #shopDetail .flex .flexBox.right .menuList .editArea {
  padding: 1em 1.5rem;
 }
 #shopDetail .flex .flexBox.right .allergy {
  margin: 2em auto 0;
 }
 #shopDetail .btnBack {
  margin: 2em auto 0;
  display: block;
  text-align: center;
 }
 #jizen .box {
  padding: 1.5em 1.5rem;
 }
 #jizen > h3 {
  font-size: 1.8rem;
  padding: 1em 1.5rem;
 }
 #jizen p {
  font-size: 1.4rem;
  line-height: 1.5;
 }
 #jizen ul {
  padding: 1em 0 0;
  display: block;
 }
 #jizen ul li {
  margin: 0 auto 0.5em;
        width: 80%;
        padding: 0;
 }
 #jizen ul li a {
  font-size: 1.6rem;
  text-align: left;
  display: block;
        margin: 0;
        padding: 0.65em 2em 0.65em 1.5em;
 }
 #jizen ul li a:before {
  right: 0.5em;
 }
}