.w700 {
  font-weight: bold;
}

a:hover {
  text-decoration: none;
}

.hamburger {
  top: 0;
  right: 0;
  z-index: 201;
  transition: all 0.4s ease;
  overflow: hidden;
  position: fixed;
  top: 20px;
  right: 20px;
  width: 55px;
  height: 55px;
  background: url("../img/shared/bg03.jpg") top center;
}

@media screen and (min-width: 768px) {
  .hamburger {
    display: none;
  }
}

.hamburger:before {
  content: "";
  background: #fff;
  width: 1px;
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 0;
  display: none;
}

.nav--opened .hamburger:after {
  color: #fff;
}

.hamburger .hamburger-box {
  display: block;
  position: relative;
  padding: 0px 0 0 0px;
  cursor: pointer;
  transition: all 0.4s ease;
  width: 32px;
  margin: 0 auto;
}

.nav--opened .hamburger .hamburger-box .hline-top,
.nav--opened .hamburger .hamburger-box .hline-center,
.nav--opened .hamburger .hamburger-box .hline-bottom {
  display: block;
}

.nav--opened .hamburger .hamburger-box .hline-bottom {
  transform: rotate(45deg);
  top: 28px;
  left: 0;
}

.nav--opened .hamburger .hamburger-box .hline-center {
  display: none;
}

.nav--opened .hamburger .hamburger-box .hline-top {
  transform: rotate(-45deg);
  top: 28px;
  left: 0;
}

.hamburger .hline-center,
.hamburger .hline-bottom,
.hamburger .hline-top {
  height: 1px;
  position: absolute;
  left: 0;
  top: 26px;
  width: 100%;
  background: #fff;
  transition-delay: 0s;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger .hamburger-box .hline-bottom::before,
.hamburger .hamburger-box .hline-bottom::after,
.hamburger .hamburger-box .hline-center::before,
.hamburger .hamburger-box .hline-center::after,
.hamburger .hamburger-box .hline-top::before,
.hamburger .hamburger-box .hline-top::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  z-index: 2;
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger .hline-top {
  top: 14px;
}

.hamburger .hline-bottom {
  top: 38px;
}

.hamburger .hamburger-inner {
  display: block;
}

.social {
  display: flex;
  gap: 23px;
  justify-content: center;
}

.social a {
  display: block;
  line-height: 1;
}

.social a img {
  height: 31px;
  width: auto;
}

#header {
  position: relative;
  z-index: 123;
  display: flex;
}

#header::after {
  content: "";
  background: url("../img/shared/header_line.jpg") repeat-x bottom center;
  position: absolute;
  bottom: -17px;
  left: 0;
  width: 100%;
  height: 17px;
}

#header h1 {
  position: absolute;
  top: 28px;
  left: 379px;
  z-index: 1;
  font-size: 12px;
  letter-spacing: 0.1em;
  color: #fff;
}

#header .logo {
  position: absolute;
  top: 28px;
  left: 379px;
  z-index: 1;
  display: none;
}

#header .header__left {
  width: 340px;
  background: url("../img/shared/bg02.jpg") repeat-y top center;
  background-size: 100% auto;
  color: #fff;
  padding-top: 42px;
  padding-bottom: 50px;
  position: relative;
}

#header .header__left::before {
  content: "";
  background: url("../img/shared/head_deco01.png") no-repeat top center;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 311px;
}

#header .header__left .header__left__logo {
  width: 250px;
  margin: 0 auto 9px;
}

#header .header__left .header__left__tel {
  width: 295px;
  margin: 0 auto 31px;
}

#header .header__left .header__nav {
  width: 250px;
  margin: 0 auto 42px;
}

#header .header__left .header__navList li {
  position: relative;
}

#header .header__left .header__navList li a {
  display: block;
  color: #ffffff;
  font-size: 19px;
  padding-left: 44px;
  position: relative;
  line-height: 1;
}

#header .header__left .header__navList li a::before {
  content: "";
  background: url("../img/shared/icon_active.png") no-repeat top center;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 33px;
  height: 26px;
  opacity: 0;
}

#header .header__left .header__navList li a.active,
#header .header__left .header__navList li a:hover {
  color: #f4b63d;
}

#header .header__left .header__navList li a.active::before,
#header .header__left .header__navList li a:hover::before {
  opacity: 1;
}

#header .header__left .header__navList li+li {
  margin-top: 31px;
}

#header .header__left .header__list {
  text-align: center;
  width: 250px;
  margin: 0 auto 39px;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  padding: 21px 0;
  line-height: 1;
}

#header .header__left .header__list li+li {
  margin-top: 19px;
}

#header .header__left .header__list a {
  display: block;
  text-align: center;
  font-size: 17px;
}

#header .header__left .header__list a:hover,
#header .header__left .header__list a.active {
  opacity: 0.6;
}



@media screen and (max-width: 767px) {
  #header {
    display: block;
  }

  #header::after {
    bottom: 0;
    height: 10px;
  }

  #header h1 {
    font-size: 11px;
    color: #fff;
    line-height: 1.5;
    top: 20px;
    left: 20px;
    right: 100px;
  }

  #header .logo {
    top: 52vw;
    left: 0;
    width: 67vw;
    right: 0;
    margin: 0 auto;
    display: block;
  }

  .nav--opened #fixed-sp {
    opacity: 0 !important;
    visibility: hidden !important;
  }
}

#key {
  height: 135vw;
}

#key .catch {
  position: absolute;
  bottom: 38vw;
  left: 0;
  z-index: 1;
  right: 0;
  text-align: center;
  width: 60vw;
  margin: 0 auto;
}

#key .key__img {
  height: 100%;
  width: 100%;
}

#key .key__img img {
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}

@media screen and (min-width: 768px) {
  #key {
    width: calc(100% - 340px);
    height: 900px;
  }

  #key .catch {
    bottom: 37px;
  }
}

#nav-fixed {
  position: fixed;
  opacity: 0;
  visibility: hidden;
  top: 0;
  left: 0;
  right: 0;
  z-index: 123;
  transition: all 0.3s ease;
}

.has-nav #nav-fixed,
#nav-fixed.fixed {
  opacity: 1;
  visibility: visible;
}

.nav-fixed__ham {
  background: url("../img/shared/bg02.jpg") repeat-y top center;
  background-size: 100% auto;
  height: 100px;
}

.nav-fixed__ham .row-1 {
  padding-top: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 14px;
  line-height: 1;
}

.nav-fixed__ham .row-1 .nav-fixed__tel {
  width: 411px;
  padding-left: 140px;
}

.nav-fixed__ham .row-1 .nav-fixed__list {
  display: flex;
}

.nav-fixed__ham .row-1 .nav-fixed__list li {
  padding: 0 8px;
  position: relative;
}

.nav-fixed__ham .row-1 .nav-fixed__list li::before {
  content: "";
  border-left: 1px solid #f0d9b5;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1px;
  height: 16px;
}

.nav-fixed__ham .row-1 .nav-fixed__list li a {
  color: #f0d9b5;
  font-size: 15px;
  padding: 0 5px;
}

.nav-fixed__ham .row-1 .nav-fixed__list li a.active,
.nav-fixed__ham .row-1 .nav-fixed__list li a:hover {
  opacity: 0.6;
}

.nav-fixed__ham .row-1 .nav-fixed__list li:last-child::after {
  content: "";
  border-left: 1px solid #f0d9b5;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 1px;
  height: 16px;
}

.nav-fixed__header {
  line-height: 1;
}

.nav-fixed__header ul {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nav-fixed__header ul li {
  position: relative;
  margin: 0 10px;
}

.nav-fixed__header ul li a {
  color: #fff;
  opacity: 1;
  font-size: 17px;
}

.nav-fixed__header ul li a:hover,
.nav-fixed__header ul li a.active {
  color: #f4b63d;
}

#footer {
  position: relative;
  background: url("../img/shared/bg02.jpg") repeat-y top center;
  background-size: 100% auto;
  padding: 20vw 0 30vw;
  color: #fff;
}

#footer::before {
  content: "";
  background: url("../img/shared/header_line.jpg") repeat-x bottom center;
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 12px;
}

#footer .nav__footer {
  margin-bottom: 44px;
}

#footer .nav__footer .nav__footerList ul {
  display: flex;
  align-items: center;
  justify-content: center;
}

#footer .nav__footer .nav__footerList ul li {
  position: relative;
  padding: 0 17px;
}

#footer .nav__footer .nav__footerList ul li::before {
  content: "";
  border-left: 1px solid #f0d9b5;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1px;
  height: 16px;
}

#footer .nav__footer .nav__footerList ul li a {
  color: #fff;
  font-size: 14px;
  padding: 0 5px;
  display: block;
  text-align: center;
  line-height: 1;
}

#footer .nav__footer .nav__footerList ul li a.active,
#footer .nav__footer .nav__footerList ul li a:hover {
  color: #f4b63d;
}

#footer .nav__footer .nav__footerList ul li:last-child::after {
  content: "";
  border-left: 1px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 1px;
  height: 16px;
}

#footer .nav__footer .nav__footerList ul+ul {
  margin-top: 16px;
}

#footer .set2 {
  position: relative;
}

#footer .set2 .left {
  margin-bottom: 2vw;
}

#footer .set2 .left .footer__logo {
  width: 70vw;
  margin: 0 auto 5vw;
}

#footer .set2 .left .footer__tel {
  margin: 0 auto 0;
  width: 90vw;
}

#footer .set2 .left .note {
  font-size: 10px;
  color: #feefbf;
  margin-bottom: 8vw;
  text-align: center;
}

#footer .set2 .left .social li a img {
  height: 29px;
}

#footer .set2 .right dl {
  line-height: 26px;
  font-size: 12px;
  letter-spacing: 0.01em;
}

#footer .set2 .right dl+dl {
  margin-top: 3vw;
}

#footer .set3 {
  position: relative;
  padding-top: 10vw;
}

#footer .set3 #socialbuttons {
  position: relative;
  margin-bottom: 5vw;
  height: 20px;
  justify-content: center;
  margin-bottom: 5vw;
}

#footer .set3 .footer__add {
  text-align: center;
  font-size: 13px;
}

#footer .set3 .footer__add .cookies_link a {
  text-decoration: underline;
}

#footer .set3 .footer__add .cookies_link a:hover {
  text-decoration: none;
}

#footer .set3 .footer__add address span {
  font-size: 17px;
  position: relative;
  display: inline-block;
  top: 3px;
}


@media screen and (min-width: 768px) {
  #footer {
    padding: 80px 0 40px;
  }

  #footer::before {
    height: 17px;
  }

  #footer .set2 {
    position: relative;
    padding-left: 32px;
  }

  #footer .set2 .left {
    width: 385px;
    margin-bottom: 0;
  }

  #footer .set2 .left .footer__logo {
    width: 275px;
    margin: 0 0 9px 65px;
  }

  #footer .set2 .left .footer__tel {
    margin: 0 auto 9px;
    width: 321px;
  }

  #footer .set2 .left .note {
    font-size: 12px;
    margin-bottom: 40px;
    line-height: 1;
  }

  #footer .set2 .left .social li a img {
    height: 29px;
  }

  #footer .set2 .right {
    width: 557px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    padding-top: 9px;
    padding-bottom: 41px;
  }

  #footer .set2 .right dl {
    display: flex;
    justify-content: space-between;
    line-height: 30px;
    width: 105%;
    font-size: 16px;
  }

  #footer .set2 .right dl dt {
    min-width: 106px;
  }

  #footer .set2 .right dl dd {
    width: 100%;
    letter-spacing: 3px;
  }

  #footer .set2 .right dl+dl {
    margin-top: 10px;
  }

  #footer .set3 {
    padding-top: 35px;
  }

  #footer .set3 #socialbuttons {
    position: absolute;
    width: 439px;
    top: -16px;
    left: 74px;
    margin-bottom: 0;
    justify-content: left;
  }

  #footer .set3 .footer__add {
    text-align: right;
    display: flex;
    justify-content: flex-end;
    gap: 25px;
    font-size: 14px;
    padding-right: 28px;
    letter-spacing: 2px;
  }

  #footer .set3 .footer__add address span {
    font-size: 13px;
    top: 0;
  }


}

#pagetop {
  width: 70px;
  position: fixed;
  z-index: 10;
  right: -10px;
  bottom: 77px;
  transition: all 0.3s ease;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
}

#pagetop.visible {
  opacity: 1;
  visibility: visible;
}

@media screen and (min-width: 768px) {
  #pagetop {
    width: 157px;
    bottom: 9px;
    right: 20px;
  }
}

body.ct--opened,
body.ct--opened *,
body.ct--opened *:hover,
body.ct--opened *:focus,
body.ct--opened *:active,
body.nav--opened,
body.nav--opened *,
body.nav--opened *:hover,
body.nav--opened *:focus,
body.nav--opened *:active {
  /*    cursor: none !important;*/
  touch-action: none !important;
  pointer-events: none !important;
}

body.nav--opened #fixed-sp,
body.nav--opened #fixed-sp *,
body.nav--opened .hamburger,
body.nav--opened #menu-toggle,
body.nav--opened #menu-toggle * {
  touch-action: auto !important;
  pointer-events: visible !important;
}

.nav--opened {
  overflow: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: none !important;
  pointer-events: none !important;
}

.nav--opened #menu-toggle {
  opacity: 1;
  visibility: visible;
  pointer-events: visible;
  transform: translateX(0);
}

footer:after {
  transition: opacity 0.1s ease;
}

.menu-toggle {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  box-sizing: border-box;
  background-size: cover;
  transition: all 0.5s ease 0s;
  -moz-transition: all 0.5s ease 0s;
  -webkit-transition: all 0.5s ease 0s;
  overflow: auto;
  z-index: 121;
  left: 0;
}

.menu-toggle {
  background: url("../img/shared/bg02.jpg") repeat-y top center;
  background-size: 100% auto;
}

.menu-toggle .inner {
  padding: 15vw 6vw 25vw;
}

.menu-toggle .inner .nav__toggle {
  margin-bottom: 10vw;
}

.menu-toggle .inner .nav__toggle li .active {
  color: #f4b63d;
}

.menu-toggle .inner .nav__toggle li a {
  font-size: 18px;
  display: block;
  text-align: center;
  color: #fff;
  padding: 5px 0;
}

.menu-toggle .inner .toggle__list {
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  display: flex;
  justify-content: center;
  padding: 4vw 0;
  margin-bottom: 10vw;
}

.menu-toggle .inner .toggle__list .active {
  color: #f4b63d;
}

.menu-toggle .inner .toggle__list li {
  position: relative;
  padding: 0 12px;
}

.menu-toggle .inner .toggle__list li::after {
  content: "";
  border-left: 1px solid rgba(255, 255, 255, 0.25);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 1px;
  height: 18px;
}

.menu-toggle .inner .toggle__list li a {
  font-size: 15px;
  display: block;
  text-align: center;
  color: #fff;
}

.menu-toggle .inner .toggle__list li:last-child::after {
  border-left: none;
}

.menu-toggle .inner .social {
  margin-bottom: 10vw;
  gap: 25px;
}

.menu-toggle .inner .toggle__tel {
  width: 82vw;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .menu-toggle {
    /* Responsive here */
  }
}

#fixed-sp {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 123;
  background: url("../img/shared/bg03.jpg") top center;
}

#fixed-sp ul {
  display: flex;
  justify-content: space-between;
}

#fixed-sp ul li {
  border-left: 1px solid #e5dac5;
  border-top: 1px solid #e5dac5;
}

#fixed-sp ul li a {
  display: block;
  text-align: center;
  color: #fff;
}

#fixed-sp ul .fixed-sp__tel {
  width: 77%;
  border-left: none;
}

#fixed-sp ul .fixed-sp__tel a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  height: 100%;
  letter-spacing: 0.15em;
  font-weight: 400;
}

#fixed-sp ul .fixed-sp__map {
  width: 23%;
}

#fixed-sp ul .fixed-sp__map a {
  padding: 12px 0 5px;
  font-size: 13px;
  font-weight: 400;
}

#fixed-sp ul .fixed-sp__map img {
  display: block;
  width: 17px;
  margin: 0 auto;
}

.bnr__shared {
  max-width: 420px;
  margin-left: auto;
  margin-right: auto;
}

.bnr__shared a {
  display: block;
  font-size: 18px;
  color: #fcdfad;
  line-height: 1;
  position: relative;
  background: url("../img/shared/bg03.jpg") repeat-y top center;
  background-size: 100% auto;
  transition: all 0.3s ease;
}

.bnr__shared a span {
  display: block;
  line-height: 1;
  position: relative;
}

.bnr__shared .style-popup,
.bnr__shared .style-1 {
  padding: 31px 0;
  text-align: center;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 900;
}

.bnr__shared .style-popup::after,
.bnr__shared .style-popup::before,
.bnr__shared .style-1::after,
.bnr__shared .style-1::before {
  content: "";
  position: absolute;
  border: 1px solid #fcdfad;
}

.bnr__shared .style-popup::before,
.bnr__shared .style-1::before {
  top: 10px;
  right: 10px;
  bottom: 10px;
  left: 10px;
}

.bnr__shared .style-popup::after,
.bnr__shared .style-1::after {
  opacity: 0.25;
  top: 13px;
  right: 13px;
  bottom: 13px;
  left: 13px;
}

.bnr__shared .style-popup span::after,
.bnr__shared .style-1 span::after {
  content: "";
  background: url("../img/shared/icon_arrow.jpg") no-repeat center center;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  right: 33px;
  transform: translateY(-50%);
  width: 17px;
  height: 17px;
}

.bnr__shared .style-popup span::after {
  content: "";
  background: url("../img/menu/icon_popup.png") no-repeat center center;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  right: 27px;
  transform: translateY(-50%);
  width: 17px;
  height: 17px;
}

.bnr__shared .style-2 {
  font-size: 16px;
  padding: 20px 0;
  border-radius: 50px;
  background: #a64400;
  color: #fff;
  text-align: center;
}

.bnr__shared .style-2::after {
  content: "";
  background: url("../img/shared/icon_arrow02.png") no-repeat center center;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
}

@media screen and (min-width: 768px) {
  .bnr__shared {
    margin-left: 0;
    margin-right: 0;
  }

  .bnr__shared a {
    font-size: 22px;
  }

  .bnr__shared a:hover {
    opacity: 0.8;
  }

  .bnr__shared .style-1 {
    padding: 39px 0;
  }

  .bnr__shared .style-1::before {
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
  }

  .bnr__shared .style-1::after {
    opacity: 0.25;
    top: 13px;
    right: 13px;
    bottom: 13px;
    left: 13px;
  }

  .bnr__shared .style-1 span::after {
    right: 44px;
    width: 20px;
    height: 20px;
  }

  .bnr__shared .style-popup {
    padding: 39px 0;
  }

  .bnr__shared .style-popup span::after {
    right: 44px;
    width: 20px;
    height: 17px;
  }

  .bnr__shared .style-2 {
    font-size: 18px;
    padding: 21px 0;
  }

  .bnr__shared .style-2::after {
    right: 20px;
    width: 35px;
    height: 35px;
  }
}

.remodal__style-2 {
  max-width: 100%;
}

.remodal__style-2::before {
  content: "";
  background: url("../img/menu/popup_bg.png");
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.95;
  z-index: -1;
}

.remodal__style-2 .popup__body {
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
}

.remodal__style-2 .popupMain {
  padding: 0px 0 70px;
}

.remodal__style-2 .popupMain h3 {
  padding: 6px 0;
  text-align: center;
  border: 1px solid #000;
  font-size: 15px;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
  margin-bottom: 15px;
}

.remodal__style-2 .popupMain h4 {
  text-align: center;
  font-size: 15px;
  line-height: 27px;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
  margin-bottom: 8px;
}

.remodal__style-2 .pp__title {
  text-align: center;
  font-size: 40px;
  line-height: 1;
  margin-bottom: 30px;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
}

.remodal__style-2 .pp__note {
  font-size: 15px;
  text-align: center;
  line-height: 1;
  margin-bottom: 40px;
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 600;
}

.remodal__style-2 .pp__row {
  display: grid;
  gap: 10px;
}

.remodal__style-2 .pp__row.cols-1 {
  grid-template-columns: 1fr;
}

.remodal__style-2 .pp__row.cols-2 {
  grid-template-columns: repeat(2, 1fr);
}

.remodal__style-2 .pp__row.cols-3 {
  grid-template-columns: repeat(3, 1fr);
}

.remodal__style-2 .pp__item {
  text-align: left;
  margin-bottom: 50px;
}

.remodal__style-2 .pp__item dl:first-child {
  padding-top: 0;
}

.remodal__style-2 .pp__item dl {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #b7ae9e;
  padding: 7px 0;
  margin: 0 auto;
  text-align: left;
  font-size: 15px;
  line-height: 27px;
}

.remodal__style-2 .pp__item dl dd {
  text-align: right;
  margin-left: 0;
}

.remodal__style-2 .pp__item:last-child {
  margin-bottom: 0;
}

.remodal__style-2 .pp__col {
  width: 318px;
}

.remodal__style-2 .remodal-close-top {
  margin-bottom: 20px;
  position: sticky;
  top: 20px;
  right: 0;
  transition: all 0.3s ease;
}

.remodal__style-2 .remodal-close-top:hover {
  opacity: 0.6;
}

.remodal__style-2 .remodal-close {
  position: relative;
  display: block;
  overflow: visible;
  width: 28px;
  height: 27px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
  background: rgba(0, 0, 0, 0);
  margin-left: auto;
}

.remodal__style-2 .remodal-close::before {
  display: none;
}

.remodal__style-2 .remodal-close.bottom {
  width: 117px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 767px) {
  .remodal__style-2 .popup__body {
    padding-left: 20px;
    padding-right: 20px;
  }

  .remodal__style-2 .popupMain {
    padding: 0vw 0 15vw;
  }

  .remodal__style-2 .popupMain h3 {
    margin-top: 30px;
    margin-bottom: 5px;
  }

  .remodal__style-2 .pp__title {
    margin-bottom: 20px;
    font-size: 6.5vw;
  }

  .remodal__style-2 .pp__note {
    margin-bottom: 20px;
  }

  .remodal__style-2 .pp__row {
    display: block;
    gap: 0;
  }

  .remodal__style-2 .pp__col {
    width: 100%;
    margin-bottom: 0;
  }

  .remodal__style-2 .remodal-close {
    width: 25px;
    height: 24px;
  }

  .remodal__style-2 .pp__item {
    margin-bottom: 30px;
  }

  .remodal__style-2 .pp__item dl:first-child {
    padding-top: 7px;
  }

  .remodal__style-2 .pp__item:last-child {
    margin-bottom: 0;
  }

  .remodal__style-2 .remodal-close.bottom {
    width: 95px;
  }
}

.remodal__style-1 {
  max-width: 1200px;
  padding: 50px 50px 90px;
}

.remodal__style-1::before {
  content: "";
  background: url("../img/menu/popup_bg.png");
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.95;
  z-index: -1;
}

.remodal__style-1 .remodal-close-top {
  margin-bottom: 20px;
  position: sticky;
  top: 20px;
  right: 0;
  margin-bottom: -54px;
  z-index: 5;
}

.remodal__style-1 .remodal-close {
  position: relative;
  display: block;
  overflow: visible;
  width: 82px;
  height: 82px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  border: 0;
  outline: 0;
  background: rgba(0, 0, 0, 0);
  margin-left: auto;
}

.remodal__style-1 .remodal-close::before {
  display: none;
}

.remodal__style-1 .remodal-close:hover {
  opacity: 0.6;
}

.popupMain__style-1 {
  position: relative;
}

.popupMain__style-1 .popup__photo {
  width: 719px;
  position: absolute;
  top: 0;
  left: 85px;
  z-index: 1;
}

.popupMain__style-1 .popup__ttl {
  width: 293px;
  margin-left: auto;
  margin-bottom: 29px;
  margin-right: 120px;
  position: relative;
  z-index: 3;
}

.popupMain__style-1 .popup__box {
  width: 800px;
  margin: 0 auto;
  border-radius: 50px;
  box-sizing: border-box;
  padding: 37px 79px 60px 53px;
  position: relative;
  display: flex;
  justify-content: space-between;
  background-color: #fff;
}

.popupMain__style-1 .popup__box .popup__box__text {
  width: 495px;
  text-align: left;
  position: relative;
  z-index: 2;
}

.popupMain__style-1 .popup__box .popup__box__price {
  color: #d82f08;
  font-size: 20px;
  text-align: right;
}

.popupMain__style-1 .popup__box .popup__box__price span {
  font-size: 24px;
}

.popupMain__style-1 .popup__list-img {
  display: flex;
  margin-top: -30px;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .popupMain__style-1 {
    padding-top: 16vw;
  }

  .remodal__style-1 {
    padding: 10vw 20px 15vw;
  }

  .remodal__style-1 .remodal-close-top {
    margin-bottom: 20px;
    top: 20px;
    margin-bottom: -54px;
  }

  .remodal__style-1 .remodal-close {
    width: 45px;
    height: 45px;
  }

  .remodal__style-1 .remodal-close:hover {
    opacity: 1;
  }

  .popupMain__style-1 .popup__photo {
    width: 86%;
    top: 18vw;
    left: -7%;
  }

  .popupMain__style-1 .popup__ttl {
    width: 32%;
    margin-left: auto;
    margin-bottom: 4vw;
    margin-right: 0;
  }

  .popupMain__style-1 .popup__box {
    width: 100%;
    padding: 11vw 5vw 9vw;
    flex-direction: column-reverse;
    border-radius: 35px;
  }

  .popupMain__style-1 .popup__box .popup__box__text {
    width: auto;
  }

  .popupMain__style-1 .popup__box .popup__box__price {
    font-size: 16px;
    text-align: center;
  }

  .popupMain__style-1 .popup__box .popup__box__price span {
    font-size: 22px;
  }

  .popupMain__style-1 .popup__list-img {
    margin-top: -25px;
  }
}

.m_b05 {
  margin-bottom: 5px;
}

.m_b10 {
  margin-bottom: 10px;
}

.m_b15 {
  margin-bottom: 15px;
}

.m_b20 {
  margin-bottom: 20px;
}

.m_b25 {
  margin-bottom: 25px;
}

.m_b30 {
  margin-bottom: 30px;
}

.m_t05 {
  margin-top: 5px;
}

.m_t10 {
  margin-top: 10px;
}

.m_t15 {
  margin-top: 15px;
}

.m_t20 {
  margin-top: 20px;
}

.m_t25 {
  margin-top: 25px;
}

.m_t30 {
  margin-top: 30px;
}

.m_l05 {
  margin-left: 5px;
}

.m_l06 {
  margin-left: 6px;
}

.m_l07 {
  margin-left: 7px;
}

.m_l08 {
  margin-left: 8px;
}

.m_l09 {
  margin-left: 9px;
}

.m_l10 {
  margin-left: 10px;
}

.m_l20 {
  margin-left: 20px;
}

.m_r20 {
  margin-right: 20px;
}

.p_l05 {
  padding-left: 5px;
}

.p_l10 {
  padding-left: 10px;
}

.p_l15 {
  padding-left: 15px;
}

.p_l20 {
  padding-left: 20px;
}

.p_l25 {
  padding-left: 25px;
}

.p_l30 {
  padding-left: 30px;
}

.p_l40 {
  padding-left: 30px;
}

.p_l50 {
  padding-left: 50px;
}

.p_l65 {
  padding-left: 65px;
}

.p_r05 {
  padding-right: 5px;
}

.p_r10 {
  padding-right: 10px;
}

.p_r15 {
  padding-right: 15px;
}

.p_r20 {
  padding-right: 20px;
}

.p_r25 {
  padding-right: 25px;
}

.p_r30 {
  padding-right: 30px;
}

.p_r40 {
  padding-right: 40px;
}

.p_r50 {
  padding-right: 50px;
}

.p_t10 {
  padding-top: 10px;
}

.p_t20 {
  padding-top: 20px;
}

.p_t30 {
  padding-top: 30px;
}

.p_40 {
  padding-top: 40px;
}

.p_t50 {
  padding-top: 50px;
}

#contanier {
  overflow: hidden;
}

#contanier>div,
.wrap,
.row,
.col,
.box,
.inner {
  position: relative;
}

div#contants_bt {
  width: 1000px;
  height: 150px;
  margin: 0px auto;
  background-image: url(../img/shared/bg_contentsbt.jpg);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  div#contants_bt {
    height: 60px;
    width: 100%;
  }
}