/* MEDIA QUERIES
 * ----------------------------------------------- */
/* ADDITIONAL RESET
 * ----------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

q:before,
q:after,
blockquote:before,
blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

body * {
  max-height: 99999em;
  word-break: break-word;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

input,
label,
select,
button {
  line-height: inherit;
}

input,
label,
select,
button,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  word-break: normal;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  -webkit-appearance: none;
  font: inherit;
}

button:focus {
  outline: 0;
}

input:focus,
textarea:focus,
select:focus {
  outline: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

::-webkit-search-decoration {
  display: none;
}

textarea {
  overflow: auto;
  white-space: pre-line;
  resize: none;
}

/* PRINTING
 * ----------------------------------------------- */
@media print {
  body {
    -webkit-print-color-adjust: exact;
  }

  html,
  body {
    margin: 0;
  }

  @page {
    margin: 0;
  }

  @page :left {
    margin: 0;
  }

  @page :right {
    margin: 0;
  }

  @page :first {
    margin-top: 0;
  }
}

/* GENERAL
 * ----------------------------------------------- */
body {
  color: #434343;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  line-height: 1.4;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}

@font-face {
  font-family: Poppins;
  src: url("fonts/SVN-Poppins SemiBold.ttf");
}

.ft-poppins {
  font-family: "Poppins", sans-serif;
}

@font-face {
  font-family: PoppinsRegular;
  src: url("fonts/SVN-Poppins Regular.ttf");
}

.ft-poppins-regular {
  font-family: "PoppinsRegular", sans-serif;
}

@font-face {
  font-family: PoppinsMedium;
  src: url("fonts/SVN-Poppins Medium.ttf");
}

.ft-poppins-medium {
  font-family: "PoppinsMedium", sans-serif;
}

@font-face {
  font-family: PoppinsBold;
  src: url("fonts/SVN-Poppins Bold.ttf");
}

.ft-poppins-bold {
  font-family: "PoppinsBold", sans-serif;
}

@font-face {
  font-family: Book;
  src: url("fonts/SVN-Book Antiqua.ttf");
}

.ft-book {
  font-family: "Book", sans-serif;
  font-weight: 600;
}

.ft-garamond {
  font-family: "EB Garamond", serif;
}

a {
  color: #434343;
  text-decoration: none;
}

.hidden {
  display: none;
}

/* RESPONSIVE
 * ----------------------------------------------- */
@media print,
(min-width: 768px) {
  body {
    font-size: 14px;
  }

  .container {
    min-width: 1440px;
    margin: 0 auto;
    position: relative;
  }

  .wrapper {
    width: 1286px;
    margin-left: auto;
    margin-right: auto;
  }

  .sm {
    display: none !important;
  }

  .trans {
    opacity: 1;
    transition: opacity 0.26s ease;
  }

  .trans:hover {
    opacity: 0.8;
  }
}

@media only screen and (max-width: 767.98px) {
  html {
    font-size: calc(100vw / 3.75);
  }

  body {
    font-size: 0.28rem;
    overflow: visible;
    height: initial;
  }

  .container {
    min-width: 320px;
  }

  .wrapper {
    padding-left: 0.27rem;
    padding-right: 0.27rem;
  }

  .md {
    display: none !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1440px) {
  body {
    overflow-x: auto !important;
  }
}

/* PARTS
 * ----------------------------------------------- */
/* COMMON HEADER
 * ----------------------------------------------- */
header {
  position: fixed;
  width: 100%;
  left: 0;
  z-index: 101;
  padding: 20px 0;
  transition: all 0.3s ease;
}

header .wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  width: 1352px;
}

header .list-navbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

header .header-logo {
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}

header .header-logo a {
  font-size: 16px;
}

header .header-navigation {
  margin-left: auto;
}

header .btn-order {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 153px;
  height: 44px;
  border: 2px solid #434343;
  border-radius: 4px;
  margin-left: 33px;
  background: url(../img/top/ico_cart.svg) left 18px top 8px/25px auto no-repeat;
  padding-left: 40px;
}

header .btn-order-bilingual {
  background-color: #183a5c;
  color: #fff;
  border-color: #183a5c;
}

header .aside-navigation {
  position: absolute;
  top: 92px;
  right: calc(50% - 676px);
  z-index: 11;
}

header .list-aside a,
header .list-aside span {
  display: -ms-flexbox;
  display: flex;
  writing-mode: vertical-lr;
  height: 160px;
  width: 36px;
  font-size: 18px;
  border-right: 2px solid #000;
  margin: 40px 0;
  opacity: 0.5;
  transition: all 0.3s ease;
  background: url(../img/top/ico_arrow_down.svg) bottom 1px left 6px/11px auto no-repeat;
  cursor: pointer;
  text-transform: uppercase;
}

header .list-aside a:hover,
header .list-aside span:hover {
  opacity: 1;
}

@media print,
(min-width: 768px) {
  .fp-viewing-2 header {
    opacity: 0;
    visibility: hidden;
  }

  header {
    width: 100vw;
    min-width: 1440px;
    position: absolute;
  }
}

@media only screen and (min-width: 1440px) {
  header {
    min-width: 1440px;
    left: 50% !important;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .header-menu {
    padding-left: 0 !important;
  }
}

@media only screen and (max-width: 767.98px) {
  header {
    position: absolute;
    padding: 0.25rem 0;
  }

  header.is-active .aside-navigation {
    opacity: 1;
    visibility: visible;
  }

  header .header-logo a {
    font-size: 0.16rem;
  }

  header .wrapper {
    width: auto;
  }

  header .btn-menu {
    display: block;
    width: 0.24rem;
    height: 0.24rem;
    background: url("../img/top/ico_menu.png") center/contain no-repeat;
    position: absolute;
    right: 0.2rem;
    top: 0.36rem;
  }

  header .btn-menu.is-close {
    background-image: url("../img/top/ico_menu_close.png");
  }

  header .aside-navigation {
    width: 100%;
    height: 100vh;
    left: 0;
    top: 0;
    opacity: 0;
    visibility: hidden;
    background: #EFE6DD;
    padding: 0.28rem 0.27rem 0.5rem;
    transition: all 0.3s ease;
    overflow: auto;
  }

  header .list-aside li {
    border-bottom: 0.01rem solid #000;
    background: url(../img/top/ico_arrow_menu.svg) right 0.07rem top 0.11rem/0.08rem auto no-repeat;
    line-height: 1;
    padding-bottom: 0.24rem;
    margin: 0 0 0.1rem;
  }

  header .list-aside a,
  header .list-aside span {
    display: -ms-inline-flexbox;
    display: inline-flex;
    writing-mode: initial;
    width: auto;
    height: auto;
    font-size: 0.22rem;
    border-right: none;
    opacity: 0.5;
    transition: all 0.3s ease;
    cursor: pointer;
    text-transform: capitalize;
    background: none;
    margin: 0;
  }

  header .list-aside a:hover,
  header .list-aside span:hover {
    opacity: 1;
  }

  header .btn-order {
    display: block;
    border: none;
  }
}

.header-menu {
  position: fixed;
  max-width: 100vw;
  width: 1440px;
  margin: 0 auto;
  height: 100%;
  overflow: auto;
  top: 0;
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
  z-index: 101;
  transition: all 0.5s ease;
}

.header-menu.is-active {
  -ms-transform: translate(0);
  transform: translate(0);
}

.header-menu .menu-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  left: 0;
  top: 0;
}

.header-menu .menu-inner {
  display: block;
  margin: 0 auto;
  text-align: center;
  background: #EFE6DD;
  height: 100%;
  position: relative;
  z-index: 1;
}

.header-menu .menu-title {
  color: rgba(0, 0, 0, 0.3);
  line-height: 1.05;
}

.header-menu .item-title {
  font-weight: 700;
  color: rgba(0, 0, 0, 0.6);
  line-height: 1.6;
}

.header-menu .item {
  color: rgba(0, 0, 0, 0.6);
  line-height: 1.8;
}

@media print,
(min-width: 768px) {
  .header-menu {
    height: 100vh;
    width: 100%;
    overflow-y: auto;
    padding-left: 44px;
    padding-bottom: 36px;
  }

  .header-menu .menu-overlay {
    min-height: 996px;
    min-width: 1440px;
  }

  .header-menu .menu-inner {
    padding-top: 149px;
    width: 1352px;
    min-height: 960px;
    column-count: 2;
    border-radius: 0 0 40px 40px;
    column-gap: 115px;
    padding-left: 28px;
  }

  .header-menu .menu-close {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 2px solid #434343;
    position: absolute;
    width: 93px;
    height: 44px;
    border-radius: 4px;
    font-size: 16px;
    right: 72px;
    top: 30px;
  }

  .header-menu .menu-item {
    margin-bottom: 44px;
  }

  .header-menu .menu-item:nth-child(2) {
    margin-bottom: 16px;
  }

  .header-menu .menu-title {
    font-size: 112px;
    margin-top: -30px;
    margin-bottom: 91px;
  }

  .header-menu .item-title {
    font-size: 20px;
    margin-bottom: 11px;
  }

  .header-menu .item {
    font-size: 17px;
    margin-bottom: 12px;
  }
}

@media only screen and (max-width: 767.98px) {
  .header-menu {
    height: 100vh;
  }

  .header-menu .menu-inner {
    padding-top: 0.8rem;
    padding-bottom: 1.5rem;
    height: auto;
  }

  .header-menu .menu-close {
    display: block;
    width: 0.24rem;
    height: 0.24rem;
    background: url("../img/top/ico_menu_close.png") center/contain no-repeat;
    position: absolute;
    right: 0.2rem;
    top: 0.36rem;
    text-indent: -999.99rem;
    overflow: hidden;
  }

  .header-menu .list-menu {
    background: #EFE6DD;
  }

  .header-menu .menu-item {
    margin-bottom: 0.44rem;
  }

  .header-menu .menu-item:nth-child(2) {
    margin-bottom: 0.16rem;
  }

  .header-menu .menu-title {
    font-size: 1.12rem;
    margin-bottom: 0.56rem;
  }

  .header-menu .item-title {
    font-size: 0.2rem;
    margin-bottom: 0.11rem;
  }

  .header-menu .item {
    font-size: 0.17rem;
    margin-bottom: 0.12rem;
  }
}

/* COMMON FOOTER
 * ----------------------------------------------- */
.footer .footer-content {
  background: url("../img/top/footer_bg.jpg") top center/cover no-repeat;
  position: relative;
}

.footer .footer-content::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.31);
}

.footer .footer-title {
  line-height: 1.3;
  color: #fff;
  text-align: center;
  position: relative;
}

.footer .footer-btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  color: #fff;
  background: rgba(59, 89, 152, 0.69);
}

.footer .footer-copyright {
  background: #434343;
  color: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.footer .footer-link {
  color: #fff;
}

@media print,
(min-width: 768px) {
  .footer .footer-content {
    padding-top: 90px;
    padding-bottom: 82px;
  }

  .footer .footer-title {
    font-size: 28px;
  }

  .footer .footer-btn {
    width: 350px;
    height: 54px;
    border-radius: 20px;
    font-size: 14px;
    margin: 44px auto 0;
  }

  .footer .footer-copyright {
    min-width: 1440px;
    height: 69px;
    padding: 0 44px;
    font-size: 16px;
  }
}

@media only screen and (max-width: 767.98px) {
  .footer .footer-content {
    padding-top: 0.63rem;
    padding-bottom: 0.69rem;
  }

  .footer .wrapper {
    padding: 0 10px;
  }

  .footer .footer-title {
    font-size: 0.18rem;
    line-height: 1.6;
  }

  .footer .footer-btn {
    width: 100%;
    height: 0.54rem;
    border-radius: 0.2rem;
    font-size: 0.14rem;
    margin: 0.52rem auto 0;
  }

  .footer .footer-copyright {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0.31rem 0.23rem;
    font-size: 0.16rem;
  }

  .footer .footer-author {
    margin-top: 0.13rem;
    margin-bottom: 0.81rem;
  }

  .footer .footer-logo {
    width: 2.44rem;
  }

  .footer .footer-link {
    -ms-flex-order: 2;
    order: 2;
  }

  .fullpage-wrapper {
    /*overflow-x: hidden;*/
  }
}

/* MODULES
 * ----------------------------------------------- */
/* slider
 * ----------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before {
  display: table;
  content: "";
}

.slick-track:after {
  display: table;
  content: "";
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* lightbox
 * ----------------------------------------------- */
.no-scroll {
  position: fixed;
  width: 100%;
  height: 100%;
  padding-right: 17px;
}

.lightbox {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 50%;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.8);
  z-index: 1000;
}

.lightbox.is-white {
  background: #fff;
}

.lightbox .popup-light-box {
  width: 100%;
  height: 100%;
}

.lightbox .popup-light-box-cell {
  top: 50%;
  left: 50%;
  position: absolute;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
}

.lightbox .lightbox-window {
  display: block;
  margin: auto;
  overflow: hidden;
  background: #fff;
}

.lightbox .lightbox-content {
  position: relative;
}

.lightbox .lightbox-title {
  font-weight: 700;
  text-align: center;
}

.lightbox .lightbox-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.lightbox .lightbox-list a {
  display: block;
  overflow: hidden;
  position: relative;
  border: 1px solid #b4b4b4;
}

.lightbox .lightbox-text {
  font-size: 14px;
  color: #fff;
  position: absolute;
  bottom: 127px;
  width: 200px;
  left: 46px;
}

.lightbox .lightbox-button {
  display: -ms-flexbox;
  display: flex;
  width: 151px;
  height: 42px;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
  background: #5FA65F;
  border-radius: 4px;
  position: absolute;
  left: 50%;
  bottom: 29px;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media print,
(min-width: 768px) {
  .lightbox .lightbox-window {
    background: transparent;
  }

  .lightbox .lightbox-window.is-white {
    background: #fff;
    overflow: auto;
    height: 100vh;
  }

  .lightbox .lightbox-background.is-gift {
    width: 100%;
    height: 549px;
    margin: 0 auto;
    border-radius: 17px;
    box-shadow: 8px 7px 5px 0 rgba(0, 0, 0, 0.42);
    position: relative;
  }

  .lightbox .lightbox-content {
    background: transparent;
    width: 287px;
    padding: 20px 0;
    margin: 0 auto;
  }

  .lightbox .lightbox-title {
    font-size: 16px;
  }

  .lightbox .lightbox-content.is-review {
    width: 320px;
    height: 456px;
    margin: 0 auto;
    border-radius: 28px;
    background: #fff;
    position: relative;
    text-align: center;
    padding-top: 64px;
  }

  .lightbox .lightbox-content.is-review ul {
    margin-top: 62px;
  }

  .lightbox .review-title {
    font-size: 22px;
    color: #000;
    line-height: 1.1;
  }

  .lightbox .review-btn {
    display: block;
    width: 214px;
    height: 56px;
    margin: 0 auto 20px;
  }

  .lightbox .review-text {
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    padding-top: 5px;
  }

  .lightbox .review-text span {
    display: block;
    font-weight: 600;
    margin-top: 12px;
  }

  .lightbox .lightbox-content.is-thank {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 100vh;
    background: #fff;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }

  .lightbox .lightbox-content.is-thank .thank-content {
    padding-bottom: 10px;
  }

  .lightbox .lightbox-content.is-thank .thank-image {
    width: 89px;
    margin: 0 auto;
  }

  .lightbox .lightbox-content.is-thank .thank-title {
    font-size: 36px;
    margin: 34px auto;
  }

  .lightbox .lightbox-content.is-thank .thank-btn {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 151px;
    height: 42px;
    border-radius: 4px;
    background: #434343;
    margin: 0 auto;
    font-size: 16px;
    color: #fff;
    cursor: pointer;
  }

  .lightbox .content-inner {
    width: 1440px;
    margin: 0 auto;
    height: 960px;
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
  }

  .lightbox .lightbox-link {
    font-size: 16px;
    position: absolute;
    top: 41px;
    left: 44px;
  }

  .lightbox .lightbox-content.is-order {
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 100vh;
  }

  .lightbox .lightbox-content.is-order .content-inner {
    background: #fff url("../img/top/order_bg.jpg") center left/549px auto no-repeat;
  }

  .lightbox .lightbox-content.is-order .btn-back {
    position: absolute;
    font-size: 14px;
    padding-left: 30px;
    top: 52px;
    left: 77px;
    background: url(../img/top/ico_back.svg) left center/21px auto no-repeat;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order .block-logo {
    width: 388px;
    margin: 103px 0 0 98px;
  }

  .lightbox .lightbox-content.is-order .block-content {
    padding: 154px 0 0 138px;
    position: relative;
    margin-left: 549px;
    -ms-flex: 1;
    flex: 1;
  }

  .lightbox .lightbox-content.is-order .order-title {
    font-size: 20px;
    position: relative;
  }

  .lightbox .lightbox-content.is-order .order-title::before {
    content: "";
    display: block;
    width: 36px;
    height: 36px;
    background: url(../img/top/ico_order.svg) center/contain no-repeat;
    position: absolute;
    left: -61px;
    top: 0;
  }

  .lightbox .lightbox-content.is-order .order-form {
    padding-top: 33px;
    max-width: 660px;
  }

  .lightbox .lightbox-content.is-order .form-row {
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 26px;
  }

  .lightbox .lightbox-content.is-order .form-col {
    width: 50%;
  }

  .lightbox .lightbox-content.is-order .form-label {
    display: block;
    font-size: 14px;
    margin-bottom: 14px;
  }

  .lightbox .lightbox-content.is-order .form-input,
  .lightbox .lightbox-content.is-order .form-select {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 286px;
    height: 49px;
    border: 1px solid #D8D8D8;
    padding: 0 30px;
    font-size: 13px;
    font-family: "PoppinsRegular", sans-serif;
    border-radius: 49px;
    outline: none;
  }

  .lightbox .lightbox-content.is-order .form-select {
    background: url("../img/top/ico_select.svg") right 20px center/11px auto no-repeat;
  }

  .lightbox .lightbox-content.is-order .form-price {
    width: 304px;
    position: absolute;
    right: calc(100% + 117px);
    top: 600px;
    font-size: 14px;
  }

  .lightbox .lightbox-content.is-order .price-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 8px;
    margin-bottom: 25px;
  }

  .lightbox .lightbox-content.is-order .price-row.is-total {
    border-top: 1px solid #707070;
    margin-top: 28px;
    padding-top: 20px;
  }

  .lightbox .lightbox-content.is-order .price-row.is-total .price-value {
    font-size: 16px;
    margin-right: 5px;
  }

  .lightbox .lightbox-content.is-order .unit-price-value {
    margin-right: 4px;
  }

  .lightbox .lightbox-content.is-order .price-order {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 130px;
    height: 42px;
    border-radius: 4px;
    border: 1px solid #D8D8D8;
    background: #fff;
  }

  .lightbox .lightbox-content.is-order .btn-minus {
    display: block;
    height: 100%;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order .btn-minus::before {
    content: "";
    display: block;
    width: 12px;
    height: 2px;
    background: #000;
    position: absolute;
    top: 50%;
    left: 75%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 30px;
  }

  .lightbox .lightbox-content.is-order .btn-minus.is-disable {
    pointer-events: none;
  }

  .lightbox .lightbox-content.is-order .btn-minus.is-disable:before {
    background: #D8D8D8;
  }

  .lightbox .lightbox-content.is-order .btn-plus {
    display: block;
    height: 100%;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order .btn-plus::before,
  .lightbox .lightbox-content.is-order .btn-plus::after {
    content: "";
    display: block;
    background: #000;
    position: absolute;
    top: 50%;
    left: 25%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 30px;
  }

  .lightbox .lightbox-content.is-order .btn-plus:before {
    width: 12px;
    height: 2px;
  }

  .lightbox .lightbox-content.is-order .btn-plus:after {
    height: 12px;
    width: 2px;
  }

  .lightbox .lightbox-content.is-order .order-value {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    width: 30%;
    font-size: 16px;
    text-align: center;
    outline: none;
    pointer-events: none;
  }

  .lightbox .lightbox-content.is-order .order-value::-webkit-inner-spin-button,
  .lightbox .lightbox-content.is-order .order-value::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  .lightbox .lightbox-content.is-order .form-row.is-submit {
    width: 151px;
    margin: 48px 49px 0 auto;
  }

  .lightbox .lightbox-content.is-order .form-submit {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 42px;
    border-radius: 4px;
    background: #5B9236;
    font-size: 16px;
    color: #fff;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order.is-login {
    padding: 0;
  }

  .lightbox .lightbox-content.is-order.is-login .content-inner {
    background-image: url("../img/top/login_bg.jpg");
  }

  .lightbox .lightbox-content.is-order.is-login .login-title {
    font-size: 20px;
    margin-bottom: 12px;
  }

  .lightbox .lightbox-content.is-order.is-login .block-content {
    padding: 120px 0 0 113px;
  }

  .lightbox .lightbox-content.is-order.is-login .form-row:not(.is-submit) {
    padding: 0 36px;
  }

  .lightbox .lightbox-content.is-order.is-login .order-form {
    max-width: 730px;
  }

  .lightbox .lightbox-content.is-order.is-login .form-row.is-upload {
    margin-bottom: 10px;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order.is-login .form-col.is-upload {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order.is-login .form-col.is-upload .form-label {
    margin: 0px 0 6px 15px;
    font-size: 13px;
    text-decoration: underline;
  }

  .lightbox .lightbox-content.is-order.is-login .form-upload {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
  }

  .lightbox .lightbox-content.is-order.is-login .form-image-upload {
    display: block;
    width: 106px;
    height: 106px;
    border-radius: 50%;
    border: 1px dashed #707070;
    overflow: hidden;
    position: relative;
  }

  .lightbox .lightbox-content.is-order.is-login .form-image-upload img {
    position: absolute;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@media only screen and (max-width: 767.98px) {
  .lightbox .lightbox-window {
    width: 2.86rem;
    margin: 0 auto;
    min-height: 300px;
    max-height: 90vh;
    overflow: auto;
    border-radius: 13px;
  }

  .lightbox .popup-light-box-cell.is-full {
    height: 100%;
  }

  .lightbox .lightbox-background {
    width: 2.86rem;
  }

  .lightbox .lightbox-text {
    font-size: 0.14rem;
    bottom: 1.32rem;
    width: 2rem;
    left: 0.46rem;
  }

  .lightbox .lightbox-button {
    bottom: 0.34rem;
    font-size: 0.16rem;
    border-radius: 0.04rem;
    width: 1.51rem;
    height: 0.42rem;
  }

  .lightbox .lightbox-window.is-white {
    width: 100%;
    height: 100vh;
    max-height: 100vh;
    border-radius: unset;
    margin-top: -0.01rem;
  }

  .lightbox .lightbox-link {
    font-size: 0.16rem;
    position: absolute;
    top: 0.36rem;
    left: 0.27rem;
  }

  .lightbox .lightbox-content.is-order {
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 100vh;
  }

  .lightbox .lightbox-content.is-order .btn-back {
    width: 0.24rem;
    height: 0.24rem;
    background: url("../img/top/ico_menu_close.png") center/contain no-repeat;
    position: absolute;
    right: 0.2rem;
    top: 0.36rem;
    text-indent: -999.99rem;
    overflow: hidden;
  }

  .lightbox .lightbox-content.is-order .block-content {
    -ms-flex: 1;
    flex: 1;
    padding: 0.39rem 0.45rem;
  }

  .lightbox .lightbox-content.is-order .order-title {
    font-size: 0.2rem;
    position: relative;
    margin-left: 0.45rem;
  }

  .lightbox .lightbox-content.is-order .order-title::before {
    content: "";
    display: block;
    width: 0.36rem;
    height: 0.36rem;
    background: url(../img/top/ico_order.svg) center/contain no-repeat;
    position: absolute;
    left: -0.51rem;
    top: -0.05rem;
  }

  .lightbox .lightbox-content.is-order .order-form {
    padding-top: 0.25rem;
  }

  .lightbox .lightbox-content.is-order .form-col {
    margin-bottom: 0.1rem;
  }

  .lightbox .lightbox-content.is-order .form-label {
    display: block;
    font-size: 0.14rem;
    margin-bottom: 0.09rem;
  }

  .lightbox .lightbox-content.is-order .form-input,
  .lightbox .lightbox-content.is-order .form-select {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 0.49rem;
    border: 0.01rem solid #D8D8D8;
    padding: 0 0.3rem;
    font-size: 0.13rem;
    font-family: "PoppinsRegular", sans-serif;
    border-radius: 0.49rem;
    outline: none;
  }

  .lightbox .lightbox-content.is-order .form-select {
    background: url("../img/top/ico_select.svg") right 0.2rem center/0.11rem auto no-repeat;
  }

  .lightbox .lightbox-content.is-order .form-price {
    width: 3.04rem;
    position: absolute;
    left: 0.31rem;
    top: 6.01rem;
    font-size: 0.14rem;
  }

  .lightbox .lightbox-content.is-order .price-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 0.08rem;
    margin-bottom: 0.25rem;
  }

  .lightbox .lightbox-content.is-order .price-row.is-total {
    border-top: 0.01rem solid #707070;
    margin-top: 0.28rem;
    padding-top: 0.2rem;
  }

  .lightbox .lightbox-content.is-order .price-row.is-total .price-value {
    font-size: 0.16rem;
    margin-right: 0.05rem;
  }

  .lightbox .lightbox-content.is-order .unit-price-value {
    margin-right: 0.04rem;
  }

  .lightbox .lightbox-content.is-order .price-order {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 1.3rem;
    height: 0.42rem;
    border-radius: 0.04rem;
    border: 0.01rem solid #D8D8D8;
    background: #fff;
  }

  .lightbox .lightbox-content.is-order .btn-minus {
    display: block;
    height: 100%;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order .btn-minus::before {
    content: "";
    display: block;
    width: 0.12rem;
    height: 0.02rem;
    background: #000;
    position: absolute;
    top: 50%;
    left: 75%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 0.3rem;
  }

  .lightbox .lightbox-content.is-order .btn-minus.is-disable {
    pointer-events: none;
  }

  .lightbox .lightbox-content.is-order .btn-minus.is-disable:before {
    background: #D8D8D8;
  }

  .lightbox .lightbox-content.is-order .btn-plus {
    display: block;
    height: 100%;
    -ms-flex: 1;
    flex: 1;
    position: relative;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order .btn-plus::before,
  .lightbox .lightbox-content.is-order .btn-plus::after {
    content: "";
    display: block;
    background: #000;
    position: absolute;
    top: 50%;
    left: 25%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 0.3rem;
  }

  .lightbox .lightbox-content.is-order .btn-plus:before {
    width: 0.12rem;
    height: 0.02rem;
  }

  .lightbox .lightbox-content.is-order .btn-plus:after {
    height: 0.12rem;
    width: 0.02rem;
  }

  .lightbox .lightbox-content.is-order .order-value {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    width: 30%;
    font-size: 0.16rem;
    text-align: center;
    outline: none;
    pointer-events: none;
  }

  .lightbox .lightbox-content.is-order .order-value::-webkit-inner-spin-button,
  .lightbox .lightbox-content.is-order .order-value::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

  .lightbox .lightbox-content.is-order .form-row.is-submit {
    width: 1.51rem;
    margin: 0.28rem auto 0.5rem;
  }

  .lightbox .lightbox-content.is-order .form-submit {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 0.42rem;
    border-radius: 0.04rem;
    background: #5B9236;
    font-size: 0.16rem;
    color: #fff;
    cursor: pointer;
  }

  .lightbox.thank-modal .popup-light-box-cell,
  .lightbox.thank-modal .lightbox-window {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: 100%;
    border-radius: unset;
  }

  .lightbox.thank-modal .lightbox-content.is-thank {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 100vh;
    background: #fff;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }

  .lightbox.thank-modal .lightbox-content.is-thank .thank-content {
    padding-bottom: 0.26rem;
  }

  .lightbox.thank-modal .lightbox-content.is-thank .thank-image {
    width: 0.89rem;
    margin: 0 auto;
  }

  .lightbox.thank-modal .lightbox-content.is-thank .thank-title {
    font-size: 0.22rem;
    margin: 0.34rem auto;
  }

  .lightbox.thank-modal .lightbox-content.is-thank .thank-btn {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1.51rem;
    height: 0.42rem;
    border-radius: 0.04rem;
    background: #434343;
    margin: 0 auto;
    font-size: 0.16rem;
    color: #fff;
    cursor: pointer;
  }

  .lightbox .lightbox-content.is-order.is-login {
    padding: 0;
    margin-top: -0.01rem;
  }

  .lightbox .lightbox-content.is-order.is-login .content-inner {
    width: 100%;
  }

  .lightbox .lightbox-content.is-order.is-login .login-title {
    font-size: 0.2rem;
    margin-bottom: 0.25rem;
  }

  .lightbox .lightbox-content.is-order.is-login .block-content {
    padding: 1.23rem 0.45rem;
    background: url("../img/top/sp/login_bg.jpg") top center/100% auto no-repeat;
  }

  .lightbox .lightbox-content.is-order.is-login .form-row:not(.is-submit) {
    width: 100%;
    padding: 0;
  }

  .lightbox .lightbox-content.is-order.is-login .form-col {
    width: 100%;
  }

  .lightbox .lightbox-content.is-order.is-login .order-form {
    max-width: 7.3rem;
  }

  .lightbox .lightbox-content.is-order.is-login .form-row.is-upload {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0.18rem;
  }

  .lightbox .lightbox-content.is-order.is-login .form-row.is-upload .form-col:not(.is-upload) {
    -ms-flex-order: 2;
    order: 2;
  }

  .lightbox .lightbox-content.is-order.is-login .form-col.is-upload {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 0.02rem 0rem 0.12rem;
  }

  .lightbox .lightbox-content.is-order.is-login .form-col.is-upload .form-label {
    margin-left: 0.16rem;
    margin-bottom: 0;
    font-size: 0.13rem;
    text-decoration: underline;
  }

  .lightbox .lightbox-content.is-order.is-login .form-upload {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
  }

  .lightbox .lightbox-content.is-order.is-login .form-image-upload {
    display: block;
    width: 1.06rem;
    height: 1.06rem;
    border-radius: 50%;
    border: 0.01rem dashed #707070;
    overflow: hidden;
  }

  .lightbox.lightbox-review .lightbox-window {
    width: 3.2rem;
    border-radius: 0.3rem;
  }

  .lightbox .lightbox-content.is-review {
    width: 100%;
    height: 4.56rem;
    margin: 0 auto;
    border-radius: 0.28rem;
    background: #fff;
    position: relative;
    text-align: center;
    padding-top: 0.64rem;
  }

  .lightbox .lightbox-content.is-review ul {
    margin-top: 0.62rem;
  }

  .lightbox .review-title {
    font-size: 0.22rem;
    color: #000;
    line-height: 1.1;
  }

  .lightbox .review-btn {
    display: block;
    width: 2.14rem;
    height: 0.56rem;
    margin: 0 auto 0.2rem;
  }

  .lightbox .review-text {
    font-size: 0.14rem;
    font-weight: 400;
    text-align: center;
    padding-top: 0.05rem;
  }

  .lightbox .review-text span {
    display: block;
    font-weight: 600;
    margin-top: 0.12rem;
  }
}

/* TOP
 * ----------------------------------------------- */
main {
  height: 100vh;
}

#fp-nav.fp-left {
  left: calc(50% - 660px) !important;
}

#fp-nav ul li a.active span,
.fp-slidesNav ul li a.active span,
#fp-nav ul li:hover a.active span,
.fp-slidesNav ul li:hover a.active span,
#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  height: 20px !important;
  width: 2px !important;
  border-radius: 2px !important;
  margin: 0 !important;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

#fp-nav ul li a.active span,
.fp-slidesNav ul li a.active span,
#fp-nav ul li:hover a.active span,
.fp-slidesNav ul li:hover a.active span {
  background: #000 !important;
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  background: rgba(0, 0, 0, 0.2) !important;
}

#fp-nav ul li,
.fp-slidesNav ul li {
  width: 10px !important;
  height: 20px !important;
  margin: 3px 0 !important;
}

.section-top-keyvisual {
  width: 100%;
  height: 100%;
  max-width: 1440px;
  margin: 0 auto;
  background: #EFE6DD;
}

.section-top-keyvisual::before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% + 259px);
  position: absolute;
  top: 0;
  left: 0;
  background: #EFE6DD url("../img/top/keyvisual_bg.png") top center/cover no-repeat;
}

.section-top-keyvisual .keyvisual-inner {
  width: 1440px;
  height: 100%;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.section-top-keyvisual .keyvisual-logo {
  position: absolute;
  top: 50.8%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.section-top-keyvisual .keyvisual-author {
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  right: 66px;
  bottom: 73px;
  align-items: flex-start;
  text-align: right;
}

.section-top-keyvisual .keyvisual-author img {
  order: 2;
  margin-left: 14px;
}

.section-top-keyvisual .author-detail {
  -ms-flex: 1;
  flex: 1;
  font-size: 16px;
  color: #AE5416;
  margin-left: 14px;
  cursor: pointer;
}

.section-top-keyvisual .author-name {
  margin-top: 6px;
  line-height: 1.1;
}

.section-top-keyvisual .keyvisual-gift {
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  left: 44px;
  bottom: 57px;
  cursor: pointer;
  align-items: flex-start;
}

@media only screen and (max-width: 767.98px) {

  .fp-section.fp-table,
  .fp-slide.fp-table,
  .fp-tableCell,
  .fp-scrollable {
    height: auto !important;
  }

  .section-top-keyvisual {
    height: 8.12rem;
  }

  .section-top-keyvisual::before {
    height: 9.3rem;
    background: #EFE6DD url("../img/top/sp/keyvisual_bg.png") top center/contain no-repeat;
  }

  .section-top-keyvisual .keyvisual-inner {
    width: 100%;
  }

  .section-top-keyvisual .keyvisual-logo {
    width: 3.88rem;
    top: 45%;
    left: 53.4%;
  }

  .section-top-keyvisual .keyvisual-author {
    display: block;
    right: 0.27rem;
    bottom: 0.38rem;
  }

  .section-top-keyvisual .author-name {
    margin-top: 0.02rem;
  }

  .section-top-keyvisual .author-detail {
    margin-top: 0.12rem;
    margin-left: 0;
  }

  .section-top-keyvisual .keyvisual-gift {
    left: 0.14rem;
    bottom: 0.3rem;
    width: 0.81rem;
  }
}

.section-top-info {
  background: #EFE6DD;
  height: 100%;
}

.section-top-info::before {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.section-top-info .wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: 100%;
}

.section-top-info .info-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.section-top-info .info-inner::-webkit-scrollbar {
  width: 3px;
}

.section-top-info .info-inner::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.2);
}

.section-top-info .info-inner::before {
  display: block;
  height: 100%;
  background-image: linear-gradient(to right, #808080, #fff);
  opacity: 0.19;
  position: absolute;
  top: 0;
  left: 51.4%;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.section-top-info .info-icon {
  display: none;
  background: url("../img/top/ico_info.png") center/contain no-repeat;
  position: absolute;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: all 0.3s ease;
  z-index: 1;
  cursor: pointer;
}

.section-top-info .info-icon.is-hide {
  display: none;
}

.section-top-info .info-icon:hover {
  opacity: 1;
}

.section-top-info .info-icon.btn-prev {
  right: auto;
  left: 0;
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.section-top-info .block-content {
  height: 100%;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.section-top-info .block-content.is-active {
  display: block;
}

.section-top-info .info-title {
  line-height: 1.02;
  color: rgba(0, 0, 0, 0.3);
}

.section-top-info p {
  line-height: 1.5;
  font-family: "EB Garamond", serif;
}

@media print,
(min-width: 768px) {
  .section-top-info::before {
    height: calc(100% + 259px);
    background: url("../img/top/keyvisual_bg.png") top -100vh center/cover no-repeat;
  }

  .section-top-info .wrapper {
    padding: 31px 20px 0;
  }

  .section-top-info .info-inner {
    height: calc(100vh - 160px);
    border-radius: 20px;
    column-count: 2;
    background: #fff;
    box-shadow: 6px 0 3px 0 rgba(0, 0, 0, 0.16), -6px 0 3px 0 rgba(0, 0, 0, 0.16), 18px 12px 15px 0 rgba(0, 0, 0, 0.16);
  }

  .section-top-info .info-inner::before {
    content: "";
    width: 34px;
    min-height: 854px;
  }

  .section-top-info .info-inner::-webkit-scrollbar {
    width: 3px;
  }

  .section-top-info .info-inner::-webkit-scrollbar-thumb {
    background-color: #8f7a7a33;
  }

  .section-top-info .info-icon {
    display: block;
    width: 50%;
    height: 100%;
    background: transparent;
  }

  .section-top-info .info-icon::before {
    content: "";
    display: block;
    width: 200px;
    height: 192px;
    background: url("../img/top/ico_info.png") center/contain no-repeat;
    position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
  }

  .section-top-info .info-icon.btn-prev {
    top: 0;
    bottom: auto;
    right: auto;
    left: 0;
    -ms-transform: none;
    transform: none;
  }

  .section-top-info .info-icon.btn-prev:before {
    right: auto;
    left: 0;
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }

  .section-top-info .block-content {
    display: none;
    position: absolute;
    column-count: 2;
    padding: 61px 55px 0 69px;
    margin-bottom: 54px;
    column-gap: 167px;
  }

  .section-top-info .info-title {
    font-size: 10vh;
    margin-top: -14px;
    margin-bottom: 37px;
  }

  .section-top-info p {
    font-size: 2vh;
    margin-bottom: 20px;
  }

  .is-tablet .section-top-info p {
    font-size: 2vh;
  }
}

@media only screen and (max-width: 767.98px) {
  .section-top-info {
    padding-top: 0.68rem;
    padding-bottom: 0.5rem;
  }

  .section-top-info .wrapper {
    padding: 0;
  }

  .section-top-info::before {
    height: 9.3rem;
    background: #EFE6DD url("../img/top/sp/keyvisual_bg.png") top -8.11rem center/cover no-repeat;
  }

  .section-top-info .info-inner {
    display: block;
    height: auto;
    padding: 0 0.27rem;
    border-radius: 0.2rem;
    max-height: 15.38rem;
  }

  .section-top-info .info-inner::before {
    width: 0.34rem;
  }

  .section-top-info .info-inner.is-show {
    max-height: unset;
  }

  .section-top-info .info-inner.is-show .btn-show-more {
    display: none;
  }

  .section-top-info .btn-show-more {
    min-width: 2rem;
    text-align: right;
    position: absolute;
    right: 0.23rem;
    bottom: 0.12rem;
    font-size: 0.15rem;
    padding-left: 0.2rem;
    background-image: linear-gradient(to right, transparent, #EFE6DD 60%);
  }

  .section-top-info .info-icon {
    width: 2rem;
    height: 1.92rem;
  }

  .section-top-info .info-title {
    font-size: 1.12rem;
    line-height: 1.05;
    margin-bottom: 0.3rem;
  }

  .section-top-info p {
    font-size: 0.2rem;
    margin-bottom: 0.2rem;
  }
}

.section-top-author {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  background: #D5A580;
}

.section-top-author .author-wrapper {
  height: 100%;
  margin: 0 auto;
  position: relative;
}

.section-top-author .author-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.section-top-author .author-title {
  font-weight: bold;
  color: rgba(0, 0, 0, 0.3);
  line-height: 1.15;
}

.section-top-author .author-content {
  font-family: "EB Garamond", serif;
  line-height: 1.6;
  overflow: auto;
  color: #000;
}

.section-top-author .author-content::-webkit-scrollbar {
  width: 3px;
}

.section-top-author .author-content::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.2);
}

.section-top-author .author-note {
  position: absolute;
  left: 0;
  bottom: 0;
  color: rgba(0, 0, 0, 0.65);
}

.section-top-author .note-name {
  line-height: 1.1;
}

@media print,
(min-width: 768px) {
  .section-top-author {
    overflow: hidden;
  }

  .section-top-author .author-wrapper {
    max-width: 1440px;
    max-height: 1200px;
  }

  .section-top-author .author-inner {
    padding: 117px 23px 0 20px;
  }

  .section-top-author .author-title {
    font-size: 98px;
  }

  .section-top-author .author-content {
    width: 285px;
    font-size: 18px;
    padding-top: 23px;
    max-height: calc(100vh - 180px);
  }

  .section-top-author .author-image {
    max-width: 57%;
    max-height: 100vh;
    width: auto;
    position: absolute;
    left: 49%;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 0;
  }

  .section-top-author .author-note {
    left: 90px;
    bottom: 65px;
    font-size: 16px;
  }

  .section-top-author .note-name {
    margin-top: 9px;
  }
}

@media only screen and (max-width: 767.98px) {
  .section-top-author {
    overflow: hidden;
    padding-bottom: 0.5rem;
  }

  .section-top-author .author-wrapper {
    width: 100%;
  }

  .section-top-author .author-inner {
    display: block;
    padding: 0.06rem 0 0;
  }

  .section-top-author .author-title {
    font-size: 0.48rem;
    line-height: 1.1;
  }

  .section-top-author .author-content {
    width: 100%;
    font-size: 0.18rem;
    padding-top: 0.41rem;
  }

  .section-top-author .author-image {
    position: relative;
    width: calc(100% + .54rem);
    margin-left: -0.27rem;
    margin-top: -1.07rem;
  }

  .section-top-author .author-image img {
    width: 100%;
  }
}

.section-top-review .review-title {
  position: relative;
}

.section-top-review .slider-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
}

.section-top-review .slider-content {
  position: relative;
}

.section-top-review .slider-content::before {
  content: "";
  display: block;
  width: 100%;
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.56), #fff);
  position: absolute;
  left: 0;
  pointer-events: none;
  z-index: 11;
}

.section-top-review .slick-arrow {
  position: absolute;
  text-indent: -999999px;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease;
}

.section-top-review .slick-arrow:hover {
  opacity: 0.7;
}

.section-top-review .slick-prev {
  background: url("../img/top/ico_arrow_prev.svg") center/contain no-repeat;
}

.section-top-review .slick-next {
  background: url("../img/top/ico_arrow_next.svg") center/contain no-repeat;
}

.section-top-review .slick-dots {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  cursor: pointer;
}

.section-top-review .slick-dots li.slick-active button,
.section-top-review .slick-dots li:hover button {
  background: #F5B1BD;
}

.section-top-review .slick-dots button {
  background: #CAD1E1;
  border-radius: 50%;
  text-indent: -999999px;
  transition: all 0.3s ease;
  overflow: hidden;
  cursor: pointer;
}

.section-top-review .reviewer-name {
  color: #363940;
}

.section-top-review .reviewer-position {
  color: #666;
  text-transform: uppercase;
}

.section-top-review .reviewer-detail {
  line-height: 1.4;
  color: #666;
  overflow: auto;
}

.section-top-review .review-comment {
  text-align: center;
}

.section-top-review .list-comment {
  text-align: left;
}

.section-top-review .comment-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  border-bottom: 1px solid #EBEBEB;
}

.section-top-review .comment-item:last-child {
  border-bottom: none;
}

.section-top-review .item-name {
  line-height: 1.35;
}

.section-top-review .item-text {
  line-height: 1.375;
  color: #666;
}

.section-top-review .item-evaluate {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.section-top-review .item-evaluate li {
  background: url("../img/top/ico_star_active.svg") center/contain no-repeat;
}

.section-top-review .item-evaluate li.is-active~li {
  background-image: url("../img/top/ico_star.svg");
}

.section-top-review .is-zero li,
.section-top-review .is-one li:nth-child(n + 2),
.section-top-review .is-two li:nth-child(n + 3),
.section-top-review .is-three li:nth-child(n + 4),
.section-top-review .is-four li:nth-child(n + 5) {
  background-image: url("../img/top/ico_star.svg");
}

.section-top-review .item-time {
  color: #959595;
}

.section-top-review .btn-view-more {
  display: inline-block;
}

.section-top-review .review-myreview {
  margin: 0 auto;
  border-top: 1px solid #EBEBEB;
}

.section-top-review .myreview-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}

.section-top-review .myreview-heading .item-evaluate li {
  cursor: pointer;
}

.section-top-review .myreview-heading .item-evaluate li:last-child {
  margin-right: 0;
}

.section-top-review .form-row {
  display: -ms-flexbox;
  display: flex;
}

.section-top-review .form-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.section-top-review .form-image {
  overflow: hidden;
}

.section-top-review .form-input {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  border: 1px solid #EBEBEB;
}

.section-top-review .form-submit {
  margin-left: auto;
}

.section-top-review .btn-submit {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #EA8798;
  color: #fff;
}

.section-top-review .review-detail.is-show .review-textarea {
  pointer-events: visible;
}

.section-top-review .review-textarea {
  width: 100%;
  border: 1px solid #EBEBEB;
  outline: none;
  background-color: #F1F9FB;
  border: 2px solid #ACCED6;
}

.section-top-review .myreview-message {
  line-height: 1.45;
  margin: 0 auto;
  text-align: center;
}

.section-top-review .myreview-btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #EA8798 url(../img/top/ico_cart_white.svg) left 22px top 10px/25px auto no-repeat;
  color: #fff;
  cursor: pointer;
  padding-left: 45px;
  border-radius: 6px;
  box-shadow: 0 4px 10px rgba(234, 135, 152, 0.3);
}

.section-top-review .myreview-btn-wrapper {
  display: flex;
  gap: 15px;
  justify-content: center;
  align-items: center;
}

.section-top-review .myreview-btn-bilingual {
  background-color: #183a5c;
  box-shadow: 0 4px 10px rgba(24, 58, 92, 0.3);
}

@media print,
(min-width: 768px) {
  .section-top-review {
    padding: 23px;
  }

  .section-top-review .review-title {
    margin-left: 109px;
    max-height: 240px;
  }

  .section-top-review .slider-item {
    padding: 0 18px;
  }

  .section-top-review .slider-content {
    width: 556px;
    height: 500px;
    border-radius: 29px;
    margin-top: 51px;
    margin-left: 20px;
    box-shadow: 0 3px 20px 0 rgba(0, 0, 0, 0.16);
  }

  .section-top-review .slider-content::before {
    height: 64px;
    bottom: 2px;
    border-radius: 0 0 29px 29px;
  }

  .section-top-review .slick-arrow {
    bottom: -83px;
    width: 48px;
    height: 48px;
  }

  .section-top-review .slick-prev {
    right: 89px;
  }

  .section-top-review .slick-next {
    right: 0;
  }

  .section-top-review .slick-dots {
    bottom: -74px;
    left: 34px;
  }

  .section-top-review .slick-dots li {
    padding: 3px;
    margin: 2px;
  }

  .section-top-review .slick-dots button {
    width: 8px;
    height: 8px;
  }

  .section-top-review .slider-reviewer {
    padding: 27px 40px;
  }

  .section-top-review .reviewer-name {
    font-size: 24px;
    margin: 14px 0 10px;
  }

  .section-top-review .reviewer-position {
    font-size: 12px;
  }

  .section-top-review .reviewer-detail {
    font-size: 16px;
    margin-top: 24px;
    max-height: 220px;
    padding-bottom: 30px;
  }

  .section-top-review .reviewer-detail::-webkit-scrollbar {
    width: 3px;
  }

  .section-top-review .reviewer-detail::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
  }

  .section-top-review .review-comment {
    max-width: 870px;
    margin: 74px auto 0;
  }

  .section-top-review .comment-item {
    padding: 21px 0;
  }

  .section-top-review .item-image {
    width: 70px;
    margin-right: 20px;
  }

  .section-top-review .item-detail {
    -ms-flex: 1;
    flex: 1;
  }

  .section-top-review .item-name {
    font-size: 15px;
  }

  .section-top-review .item-text {
    font-size: 16px;
    margin-bottom: 9px;
  }

  .section-top-review .item-evaluate {
    margin: 8px 0;
  }

  .section-top-review .item-evaluate li {
    width: 21px;
    height: 21px;
    margin-right: 8px;
  }

  .section-top-review .item-time {
    font-size: 13px;
  }

  .section-top-review .btn-view-more {
    margin: 10px auto 21px;
    font-size: 15px;
  }

  .section-top-review .review-myreview {
    padding: 37px 50px 39px;
    max-width: 870px;
  }

  .section-top-review .form-row {
    margin-top: 14px;
  }

  .section-top-review .form-image {
    width: 37px;
    margin-right: 18px;
    border-radius: 5px;
  }

  .section-top-review .form-name {
    font-size: 15px;
  }

  .section-top-review .form-input {
    width: 266px;
    height: 35px;
    border-radius: 6px;
    font-size: 14px;
    padding: 0 20px;
  }

  .section-top-review .form-input.is-email {
    width: 342px;
    margin-right: 19px;
  }

  .section-top-review .btn-submit {
    width: 100px;
    height: 35px;
    border-radius: 35px;
    font-size: 14px;
  }

  .section-top-review .review-textarea {
    width: 100%;
    height: 145px;
    margin-top: 4px;
    border-radius: 6px;
    padding: 18px 20px;

  }

  .section-top-review .myreview-icon {
    width: 131px;
    margin: 81px auto 57px;
  }

  .section-top-review .myreview-message {
    font-size: 18px;
    max-width: 600px;
  }

  .section-top-review .myreview-btn {
    margin: 47px auto 0;
    /* width: 151px; */
    height: 42px;
    border-radius: 4px;
    font-size: 16px;
    padding-left: 60px;
    padding-right: 39px;
  }
}

@media only screen and (max-width: 767.98px) {
  .section-top-review {
    padding-top: 0.12rem;
  }

  .section-top-review .wrapper {
    padding: 0 19px;
  }

  .section-top-review .review-title {
    width: 3.16rem;
  }

  .section-top-review .slider-content {
    width: 3.35rem;
    height: 3.98rem;
    margin-top: 0.23rem;
    border-radius: 0.15rem;
    box-shadow: 0 0.03rem 0.2rem 0 rgba(0, 0, 0, 0.16);
  }

  .section-top-review .slider-content::before {
    display: none;
  }

  .section-top-review .slick-arrow {
    display: none;
  }

  .section-top-review .slick-dots {
    bottom: -0.63rem;
    left: 50%;
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .section-top-review .slick-dots li {
    line-height: 1;
    padding: 0.03rem;
    margin: 0.02rem;
  }

  .section-top-review .slick-dots button {
    width: 0.08rem;
    height: 0.08rem;
  }

  .section-top-review .slider-reviewer {
    padding: 0.17rem 0.18rem;
  }

  .section-top-review .reviewer-image {
    width: 0.76rem;
  }

  .section-top-review .reviewer-name {
    font-size: 0.18rem;
    margin: 0.12rem 0 0.07rem;
  }

  .section-top-review .reviewer-position {
    font-size: 0.09rem;
  }

  .section-top-review .reviewer-detail {
    font-size: 0.16rem;
    margin-top: 0.22rem;
    max-height: 1.96rem;
    padding-bottom: 0.3rem;
  }

  .section-top-review .review-comment {
    margin: 0.45rem auto 0;
  }

  .section-top-review .comment-item {
    position: relative;
    padding: 0.2rem 0 0.12rem;
    border-bottom: 0.01rem solid #EBEBEB;
  }

  .section-top-review .item-image {
    position: absolute;
    right: 0;
    top: 0.2rem;
    width: 0.43rem;
  }

  .section-top-review .item-detail {
    -ms-flex: 1;
    flex: 1;
  }

  .section-top-review .item-name {
    font-size: 0.15rem;
    line-height: 1.4;
  }

  .section-top-review .item-text {
    font-size: 0.14rem;
    margin-bottom: 0.11rem;
    line-height: 1.6;
    max-height: 0.7rem;
    overflow: hidden;
  }

  .section-top-review .item-evaluate {
    margin: 0.06rem 0 0.07rem;
  }

  .section-top-review .item-evaluate li {
    width: 0.175rem;
    height: 0.175rem;
    margin-right: 0.065rem;
  }

  .section-top-review .item-time {
    font-size: 0.13rem;
  }

  .section-top-review .btn-view-more {
    margin: 0.1rem auto 0.21rem;
    font-size: 0.15rem;
  }

  .section-top-review .review-myreview {
    padding: 0;
    border: none;
  }

  .section-top-review .myreview-title {
    margin-top: 0.05rem;
  }

  .section-top-review .myreview-heading {
    font-size: 0.14rem;
  }

  .section-top-review .myreview-heading .item-evaluate {
    margin: 0.16rem 0 0.06rem;
  }

  .section-top-review .myreview-heading .item-evaluate li {
    width: 0.21rem;
    height: 0.21rem;
    margin-right: 0.08rem;
  }

  .section-top-review .review-content {
    font-size: 0.14rem;
  }

  .section-top-review .form-row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 0.14rem;
  }

  .section-top-review .form-image {
    width: 0.37rem;
    margin-right: 0.18rem;
    border-radius: 0.05rem;
  }

  .section-top-review .form-name {
    font-size: 0.15rem;
  }

  .section-top-review .form-input {
    width: 100%;
    height: 0.35rem;
    border-radius: 0.06rem;
    font-size: 0.14rem;
    padding: 0 0.2rem;
  }

  .section-top-review .form-input.is-email {
    width: 100%;
    margin-right: 0.19rem;
    margin-bottom: 0.1rem;
  }

  .section-top-review .btn-submit {
    width: 1rem;
    height: 0.35rem;
    border-radius: 0.35rem;
    font-size: 0.14rem;
  }

  .section-top-review .review-textarea {
    width: 100%;
    height: 1.45rem;
    margin-top: 0.04rem;
    border-radius: 0.06rem;
    padding: 0.12rem 0.2rem;
    line-height: 1.75;
  }

  .section-top-review .myreview-icon {
    width: 0.73rem;
    margin: 0.5rem 0.21rem 0;
  }

  .section-top-review .myreview-message {
    font-size: 0.18rem;
    max-width: 6rem;
    text-align: left;
    margin: 0.24rem 0.2rem 0.37rem;
  }

  .section-top-review .myreview-btn {
    /* margin: 0.24rem 0.21rem 0.48rem; */
    width: 100%;
    height: 0.42rem;
    border-radius: 0.04rem;
    font-size: 0.1rem;
    padding-left: 0.49rem;
    padding-right: 20px;
  }
}

@media print,
(min-width: 768px) {
  header .wrapper {
    width: calc(100% - 100px);
  }

  header .aside-navigation {
    right: 50px;
  }

  .section-top-keyvisual .keyvisual-inner {
    overflow: auto;
  }

  #fp-nav.fp-left {
    left: 50px !important;
  }
}

@media only screen and (max-width: 767.98px) {
  header .list-aside li {
    margin: 0;
    padding: 0;
    background-position: center right;
  }

  header .list-aside li a,
  header .list-aside li span {
    padding: 0.24rem 0;
    display: block;
  }

  .section-top-keyvisual .keyvisual-logo {
    width: 55%;
    display: block;
    margin: 0 auto;
    padding-right: 0.4rem;
    padding-bottom: 0.8rem;
  }

  .section-top-author .author-title {
    padding-bottom: 0.3rem;
  }

  .section-top-info .btn-show-more {
    background: linear-gradient(90deg, rgba(239, 230, 221, 0.1) 0%, rgba(239, 230, 221, 1) 50%, rgba(239, 230, 221, 1) 100%);
    padding: 0 0 0.1rem 0.2rem;
    bottom: -0.02rem;
  }

  header .btn-menu,
  .lightbox .lightbox-content.is-order .btn-back {
    width: 0.45rem;
    height: 0.45rem;
    background-size: 0.24rem;
    right: 0.1rem;
    top: 0.26rem;
  }

  header .aside-navigation {
    padding-top: 0.7rem;
    padding-bottom: 1.5rem;
  }
}