@charset "utf-8";

/*==============================================
 Base
 ===============================================*/
body {
  color: #323232;
  font-family: "", YuGothic, "", "Yu Gothic", " Pro", "Hiragino Kaku Gothic Pro", "", Meiryo, " ", Osaka, Arial, Sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  width: 100%;
}
a:active, a:focus {
  outline: none !important;
}
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 30px 0;
  color: #66321f;
  font-weight: 600;
  line-height: 1.5;
}
h1, h2 {
  letter-spacing: 0.15em;
}
h3, h4 {
  letter-spacing: 0.1em;
}
h5, h6 {
  letter-spacing: 0.05em;
}
a {
  text-decoration: none !important;
}
a:hover, a:focus {
  color: #323232;
}
a, .btn {
  -webkit-transition: all .3s;
  transition: all .3s;
}
a img, iframe {
  border: none;
}
p {
  color: #79472c;
  line-height: 2;
}
hr {
  margin-top: 0;
  margin-bottom: 0;
  border: 0;
  border-top: 1px solid #eee;
}
pre {
  display: block;
  margin: 0 0 30px;
  padding: 9.5px;
  word-wrap: break-word;
  word-break: break-all;
  color: #66321f;
  border: 1px solid #ededed;
  border-radius: 0;
  background-color: #f9f9f9;
  font-size: 13px;
  line-height: 1.42857143;
}
/*==============================================
 Utility
 ===============================================*/
.inline-block {
  display: inline-block;
  width: 100%;
}
.relative {
  position: relative;
}
.vertical-align {
  position: relative;
}
/*==============================================
 Bootstrap Reset
 ===============================================*/
.container-fluid, .col-lg-1, .col-md-1, .col-sm-1, .col-xs-1, .col-lg-2, .col-md-2, .col-sm-2, .col-xs-2, .col-lg-3, .col-md-3, .col-sm-3, .col-xs-3, .col-lg-4, .col-md-4, .col-sm-4, .col-xs-4, .col-lg-5, .col-md-5, .col-sm-5, .col-xs-5, .col-lg-6, .col-md-6, .col-sm-6, .col-xs-6, .col-lg-7, .col-md-7, .col-sm-7, .col-xs-7, .col-lg-8, .col-md-8, .col-sm-8, .col-xs-8, .col-lg-9, .col-md-9, .col-sm-9, .col-xs-9, .col-lg-10, .col-md-10, .col-sm-10, .col-xs-10, .col-lg-11, .col-md-11, .col-sm-11, .col-xs-11, .col-lg-12, .col-md-12, .col-sm-12, .col-xs-12 {
  padding-right: 30px;
  padding-left: 30px;
}
/*==============================================
 Navbar
 ===============================================*/
@media (max-width: 768px) {
  html {
    overflow-x: hidden;
  }
}
@media (min-width: 769px) {
  .l-header_overlay {
    position: relative;
    z-index: 1200;
    top: 0;
    width: 100%;
  }
  .l-navbar-wrapper_has-sticky .l-navbar, .l-navbar_s-left {
    box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
  }
  .c-nav_s-bg>li>a {
    line-height: 40px;
  }
  .c-nav_s-bg>li.active>a, .c-nav_s-bg>li:hover>a {
    color: #fff !important;
  }
  .c-nav_s-outline>li>a {
    border: 1px solid transparent;
    line-height: 38px;
  }
  .c-nav_s-underline>li>a {
    border-bottom: 1px solid transparent;
    line-height: 99px;
  }
  .l-navbar_expand .c-nav_s-bg>li>a, .l-navbar_expand .c-nav_s-outline>li>a {
    margin: 30px 0;
  }
  .l-navbar_compact .c-nav_s-bg>li>a, .l-navbar_compact .c-nav_s-outline>li>a {
    margin: 10px 0;
  }
  .l-navbar-wrapper_has-sticky .c-nav_s-bg>li>a, .l-navbar-wrapper_has-sticky .c-nav_s-outline>li>a {
    margin: 0;
  }
  .l-navbar-wrapper_has-sticky .c-nav_s-outline>li>a {
    line-height: 58px;
  }
  .l-navbar_t-light {
    background: #fff;
  }
  .l-navbar_t-dark {
    background: #0a0a0a;
  }
  .l-navbar_t-semi-trans {
    background: rgba(10, 10, 10, .5);
  }
  .l-navbar_t-light-trans, .l-navbar_t-dark-trans, .l-navbar_t-semi-trans {
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
  }
  .l-navbar_s-center {
    text-align: center;
  }
  .l-navbar_s-center.l-navbar_t-light {
    border-top-color: #ddd;
  }
  .l-navbar_s-center.l-navbar_t-dark {
    border-top-color: #222;
  }
  .l-navbar_s-floating {
    width: 1170px;
    margin: auto;
    margin-top: 50px;
  }
  .l-navbar-wrapper_has-sticky .l-navbar_s-floating {
    margin-top: 0;
  }
  .l-navbar-wrapper_has-sticky .l-navbar_t-semi-trans, .l-navbar-wrapper_has-sticky .l-navbar_t-dark-trans {
    background: #0a0a0a;
  }
  .l-navbar-wrapper_has-sticky .l-navbar_t-light-trans {
    background: #fff;
  }
  .body_has-navbar-left .wrapper {
    margin-left: 260px;
  }
  .body_has-navbar-left .l-header {
    position: fixed;
    z-index: 1000;
    top: 0;
    bottom: 0;
    left: 0;
    width: 260px;
  }
  .body_has-navbar-left .l-navbar_s-left {
    height: 100%;
  }
  .l-navbar_s-left.l-navbar_t-dark {
    background: #66321f;
  }
  .l-navbar_s-left .container, .l-navbar_s-left .container-fluid, .l-navbar_s-left .col-lg-1, .l-navbar_s-left .col-md-1, .l-navbar_s-left .col-sm-1, .l-navbar_s-left .col-xs-1, .l-navbar_s-left .col-lg-2, .l-navbar_s-left .col-md-2, .l-navbar_s-left .col-sm-2, .l-navbar_s-left .col-xs-2, .l-navbar_s-left .col-lg-3, .l-navbar_s-left .col-md-3, .l-navbar_s-left .col-sm-3, .l-navbar_s-left .col-xs-3, .l-navbar_s-left .col-lg-4, .l-navbar_s-left .col-md-4, .l-navbar_s-left .col-sm-4, .l-navbar_s-left .col-xs-4, .l-navbar_s-left .col-lg-5, .l-navbar_s-left .col-md-5, .l-navbar_s-left .col-sm-5, .l-navbar_s-left .col-xs-5, .l-navbar_s-left .col-lg-6, .l-navbar_s-left .col-md-6, .l-navbar_s-left .col-sm-6, .l-navbar_s-left .col-xs-6, .l-navbar_s-left .col-lg-7, .l-navbar_s-left .col-md-7, .l-navbar_s-left .col-sm-7, .l-navbar_s-left .col-xs-7, .l-navbar_s-left .col-lg-8, .l-navbar_s-left .col-md-8, .l-navbar_s-left .col-sm-8, .l-navbar_s-left .col-xs-8, .l-navbar_s-left .col-lg-9, .l-navbar_s-left .col-md-9, .l-navbar_s-left .col-sm-9, .l-navbar_s-left .col-xs-9, .l-navbar_s-left .col-lg-10, .l-navbar_s-left .col-md-10, .l-navbar_s-left .col-sm-10, .l-navbar_s-left .col-xs-10, .l-navbar_s-left .col-lg-11, .l-navbar_s-left .col-md-11, .l-navbar_s-left .col-sm-11, .l-navbar_s-left .col-xs-11, .l-navbar_s-left .col-lg-12, .l-navbar_s-left .col-md-12, .l-navbar_s-left .col-sm-12, .l-navbar_s-left .col-xs-12 {
    width: auto;
    padding: 0;
  }
  .l-navbar_bottom {
    position: fixed;
    bottom: 0;
    width: 100%;
  }
}
/*==============================================
 Nav: Dotted
 ===============================================*/
/* No Touch devices */
.no-touch #cd-vertical-nav {
  position: fixed;
  z-index: 300;
  top: 50%;
  right: 40px;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.no-touch #cd-vertical-nav li {
  list-style: none;
  text-align: right;
}
.no-touch #cd-vertical-nav a {
  display: inline-block;
  /* prevent weird movements on hover when you use a CSS3 transformation - webkit browsers */
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.no-touch #cd-vertical-nav a:after {
  display: table;
  clear: both;
  content: "";
}
.no-touch #cd-vertical-nav a span {
  display: inline-block;
  float: right;
  -webkit-transform: scale(.6);
  -ms-transform: scale(.6);
  transform: scale(.6);
}
.no-touch #cd-vertical-nav a:hover span, .no-touch #cd-vertical-nav li.active span {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.no-touch #cd-vertical-nav a:hover .cd-label {
  opacity: 1;
}
.no-touch #cd-vertical-nav a.is-selected .cd-dot {
  background-color: white;
}
.no-touch #cd-vertical-nav .cd-dot {
  position: relative;
  /* we set a top value in order to align the dot with the label. If you change label's font, you may need to change this top value*/
  top: 11px;
  width: 12px;
  height: 12px;
  -webkit-transition: background-color .5s, -webkit-transform .2s;
  transition: background-color .5s, -webkit-transform .2s;
  transition: transform .2s, background-color .5s;
  transition: transform .2s, background-color .5s, -webkit-transform .2s;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  border-radius: 50%;
  background-color: #ababab;
}
.no-touch #cd-vertical-nav .cd-label {
  position: relative;
  margin-right: 10px;
  padding: .4em .5em;
  -webkit-transition: opacity .2s, -webkit-transform .2s;
  transition: opacity .2s, -webkit-transform .2s;
  transition: transform .2s, opacity .2s;
  transition: transform .2s, opacity .2s, -webkit-transform .2s;
  -webkit-transform-origin: 100% 50%;
  -ms-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  opacity: 0;
  color: #7e7e7e;
  font-size: 14px;
}
/* Touch devices */
.touch .cd-nav-trigger {
  position: fixed;
  z-index: 9999;
  top: inherit;
  right: 5%;
  bottom: 30px;
  display: block;
  width: 44px;
  height: 44px;
  border-radius: .25em;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
}
.touch .cd-nav-trigger span {
  position: absolute;
  top: 50%;
  right: auto;
  bottom: auto;
  left: 50%;
  width: 4px;
  height: 4px;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  border-radius: 50%;
  background-color: #3e3947;
}
.touch .cd-nav-trigger span::before, .touch .cd-nav-trigger span::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  border-radius: inherit;
  background-color: inherit;
}
.touch .cd-nav-trigger span::before {
  top: -9px;
}
.touch .cd-nav-trigger span::after {
  bottom: -9px;
}
.touch #cd-vertical-nav {
  position: fixed;
  z-index: 1200;
  right: 5%;
  bottom: 30px;
  overflow-y: scroll;
  width: 90%;
  max-width: 400px;
  max-height: 90%;
  -webkit-transition-duration: .2s;
  transition-duration: .2s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: right bottom;
  -ms-transform-origin: right bottom;
  transform-origin: right bottom;
  border-radius: .25em;
  background-color: rgba(255, 255, 255, .9);
}
.touch #cd-vertical-nav ul.op-nav {
  margin: 0;
  padding: 0;
}
.touch #cd-vertical-nav a {
  display: block;
  padding: 1em;
  border-bottom: 1px solid rgba(62, 57, 71, .1);
}
.touch #cd-vertical-nav a span:first-child {
  display: none;
}
.touch #cd-vertical-nav a.is-selected span:last-child {
  color: #7e7e7e;
}
.touch #cd-vertical-nav.open {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.touch #cd-vertical-nav.open+.cd-nav-trigger {
  background-color: transparent;
}
.touch #cd-vertical-nav.open+.cd-nav-trigger span {
  background-color: rgba(62, 57, 71, 0);
}
.touch #cd-vertical-nav.open+.cd-nav-trigger span::before, .touch #cd-vertical-nav.open+.cd-nav-trigger span::after {
  left: -8px;
  width: 20px;
  height: 3px;
  border-radius: 0;
  background-color: #3e3947;
}
.touch #cd-vertical-nav.open+.cd-nav-trigger span::before {
  top: 1px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.touch #cd-vertical-nav.open+.cd-nav-trigger span::after {
  bottom: 0;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}
.touch #cd-vertical-nav li:last-child a {
  border-bottom: none;
}
@media only screen and (min-width: 768px) {
  .touch .cd-nav-trigger, .touch #cd-vertical-nav {
    bottom: 40px;
  }
}

/*responsive issue fix*/
body {
  overflow-x: hidden;
}

/*==============================================
 Body
 ===============================================*/
.body-content {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.page-content {
  display: block;
  width: 100%;
  padding: 60px 0;
}

/*==============================================
 Background Images
 ===============================================*/
 #maintop_bg {
     background-image: url(../img/go_top.png);
     background-position: center top;
     background-size: cover;
     background-repeat: repeat;
 }

/* -------------------------------
   Tablet Portrait
   ------------------------------- */
@media screen and (max-width: 768px) {
  h1 {
    font-size: 26px;
  }
  h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  #footer.brown .container {
    padding-right: 30px;
    padding-left: 30px;
  }
  .page-content {
    padding: 50px 0;
  }
}
/* -------------------------------
   Add
   ------------------------------- */
a:hover img {
  opacity: 0.8;
}
#footer.brown {
    padding: 20px 0;
    background: #fff;
    border-top: 2px solid #f4f4f4;
    margin-top: 0;
    width: 100%;
}
/* IE用 */
@media all and (-ms-high-contrast: none) {
  #footer.brown {
    padding: 22px 0 16px;
  }
}
#footer div.copyright p {
  color: #333;
  font-weight: 600;
  font-feature-settings: "palt"1;
}
footer p {
  color: #fff;
  font-size: 13px;
  line-height: 1.5em;
  margin-bottom: 50px;
}
footer .copyright p {
  margin-bottom: 0;
  display: inline-block;
  float: right;
}
footer .copyright p:last-child {
  float: left;
}
footer .copyright p a {
  color: #333;
  font-feature-settings: "palt"1;
}
footer .copyright p a:hover {
  opacity: 0.8;
  text-decoration: underline !important;
}
div.en-p {
  padding-top: 100px;
}
img.mw100 {
  max-width: 100%;
}
.top-bar {
  height: 36px;
  border-bottom: 0;
  line-height: 36px;
  background-color: #fff;
}
.top-bar .container {
  padding: 0 30px;
}
img.logopr {
  height: 20px;
  margin-top: 8px;
  float: left;
  display: block;
}
.top-bar p {
  color: #66321f;
  font-size: 13px;
  margin: 5px 0 0 10px;
  float: left;
}
/* IE用 */
@media all and (-ms-high-contrast: none) {
  .top-bar p {
    margin: 8px 0 0 10px;
  }
}
.terms {
    text-align: right;
}
.top-bar p a {
  color: #66321f;
  border-bottom: 1px solid #fff;
}
.top-bar p a:hover {
  border-bottom: 1px solid #999999;
  text-decoration: none !important;
  transition: 0s;
}

@media (max-width: 375px) {
  .top-bar p {
    margin: 1px 0 0 5px;
  }
}

@media (max-width: 991px) {
  footer p {
    margin-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .top-bar p {
    display: none;
  }
  .top-bar p:last-child {
    display: inline-block;
  }
  footer p {
    margin-bottom: 30px;
  }
}

@media (min-width: 441px) {
  footer .copyright p.sp {
    display: none;
  }
}
@media (max-width: 440px) {
  footer .copyright p {
    font-size: 12px;
  }
  footer .copyright p.pc {
    display: none;
  }
  footer .copyright p {
    float: none;
    width: 100%;
    text-align: center;
  }
}
@media (max-width: 400px) {
  footer .copyright p {
    font-size: 11px;
  }
}
@media (max-width: 380px) {
}
@media (max-width: 360px) {
  footer .copyright p {
    font-size: 10px;
  }
  img.logopr {
    height: 18px;
    margin-top: 6px;
  }
  .top-bar p {
    font-size: 12px;
  }
}
@media (max-width: 340px) {
  img.logopr {
    height: 15px;
    margin-top: 8px;
  }
}
div.row::before {
  display: none;
}
#container.shoplist {
  margin-top: 80px;
}
.l-navbar {
  width: 100% !important;
}
body {
  padding: 0;
}

body, input, select, textarea {
  /* font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; */
  font-weight: 800;
}
.gothic {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
div#gnFooter {
  position: fixed;
  bottom: 110px;
  right: 30px;
  z-index: 100;
}
#gnFooterHomeLink p a {
    border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    font-size: 24px;
    width: 50px;
    height: 50px;
    background: #66321f;
    opacity: 1;
    border: 1px solid #fff;
    color: #fff;
    display: inline-block;
    text-align: center;
    line-height: 50px;
}
/* ie */
@media all and (-ms-high-contrast: none) {
  #gnFooterHomeLink p a {
    padding: 5px 10px;
  }
  body {
    padding-right: 0 !important;
  }
}
/* recipesite */
p {
  margin-bottom: 0;
}

/* IE用 */
@media all and (-ms-high-contrast: none) {
.terms {
    text-align: right;
}
}

/* responsive */
@media (max-width: 991px) {
  .top-bar p {
    display: none;
  }
  .top-bar .terms p {
    display: block;
  }
}
@media (max-width: 767px) {
  .top-bar .container {
    padding: 0 30px;
  }
  #gnFooterHomeLink p a {
    font-size: 20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
}
@media (max-width: 479px) {
  #footer div.copyright p.pc {
    letter-spacing: -0.05em;
  }
}

@media (max-width: 414px) {
  .container-fluid, .col-lg-1, .col-md-1, .col-sm-1, .col-xs-1, .col-lg-2, .col-md-2, .col-sm-2, .col-xs-2, .col-lg-3, .col-md-3, .col-sm-3, .col-xs-3, .col-lg-4, .col-md-4, .col-sm-4, .col-xs-4, .col-lg-5, .col-md-5, .col-sm-5, .col-xs-5, .col-lg-6, .col-md-6, .col-sm-6, .col-xs-6, .col-lg-7, .col-md-7, .col-sm-7, .col-xs-7, .col-lg-8, .col-md-8, .col-sm-8, .col-xs-8, .col-lg-9, .col-md-9, .col-sm-9, .col-xs-9, .col-lg-10, .col-md-10, .col-sm-10, .col-xs-10, .col-lg-11, .col-md-11, .col-sm-11, .col-xs-11, .col-lg-12, .col-md-12, .col-sm-12, .col-xs-12 {
    padding-right: 15px;
    padding-left: 15px;
  }
  .top-bar p {
    margin-top: 6px;
  }
  .top-bar .container {
    padding: 0 15px;
  }
  div#gnFooter {
    bottom: 60px;
    right: 15px;
  }
  #gnFooterHomeLink p a {
    font-size: 18px;
    width: 36px;
    height: 36px;
    line-height: 36px;
  }
}
/* IE用 */
@media all and (-ms-high-contrast: none) and (max-width: 414px) {
}

@media (min-width: 992px) {
  .container {
    max-width: 1010px;
    width: 1010px;
  }
}
@media (max-width: 1010px) {
  .container {
    max-width: 100%;
    width: 1010px;
  }
}

/* add */
.bg_w {
    background-color: #fff;
}
.flex {
    display: flex;
}
#footer.brown .container {
    padding: 0 30px;
}
.flex.campaign-detail {
    justify-content: space-between;
    align-items: center;
}
.campaign-detail01 {
    width: 30%;
    padding: 30px;
    background-color: #ef5e5e;
    border-radius: 10px 0 0 10px;
}
.campaign-detail01 p {
    font-size: 22px;
    color: #fff;
    line-height: 1em;
}
.campaign-detail02 {
    width: 70%;
    padding: 30px;
    background-color: #fff;
    border-radius: 0 10px 10px 0;
    text-align: left;
}
.campaign-detail02 p {
    color: #808080;
    font-size: 22px;
    line-height: 1em;
    letter-spacing: 0.05em;
}
.flex.campaign-detail2 {
    justify-content: space-between;
    margin-top: 15px;
}
.flex.campaign-detail2 .campaign-detail02 p {
    font-size: 16px;
}
.flex.campaign-detail2 .campaign-detail02 p.area-detail {
    font-size: 13px;
    margin-top: 10px;
    margin-left: 1em;
    text-indent: -1em;
    line-height: 1.3em;
}
.bg-gray {
    background-color: #f2f5f7;
}
.flex.campaign-detail2 .campaign-detail01 {
    position: relative;
}
.flex.campaign-detail2 .campaign-detail01 p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.cam-title h3 {
    font-size: 40px;
    letter-spacing: 0;
    color: #ef5e5e;
    display: inline-block;
    background-image: url(../img/dot.png);
    background-position: left bottom;
    background-repeat: repeat-x;
    margin-bottom: 40px;
}
.cam-title img {
    display: block;
    margin: 0 auto;
}
.border-r {
    border: 3px solid #ef5e5e;
}
.bg_w.border-r {
    border-radius: 15px;
    padding: 60px 100px;
    position: relative;
}
.pre-coupon p {
    margin: 30px 0;
    color: #808080;
}
img.absolute-cam1 {
    position: absolute;
    left: 30px;
    top: -40px;
    max-width: 120px;
}
.pre-coupon .flex {
    width: 100%;
    justify-content: space-between;
    margin-top: 40px;
}
.pre-coupon .flex img {
    width: calc(33.333% - 20px);
}
.bg_w.border-r.text-center.lottery-detail {
    margin: 60px 0;
    background-image: url(../img/go_image2.png),url(../img/go_image1.png);
    background-repeat: no-repeat;
    background-position: right 20px bottom 25px,left 15px bottom;
    background-size: 140px,100px;
}
.bg_w.border-r.text-center.lottery-detail p {
    margin: 30px 0 0;
}
.bg_w.border-r.text-center.lottery-detail p a {
    color: #ef5e5e;
    border-bottom: 1px solid #ef5e5e;
}
.pre-coupon a img {
    margin-top: 40px;
}
.bg_w.border-r.text-center.lottery-detail p a:hover {
    opacity: 0.7;
}
.pre-coupon img.title-img {
    max-width: 85%;
}
img.mw100.sankatenpo {
    max-width: 80%;
}
.sankajohken {
    margin-top: 30px;
}
.sankajohken p {
    color: #808080;
    font-size: 14px;
    margin-left: 1em;
    text-indent: -1em;
        font-weight: 500;
}
.app-detail02 p {
    font-size: 14px;
    line-height: 1.3em;
    color: #808080;
    margin-top: 15px;
    font-weight: 500;
}
.sankajohken p a {
    color: #ef5e5e;
    border-bottom: 1px solid #ef5e5e;
}
.flex.app-detail01 {
    justify-content: space-between;
}
.app-detail01-1 {
    width: calc(24% - 25px);
}
.app-detail01-2 {
    width: calc(76% - 25px);
}
.app-detail01-2 p {
    text-align: center;
    background-color: #fff;
    line-height: 1em;
    padding: 15px;
    font-size: 16px;
    color: #333;
}
.flex.app-detail01-2-1 {
    justify-content: space-between;
    margin: 30px;
}
.flex.app-detail01-2-1 img {
    /* max-height: 95px; */
}
.app-detail01-2-1-1 {
    width: calc(53% - 17px);
}
.app-detail01-2-1-2 {
    width: calc(47% - 15px);
}
.page-content.no-pdg {
    padding: 0;
}
.cmp-mv01 {
    width: calc(50% - 15px);
}
.flex.cmp-mv {
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.cmp-mv01:last-child {
    padding: 50px;
    background-image: url(../img/go_top_back.png);
}
.cmp-mv01 h1 {
    margin-bottom: 0;
}
.sankajohken p a:hover {
    opacity: 0.7;
}
.flex.campaign-detail2 .campaign-detail02 p.area-detail a {
    color: #ef5e5e;
    border-bottom: 1px solid #ef5e5e;
}
.pre-coupon p.gothic.text-right {
    margin: 10px 0 0;
    font-size: 14px;
    line-height: 1em;
    text-align: right;
}

@media (max-width: 991px) {
.campaign-detail01 p,
.campaign-detail02 p {
    font-size: 20px;
}
.campaign-detail01 {
    width: 26%;
    padding: 30px 15px;
}
.campaign-detail02 {
    width: 74%;
    padding: 30px 15px;
}
.bg_w.border-r {
    padding: 60px 90px;
}
}

@media (max-width: 860px) {
.flex.campaign-detail2 .campaign-detail02 p {
    line-height: 1.3em;
}
.cam-title h3 {
    font-size: 36px;
}
.cam-title img {
    max-width: 120px;
}
img.absolute-cam1 {
    max-width: 100px;
}
.pre-coupon img.title-img {
    max-width: 90%;
}
.pre-coupon p {
    text-align: left;
}
.bg_w.border-r.text-center.lottery-detail p {
    text-align: center;
}
.bg_w.border-r.text-center.lottery-detail {
    background-size: 120px,85px;
}
.app-detail01-1 {
    width: calc(24% - 20px);
}
.app-detail01-2 {
    width: calc(76% - 20px);
}
.bg_w.border-r {
    padding: 60px 80px;
}
.campaign-detail01,.campaign-detail02 {
    width: 100%;
}
.flex.campaign-detail,
.flex.campaign-detail2 {
    flex-wrap: wrap;
}
.campaign-detail01 {
    padding: 15px;
    border-radius: 10px 10px 0 0;
}
.campaign-detail02 {
      padding: 30px;
      border-radius: 0 0 10px 10px;
}
.flex.campaign-detail2 .campaign-detail01 p {
    position: relative;
}
.app-detail02 p {
    text-align: left;
}
.flex.app-detail01-2-1 {
    margin: 30px 15px 15px;
}
}

@media (max-width: 799px) {
.pre-coupon img.title-img {
    max-width: 95%;
}
}

@media (max-width: 767px) {
.bg_w.border-r.text-center.lottery-detail {
    background-size: 105px,75px;
    background-position: right 10px bottom 15px,left 10px bottom;
    margin: 60px 0 50px;
}
.bg_w.border-r {
    padding: 60px;
}
img.absolute-cam1 {
    max-width: 90px;
    left: 15px;
}
.app-detail01-1 {
    width: calc(25% - 15px);
}
.app-detail01-2 {
    width: calc(75% - 15px);
}
.campaign-detail01 p, .campaign-detail02 p {
    font-size: 19px;
}
.flex.campaign-detail2 .campaign-detail02 p {
    font-size: 15px;
}
.flex.app-detail01-2-1 {
    margin: 25px 15px 15px;
}
}

@media (max-width: 699px) {
.campaign-detail02 {
    padding: 25px;
}
.cam-title h3 {
    font-size: 34px;
}
.cam-title img {
    max-width: 110px;
}
.pre-coupon img.title-img {
    max-width: 100%;
}
.pre-coupon p {
    margin: 20px 0;
}
.pre-coupon .flex {
    margin-top: 20px;
}
.bg_w.border-r.text-center.lottery-detail {
    background-size: 0;
}
.cmp-mv01:last-child {
    padding: 40px;
}
}

@media (max-width: 599px) {
.campaign-detail02 {
    padding: 20px;
}
.campaign-detail02 p {
    line-height: 1.3em;
}
.cmp-mv01:last-child {
    padding: 30px;
}
}

@media (max-width: 575px) {
.campaign-detail01 p, .campaign-detail02 p {
    font-size: 18px;
}
.campaign-detail02 {
    padding: 15px;
}
img.absolute-cam1 {
    max-width: 80px;
    top: -45px;
}
.bg_w.border-r {
    padding: 50px 40px 40px;
}
.pre-coupon a img {
    margin-top: 30px;
}
.cam-title h3 {
    font-size: 32px;
}
.cam-title img {
    max-width: 100px;
}
.bg_w.border-r.text-center.lottery-detail p {
    text-align: left;
    line-height: 1.5em;
}
img.mw100.sankatenpo {
    max-width: 85%;
}
.bg_w.border-r.text-center.lottery-detail {
    margin: 60px 0 40px;
}
.app-detail02 p {
    line-height: 1.5em;
}
.sankajohken p {
    line-height: 1.5em;
}
.sankajohken {
    margin-top: 20px;
}
.app-detail01-2 p {
    padding: 10px;
    font-size: 15px;
    margin-bottom: 10px;
}
.cmp-mv01:last-child {
    padding: 25px;
}
.cmp-mv01 {
    width: calc(50% - 10px);
}
img.none575 {
    display: none;
}
.pre-coupon p {
    line-height: 1.5em;
}
.pre-coupon img.title-img {
    max-width: 85%;
}
.flex.app-detail01-2-1 {
    margin: 20px 10px 10px;
}
}

@media (min-width: 576px) {
img.none576 {
    display: none;
}
}

@media (max-width: 480px) {
.campaign-detail01 p, .campaign-detail02 p {
    font-size: 17px;
}
.page-content {
    padding: 40px 0;
}
img.absolute-cam1 {
    max-width: 70px;
    top: -35px;
}
.bg_w.border-r {
    padding: 50px 30px 30px;
}
.bg_w.border-r.text-center.lottery-detail {
    margin: 50px 0 30px;
}
.app-detail02 p,
.sankajohken p {
    font-size: 13px;
}
.app-detail01-1 {
    width: calc(28% - 10px);
}
.app-detail01-2 {
    width: calc(72% - 10px);
}
.bg_w.border-r.text-center.lottery-detail p {
    margin: 20px 0 0;
}
.pre-coupon p {
    font-size: 14px;
}
.cmp-mv01 {
    width: 100%;
}
.cmp-mv01 h1 img {
    max-width: 100%;
    padding: 30px 50px;
}
.cmp-mv01:last-child {
    padding: 30px 50px;
}
div#maintop_bg .col-md-12 {
    padding: 0;
}
.pre-coupon .flex img {
    width: calc(33.333% - 10px);
}
img.none480 {
    display: none;
}
.flex.app-detail01-2-1 {
    margin: 15px 10px 10px;
}
.app-detail01-2-1-1 {
    width: calc(53% - 11px);
}
.app-detail01-2-1-2 {
    width: calc(47% - 10px);
}
}

@media (min-width: 481px) {
img.none481 {
    display: none;
}
}


@media (max-width: 414px) {
.terms {
    display: none;
}
#footer.brown {
    padding: 10px 0;
}
.cmp-mv01 h1 img {
    padding: 30px;
}
.cmp-mv01:last-child {
    padding: 30px 50px;
}
.campaign-detail01 p, .campaign-detail02 p {
    font-size: 16px;
}
.cam-title h3 {
    font-size: 30px;
}
.cam-title img {
    max-width: 90px;
}
.pre-coupon img.title-img {
    max-width: 100%;
}
.pre-coupon .flex {
    flex-wrap: wrap;
}
.pre-coupon .flex img {
    width: 100%;
}
.pre-coupon .flex img {
    width: calc(50% - 10px);
}
.pre-coupon .flex img:last-child {
    margin: 15px auto 0;
}
.pre-coupon p.gothic.text-right {
    font-size: 13px;
}
}

@media (max-width: 390px) {
.app-detail01-2 p {
    font-size: 14px;
}
.cmp-mv01 h1 img {
    padding: 25px 15px;
}
.cmp-mv01:last-child {
    padding: 25px 50px;
}
}

@media (max-width: 360px) {
img.absolute-cam1 {
    max-width: 65px;
    top: -30px;
}
.bg_w.border-r {
    padding: 45px 30px 30px;
}
.bg_w.border-r.text-center.lottery-detail {
    margin: 40px 0 30px;
}
.app-detail01-2 p {
    font-size: 13px;
    margin-bottom: 5px;
}
.app-detail01-1 {
    width: calc(28% - 5px);
}
.app-detail01-2 {
    width: calc(72% - 5px);
}
.pre-coupon p {
    font-size: 13px;
}
.flex.campaign-detail2 .campaign-detail02 p {
    font-size: 14px;
}
.cmp-mv01:last-child {
    padding: 25px 40px;
}
}

@media (max-width: 340px) {
.cmp-mv01:last-child {
    padding: 25px 35px;
}
.cam-title h3 {
    font-size: 28px;
}
.cam-title img {
    max-width: 80px;
}
.bg_w.border-r {
    padding: 45px 25px 25px;
}
}

@media (max-width: 320px) {
.cmp-mv01 h1 img {
    padding: 20px 15px;
}
.cmp-mv01:last-child {
    padding: 20px 30px;
}
.pre-coupon .flex img {
    width: calc(50% - 5px);
}
}

/* IE用 */
@media all and (-ms-high-contrast: none) {
  * {
    font-family: "メイリオ", Meiryo, sans-serif,"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro";
  }
}
