@charset "UTF-8";
/*! destyle.css v3.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
       appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
       appearance: radio;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* line-heightの上下をなくす
===================================================== */
/* letter-spacingの文末をなくす
===================================================== */
/* clearfix
===================================================== */
/* hover
===================================================== */
/* linkcolor
===================================================== */
/* z-index
===================================================== */
/* rem変換
===================================================== */
/* %変換
===================================================== */
/* vw変換
===================================================== */
/* vw変換、min最大値あり、プラスの場合(PC用)
===================================================== */
/* vw変換、max最小値あり、マイナスの場合(PC用)
===================================================== */
/* ラインハイト計算
===================================================== */
/* レタースペーシング計算
===================================================== */
/* right-arrow
===================================================== */
/* aspect-area
===================================================== */
/* aspect-area-h
===================================================== */
/* youtube
===================================================== */
/* margin: 0 auto
===================================================== */
/* color
===================================================== */
/* font-size
===================================================== */
/* font-family
===================================================== */
/* コンテンツ幅
===================================================== */
/* 余白
===================================================== */
/* メディアクエリー
===================================================== */
/* 
============================================ */ /* 読み込み
===================================================== */
/* common
===================================================== */
html,
body {
  background-color: #F0EEE9;
  color: #0D010B;
  letter-spacing: 0;
  line-height: 1.6;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  html,
body {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  html,
body {
    font-size: 12px;
  }
}

* {
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

a {
  text-decoration: none;
}

img {
  width: 100%;
  display: block;
}

@media screen and (min-width: 768px) {
  .pc-none {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .pc-none {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .sp-none {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .sp-none {
    display: none;
  }
}

/* .top
===================================================== */
.top {
  background-color: #E3E3DD;
}
@media screen and (min-width: 768px) {
  .top {
    padding: 0 40px;
  }
}
.top__inner {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .top__inner {
    max-width: 1144px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
.top__inner::before {
  content: "";
  display: block;
}
@media screen and (min-width: 768px) {
  .top__inner::before {
    padding-top: 61.1888111888%;
  }
}
@media screen and (max-width: 767px) {
  .top__inner::before {
    padding-top: 181.7333333333%;
  }
}
.top-img {
  position: absolute;
  z-index: 1;
  opacity: 0;
  transition: opacity 1s;
}
.top-img.on {
  opacity: 1;
}
.top-img--1 {
  transition-delay: 0s;
}
@media screen and (min-width: 768px) {
  .top-img--1 {
    width: 25.3064798599%;
    top: 35.7142857143%;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .top-img--1 {
    width: 57.4666666667vw;
    top: 0;
    left: 0;
    z-index: 2;
  }
}
.top-img--2 {
  transition-delay: 0.6s;
}
@media screen and (min-width: 768px) {
  .top-img--2 {
    width: 16.3747810858%;
    top: 10.8571428571%;
    right: 27.7583187391%;
  }
}
@media screen and (max-width: 767px) {
  .top-img--2 {
    width: 30.9333333333vw;
    top: 90.5333333333vw;
    left: 8vw;
  }
}
.top-img--3 {
  transition-delay: 0.2s;
}
@media screen and (min-width: 768px) {
  .top-img--3 {
    width: 24.7810858144%;
    top: 4.1428571429%;
    left: 24.7810858144%;
  }
}
@media screen and (max-width: 767px) {
  .top-img--3 {
    width: 42.5333333333vw;
    top: 73.0666666667vw;
    right: 6.1333333333vw;
  }
}
.top-img--4 {
  transition-delay: 0.4s;
}
@media screen and (min-width: 768px) {
  .top-img--4 {
    width: 18.9141856392%;
    top: 15.7142857143%;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .top-img--4 {
    width: 36.8vw;
    top: 12.2666666667vw;
    right: 0;
  }
}
.top-title__1 {
  position: absolute;
  z-index: 2;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 0.8s;
}
@media screen and (min-width: 768px) {
  .top-title__1 {
    width: 9.7197898424%;
    top: 64.1428571429%;
    left: 10.2451838879%;
  }
}
@media screen and (max-width: 767px) {
  .top-title__1 {
    width: 20.9333333333vw;
    top: 130.4vw;
    left: 5.6vw;
  }
}
.top-title__1.on {
  opacity: 1;
}
.top-title__2 {
  position: absolute;
  z-index: 2;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 1s;
}
@media screen and (min-width: 768px) {
  .top-title__2 {
    width: 20.4028021016%;
    top: 69.4285714286%;
    left: 12.5218914186%;
  }
}
@media screen and (max-width: 767px) {
  .top-title__2 {
    width: 41.8666666667vw;
    top: 136.8vw;
    left: 10.1333333333vw;
  }
}
.top-title__2.on {
  opacity: 1;
}
.top-title__3 {
  position: absolute;
  z-index: 3;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 1.2s;
}
@media screen and (min-width: 768px) {
  .top-title__3 {
    width: 42.3817863398%;
    top: 66.5714285714%;
    left: 16.0245183888%;
  }
}
@media screen and (max-width: 767px) {
  .top-title__3 {
    width: 77.8666666667vw;
    top: 128.2666666667vw;
    right: 5.3333333333vw;
  }
}
.top-title__3.on {
  opacity: 1;
}
.top-subtitle {
  position: absolute;
  z-index: 2;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 0.8s;
}
@media screen and (min-width: 768px) {
  .top-subtitle {
    width: 3.6777583187%;
    top: 13.7142857143%;
    right: -0.5253940455%;
  }
}
@media screen and (max-width: 767px) {
  .top-subtitle {
    width: 7.6vw;
    top: 24.6666666667vw;
    left: 4.4vw;
  }
}
.top-subtitle.on {
  opacity: 1;
}

/* .lead
===================================================== */
.lead {
  letter-spacing: 0em;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  .lead {
    text-align: center;
    font-size: min(1.6vw, 16px);
    line-height: 2.7142857143;
    padding: min(9vw, 90px) 0 min(9vw, 90px);
  }
}
@media screen and (max-width: 767px) {
  .lead {
    padding: 17.6vw 0;
    width: 81.3333333333vw;
    margin-left: auto;
    margin-right: auto;
    font-size: 3.2vw;
    line-height: 2.4583333333;
  }
}

/* .menu
===================================================== */
@media screen and (min-width: 768px) {
  .menu {
    width: min(56.2vw, 562px);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .menu {
    width: 100%;
  }
}
.menu .menu-list {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.menu .menu-list__item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .menu .menu-list__item {
    border-bottom: 2px solid #3A7258;
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__item {
    border-bottom: 1px solid #3A7258;
  }
}
@media screen and (min-width: 768px) {
  .menu .menu-list__item:first-child {
    border-top: 2px solid #3A7258;
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__item:first-child {
    border-top: 1px solid #3A7258;
  }
}
.menu .menu-list__link {
  display: flex;
  width: 100%;
  position: relative;
  align-items: flex-end;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .menu .menu-list__link {
    padding: min(3.3vw, 33px) min(6.5vw, 65px) min(3.3vw, 33px) min(10.3vw, 103px);
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__link {
    padding: 7.2vw 8vw 8vw 16.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .menu .menu-list__link:hover .menu-list__num,
.menu .menu-list__link:hover .menu-list__text-b {
    color: #3A7258;
  }
}
@media screen and (min-width: 768px) {
  .menu .menu-list__link:hover svg {
    stroke: #3A7258;
  }
}
.menu .menu-list__num {
  position: absolute;
  top: 50%;
  transform-origin: top left;
  transform: rotate(-90deg) translateX(-50%);
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .menu .menu-list__num {
    font-size: min(1.2vw, 12px);
    left: min(6.5vw, 65px);
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__num {
    font-size: 3.2vw;
    left: 6.6666666667vw;
  }
}
.menu .menu-list__text-b {
  display: block;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #0D010B;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .menu .menu-list__text-b {
    font-size: min(1.4vw, 14px);
    margin-bottom: min(0.5vw, 5px);
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__text-b {
    font-size: 3.4666666667vw;
    margin-bottom: 2.4vw;
  }
}
.menu .menu-list__text-g {
  display: block;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #3A7258;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .menu .menu-list__text-g {
    font-size: min(2.6vw, 26px);
    transform: translateX(max(-0.2vw, -2px));
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__text-g {
    font-size: 6.1333333333vw;
    transform: translateX(-1.3333333333vw);
  }
}
@media screen and (min-width: 768px) {
  .menu .menu-list__arrow {
    width: min(1vw, 10px);
    margin-bottom: min(0.2vw, 2px);
  }
}
@media screen and (max-width: 767px) {
  .menu .menu-list__arrow {
    width: 1.6vw;
    margin-bottom: 1.3333333333vw;
  }
}
.menu .menu-list__arrow svg {
  stroke: #0D010B;
}

/* .sec-titlearea
===================================================== */
.sec-titlearea {
  background-color: #F0EEE9;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-titlearea {
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 768px) {
  .code .sec-titlearea {
    width: min(89.7vw, 897px);
  }
}

@media screen and (min-width: 768px) {
  .bag .sec-titlearea {
    width: 100%;
    margin-bottom: min(14.4vw, 144px);
  }
}

@media screen and (min-width: 768px) {
  .spot .sec-titlearea {
    width: min(93.3vw, 933px);
  }
}

/* .sec-title
===================================================== */
.sec-title {
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
}
.sec-title::before {
  content: "";
  width: 100%;
  display: block;
  background-size: 100%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .sec-title::before {
    padding-top: 76.2360446571%;
  }
}
.sec-title__inner {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .sec-title__inner {
    top: min(4.1vw, 41px);
    left: min(7.6vw, 76px);
  }
}
@media screen and (max-width: 767px) {
  .sec-title__inner {
    top: 11.3333333333vw;
    left: 10.6666666667vw;
  }
}
.sec-title__num {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .sec-title__num {
    font-size: min(1.6vw, 16px);
    margin-bottom: min(2vw, 20px);
  }
}
@media screen and (max-width: 767px) {
  .sec-title__num {
    margin-bottom: 4.8vw;
    font-size: 3.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .sec-title__text, .sec-title__sub {
    padding-left: min(2.7vw, 27px);
  }
}
@media screen and (max-width: 767px) {
  .sec-title__text, .sec-title__sub {
    padding-left: 3.4666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .sec-title__text {
    margin-bottom: min(1.3vw, 13px);
  }
}
@media screen and (max-width: 767px) {
  .sec-title__text {
    margin-bottom: 2.6666666667vw;
  }
}
.sec-title__text-b {
  display: block;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #0D010B;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .sec-title__text-b {
    font-size: min(1.9vw, 19px);
    margin-bottom: min(1.1vw, 11px);
  }
}
@media screen and (max-width: 767px) {
  .sec-title__text-b {
    font-size: 4.2666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
.sec-title__text-g {
  display: block;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #3A7258;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .sec-title__text-g {
    font-size: min(3.9vw, 39px);
    transform: translateX(max(-0.5vw, -5px));
  }
}
@media screen and (max-width: 767px) {
  .sec-title__text-g {
    font-size: 8.5333333333vw;
    transform: translateX(-1.3333333333vw);
  }
}
.sec-title__sub {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.091em;
}
@media screen and (min-width: 768px) {
  .sec-title__sub {
    font-size: min(1.2vw, 12px);
    line-height: 1.25;
  }
}
@media screen and (max-width: 767px) {
  .sec-title__sub {
    font-size: 2.6666666667vw;
    line-height: 1.25;
  }
}

@media screen and (min-width: 768px) {
  .code .sec-title {
    width: min(45.5vw, 455px);
    top: max(-20.7vw, -207px);
  }
}
@media screen and (max-width: 767px) {
  .code .sec-title {
    top: -45.8666666667vw;
    width: 83.4666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .code .sec-title::before {
    background-image: url(../images/hukidashi_1_pc.svg);
    padding-top: 61.8421052632%;
  }
}
@media screen and (max-width: 767px) {
  .code .sec-title::before {
    background-image: url(../images/hukidashi_1_sp.svg);
  }
}

@media screen and (min-width: 768px) {
  .bag .sec-title {
    width: min(45.8vw, 458px);
    top: max(-21.8vw, -218px);
  }
}
@media screen and (max-width: 767px) {
  .bag .sec-title {
    top: -37.8666666667vw;
    width: 83.4666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .bag .sec-title::before {
    background-image: url(../images/hukidashi_2_pc.svg);
    padding-top: 67.3202614379%;
  }
}
@media screen and (max-width: 767px) {
  .bag .sec-title::before {
    background-image: url(../images/hukidashi_2_sp.svg);
  }
}
@media screen and (min-width: 768px) {
  .bag .sec-title .sec-title__inner {
    top: min(4.9vw, 49px);
    left: min(7.6vw, 76px);
  }
}
@media screen and (min-width: 768px) {
  .bag .sec-title .sec-title__num {
    margin-bottom: min(2.6vw, 26px);
  }
}
@media screen and (min-width: 768px) {
  .bag .sec-title .sec-title__text-g {
    transform: translateX(max(-0.2vw, -2px));
  }
}

@media screen and (min-width: 768px) {
  .spot .sec-title {
    width: min(55.9vw, 559px);
    top: max(-21.7vw, -217px);
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-title {
    top: -31.2vw;
    width: 88.8vw;
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title::before {
    background-image: url(../images/hukidashi_3_pc.svg);
    padding-top: 53.0465949821%;
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-title::before {
    background-image: url(../images/hukidashi_3_sp.svg);
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title .sec-title__inner {
    top: min(5.2vw, 52px);
    left: min(8.2vw, 82px);
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title .sec-title__num {
    margin-bottom: min(2.5vw, 25px);
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title .sec-title__text {
    padding-left: min(2.3vw, 23px);
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-title .sec-title__text {
    padding-left: 2.9333333333vw;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title .sec-title__sub {
    padding-left: min(2.4vw, 24px);
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-title .sec-title__sub {
    padding-left: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title .sec-title__text-b {
    font-size: min(1.7vw, 17px);
    margin-bottom: min(1.8vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-title .sec-title__text-b {
    font-size: 3.7333333333vw;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .spot .sec-title .sec-title__text-g {
    font-size: min(3.2vw, 32px);
    transform: translateX(0);
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-title .sec-title__text-g {
    font-size: 5.7333333333vw;
    transform: translateX(0);
  }
}

/* .sec-lead
===================================================== */
.sec-lead {
  letter-spacing: 0;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .sec-lead {
    font-size: min(1.6vw, 16px);
    line-height: 2.3846153846;
    padding-bottom: min(7.5vw, 75px);
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .sec-lead {
    font-size: 3.7333333333vw;
    line-height: 2.2083333333;
    padding-bottom: 11.4666666667vw;
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .code .sec-lead {
    padding-top: min(11.8vw, 118px);
  }
}
@media screen and (max-width: 767px) {
  .code .sec-lead {
    padding-top: 22.6666666667vw;
  }
}

@media screen and (min-width: 768px) {
  .bag .sec-lead {
    padding-top: min(11.9vw, 119px);
  }
}
@media screen and (max-width: 767px) {
  .bag .sec-lead {
    padding-top: 33.3333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .spot .sec-lead {
    padding-top: min(11.9vw, 119px);
  }
}
@media screen and (max-width: 767px) {
  .spot .sec-lead {
    padding-top: 34.4vw;
  }
}

/* .credit
===================================================== */
.credit {
  clear: both;
}
@media screen and (min-width: 768px) {
  .credit {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .credit {
    width: 81.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.credit__item {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .credit__item:not(:last-child) {
    margin-bottom: min(1.8vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  .credit__item:not(:last-child) {
    margin-bottom: 4vw;
  }
}
.credit__link {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .credit__link:hover .credit__img {
    opacity: 0.73;
  }
}
@media screen and (min-width: 768px) {
  .credit__link:hover .credit__text {
    color: #3A7258;
  }
}
@media screen and (min-width: 768px) {
  .credit__link:hover .credit__buy {
    border: 1px solid #3A7258;
    color: #3A7258;
  }
}
.credit__img {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .credit__img {
    width: min(6.4vw, 64px);
  }
}
@media screen and (max-width: 767px) {
  .credit__img {
    width: 14.9333333333vw;
  }
}
.credit__text {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .credit__text {
    margin: min(0.5vw, 5px) min(2.1vw, 21px) 0;
  }
}
@media screen and (max-width: 767px) {
  .credit__text {
    margin: 1.3333333333vw 4.9333333333vw 0;
  }
}
.credit__text--ja {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  display: block;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .credit__text--ja {
    font-size: min(1.1vw, 11px);
  }
}
@media screen and (max-width: 767px) {
  .credit__text--ja {
    font-size: 2.8vw;
  }
}
.credit__text--en {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  display: inline-block;
  letter-spacing: 0.051em;
}
@media screen and (min-width: 768px) {
  .credit__text--en {
    font-size: min(1.2vw, 12px);
  }
}
@media screen and (max-width: 767px) {
  .credit__text--en {
    font-size: 2.9333333333vw;
  }
}
.credit__text--en.line {
  text-decoration: line-through;
}
.credit__text--sale {
  text-transform: uppercase;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  display: inline-block;
  letter-spacing: 0.051em;
  margin-left: 5px;
  color: #C11507;
}
@media screen and (min-width: 768px) {
  .credit__text--sale {
    font-size: min(1.2vw, 12px);
  }
}
@media screen and (max-width: 767px) {
  .credit__text--sale {
    font-size: 2.9333333333vw;
  }
}
.credit__buy {
  flex-shrink: 0;
  text-align: center;
  background-color: #F0EEE9;
  border: 1px solid #0D010B;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.064em;
}
@media screen and (min-width: 768px) {
  .credit__buy {
    width: min(6.4vw, 64px);
    line-height: min(2.5vw, 25px);
    font-size: min(1.1vw, 11px);
    margin-top: min(0.7vw, 7px);
  }
}
@media screen and (max-width: 767px) {
  .credit__buy {
    width: 14.9333333333vw;
    line-height: 5.6vw;
    font-size: 2.6666666667vw;
    margin-top: 1.8666666667vw;
  }
}

@media screen and (min-width: 768px) {
  .code .credit {
    margin-bottom: min(7.5vw, 75px);
  }
}
@media screen and (max-width: 767px) {
  .code .credit {
    margin-bottom: 16.9333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .bag .credit {
    width: 73.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .bag .credit .credit__buy {
    width: min(5.4vw, 54px);
    line-height: min(2vw, 20px);
    font-size: min(1vw, 10px);
  }
}

@media screen and (max-width: 767px) {
  .spot .credit {
    margin-bottom: 16.9333333333vw;
  }
}

/* .staff
===================================================== */
.staff {
  background-color: #F0EEE9;
  border: 1px solid #0D010B;
}
@media screen and (min-width: 768px) {
  .staff {
    width: 100%;
    margin-bottom: min(5.8vw, 58px);
  }
}
@media screen and (max-width: 767px) {
  .staff {
    width: 89.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.staff__inner {
  display: flex;
  align-items: center;
  justify-content: center;
}
.staff-img {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .staff-img {
    width: min(13.2vw, 132px);
    margin-right: min(3.6vw, 36px);
  }
}
@media screen and (max-width: 767px) {
  .staff-img {
    width: 30.4vw;
    margin-right: 6.6666666667vw;
  }
}
.staff-kakko {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .staff-kakko {
    font-size: min(1vw, 10px);
    margin-bottom: min(1vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .staff-kakko {
    font-size: 2.6666666667vw;
    margin-bottom: 1.8666666667vw;
  }
}
.staff-name {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .staff-name {
    font-size: min(1.8vw, 18px);
  }
}
@media screen and (max-width: 767px) {
  .staff-name {
    font-size: 4.5333333333vw;
  }
}
.staff-store, .staff-h {
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .staff-store, .staff-h {
    font-size: min(0.9vw, 9px);
    line-height: 1.5555555556;
  }
}
@media screen and (max-width: 767px) {
  .staff-store, .staff-h {
    font-size: 2.4vw;
    line-height: 1.5;
  }
}
@media screen and (min-width: 768px) {
  .staff-h {
    margin-bottom: min(2.2vw, 22px);
  }
}
@media screen and (max-width: 767px) {
  .staff-h {
    margin-bottom: 3.2vw;
  }
}
.staff-inst {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .staff-inst:hover {
    color: #3A7258;
  }
}
.staff-inst__img {
  height: 100%;
}
@media screen and (min-width: 768px) {
  .staff-inst__img {
    width: min(1.4vw, 14px);
    margin-right: min(0.7vw, 7px);
  }
}
@media screen and (max-width: 767px) {
  .staff-inst__img {
    width: 3.2vw;
    margin-right: 0.6666666667vw;
  }
}
.staff-inst__id {
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .staff-inst__id {
    font-size: min(1vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .staff-inst__id {
    font-size: 2.6666666667vw;
  }
}
.staff-stasta {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-decoration: underline;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .staff-stasta {
    font-size: min(1vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .staff-stasta {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .staff-stasta:hover {
    color: #3A7258;
  }
}

@media screen and (min-width: 768px) {
  .code .staff {
    padding: min(4.2vw, 42px) min(4.1vw, 41px) min(4.2vw, 42px) min(5.5vw, 55px);
    width: min(39.2vw, 392px);
    margin-left: max(-1vw, -10px);
  }
}
@media screen and (max-width: 767px) {
  .code .staff {
    padding: 11.4666666667vw 5.3333333333vw 12.5333333333vw;
    margin-bottom: 14.1333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .bag .staff {
    padding: min(5.5vw, 55px) min(4.1vw, 41px) min(6.5vw, 65px) min(5.5vw, 55px);
    width: min(47.6vw, 476px);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .bag .staff {
    padding: 11.4666666667vw 5.3333333333vw;
    margin-bottom: 11.4666666667vw;
  }
}

/* .brandtop
===================================================== */
.brandtop__link {
  display: block;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  position: relative;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .brandtop__link {
    font-size: min(1.5vw, 15px);
    padding-bottom: min(3.1vw, 31px);
  }
}
@media screen and (max-width: 767px) {
  .brandtop__link {
    font-size: 3.7333333333vw;
    padding-bottom: 6.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .brandtop__link:hover {
    color: #3A7258;
  }
}
.brandtop__link:hover svg {
  transform: translateX(-48%);
}
.brandtop__link svg {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  transition: transform 0.3s;
}
@media screen and (min-width: 768px) {
  .brandtop__link svg {
    width: min(30.2vw, 302px);
  }
}
@media screen and (max-width: 767px) {
  .brandtop__link svg {
    width: 69.3333333333vw;
  }
}

/* .obi-lead
===================================================== */
.obi-lead {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
  text-orientation: upright;
  white-space: nowrap;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .obi-lead {
    font-size: min(2.1vw, 21px);
    padding: min(1.5vw, 15px) min(0.7vw, 7px);
    letter-spacing: 0.26em;
  }
}
@media screen and (max-width: 767px) {
  .obi-lead {
    font-size: 5.0666666667vw;
    padding: 3.7333333333vw 2vw;
    letter-spacing: 0.2em;
  }
}

/* .code
===================================================== */
.code {
  background-color: #E3E3DD;
}
@media screen and (min-width: 768px) {
  .code {
    padding-top: min(32.9vw, 329px);
  }
}
@media screen and (max-width: 767px) {
  .code {
    padding-top: 65.3333333333vw;
  }
}
.code__inner {
  position: relative;
}
@media screen and (min-width: 768px) {
  .code__inner {
    margin-left: auto;
    margin-right: auto;
    width: min(89.7vw, 897px);
    padding-bottom: min(50.3vw, 503px);
  }
}
@media screen and (max-width: 767px) {
  .code__inner {
    width: 100%;
    padding-bottom: 96.8vw;
  }
}
@media screen and (min-width: 768px) {
  .code-block {
    display: flex;
    justify-content: space-between;
    width: min(83.4vw, 834px);
    margin-left: auto;
    margin-right: auto;
    transform: translateX(max(-3.15vw, -31.5px));
  }
}
@media screen and (max-width: 767px) {
  .code-block {
    padding-top: 15.4666666667vw;
    width: 89.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .code-block:not(:last-of-type) {
    margin-bottom: min(4.3vw, 43px);
  }
}
@media screen and (max-width: 767px) {
  .code-block:not(:last-of-type) {
    margin-bottom: 21.6vw;
  }
}
@media screen and (min-width: 768px) {
  .code-block__left {
    width: min(40.1vw, 401px);
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 100%;
    padding-top: min(7.8vw, 78px);
  }
}
@media screen and (min-width: 768px) {
  .code-block__right {
    width: min(35.1vw, 351px);
    padding-top: min(15.3vw, 153px);
  }
}
.code-block:nth-of-type(even) .code-lead__item:first-child {
  right: 0;
}
@media screen and (min-width: 768px) {
  .code-block:nth-of-type(even) .code-lead__item:last-child {
    right: min(4.5vw, 45px);
  }
}
@media screen and (max-width: 767px) {
  .code-block:nth-of-type(even) .code-lead__item:last-child {
    right: 10.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .code-block:nth-of-type(even) .code-text {
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .code-block:nth-of-type(odd) .code-lead__item:first-child {
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .code-block:nth-of-type(odd) .code-lead__item:first-child {
    left: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .code-block:nth-of-type(odd) .code-lead__item:last-child {
    right: min(4.5vw, 45px);
  }
}
@media screen and (max-width: 767px) {
  .code-block:nth-of-type(odd) .code-lead__item:last-child {
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .code-block:nth-of-type(odd) .code-text {
    margin-left: auto;
  }
}
@media screen and (min-width: 768px) {
  .code-brand {
    margin-bottom: min(2.4vw, 24px);
    margin-left: min(1.3vw, 13px);
  }
}
@media screen and (max-width: 767px) {
  .code-brand {
    padding-left: 2.6666666667vw;
    margin-bottom: 4.5333333333vw;
  }
}
.code-brand__en {
  display: block;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .code-brand__en {
    font-size: min(1.6vw, 16px);
    margin-bottom: min(0.9vw, 9px);
  }
}
@media screen and (max-width: 767px) {
  .code-brand__en {
    font-size: 3.7333333333vw;
    margin-bottom: 1.8666666667vw;
  }
}
.code-brand__kana {
  display: block;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .code-brand__kana {
    font-size: min(0.9vw, 9px);
  }
}
@media screen and (max-width: 767px) {
  .code-brand__kana {
    font-size: 2.4vw;
  }
}
@media screen and (min-width: 768px) {
  .code-img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .code-img {
    margin-bottom: 6.6666666667vw;
  }
}
.code-textwrap {
  position: relative;
  border-bottom: 1px solid #0D010B;
}
@media screen and (min-width: 768px) {
  .code-textwrap {
    width: 100%;
    padding-bottom: min(6.2vw, 62px);
    margin-bottom: min(6.4vw, 64px);
  }
}
@media screen and (max-width: 767px) {
  .code-textwrap {
    margin-left: auto;
    margin-right: auto;
    width: 81.3333333333vw;
    padding-bottom: 10vw;
    margin-bottom: 13.3333333333vw;
  }
}
.code-textwrap .code-lead__item {
  background-color: #F0EEE9;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .code-textwrap .code-lead__item {
    top: min(0vw, 0px);
    border: 2px solid #3A7258;
  }
}
@media screen and (max-width: 767px) {
  .code-textwrap .code-lead__item {
    padding: 3.7333333333vw 1.8666666667vw;
    top: -22.9333333333vw;
    border: 1px solid #3A7258;
  }
}
.code-textwrap .code-text {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .code-textwrap .code-text {
    font-size: min(1.3vw, 13px);
    line-height: 2.4615384615;
    width: min(24.6vw, 246px);
  }
}
@media screen and (max-width: 767px) {
  .code-textwrap .code-text {
    width: 53.3333333333vw;
    font-size: 2.9333333333vw;
    line-height: 2.1363636364;
  }
}
.code-illust {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .code-illust--1 {
    width: min(6.2vw, 62px);
    bottom: min(23.4vw, 234px);
    right: max(-0.4vw, -4px);
  }
}
@media screen and (max-width: 767px) {
  .code-illust--1 {
    width: 13.8666666667vw;
    bottom: 57.6vw;
    right: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .code-illust--2 {
    width: min(4.3vw, 43px);
    bottom: min(17.1vw, 171px);
    right: min(5.7vw, 57px);
  }
}
@media screen and (max-width: 767px) {
  .code-illust--2 {
    width: 8.5333333333vw;
    bottom: 47.7333333333vw;
    right: 16.2666666667vw;
  }
}

/* .bag
===================================================== */
.bag {
  background-color: #B2BAB6;
}
@media screen and (min-width: 768px) {
  .bag {
    padding-bottom: min(27.5vw, 275px);
  }
}
@media screen and (max-width: 767px) {
  .bag {
    padding-bottom: 27.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-block {
    width: min(83.4vw, 834px);
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .bag-block {
    padding-top: 14.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-block:not(:last-of-type) {
    margin-bottom: min(27.5vw, 275px);
  }
}
@media screen and (max-width: 767px) {
  .bag-block:not(:last-of-type) {
    margin-bottom: 16vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-block__inner {
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .bag-block__inner {
    width: 81.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .bag-brand {
    margin-bottom: min(4.3vw, 43px);
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .bag-brand {
    margin-bottom: 3.2vw;
    margin-left: 1.8666666667vw;
  }
}
.bag-brand__num {
  display: block;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .bag-brand__num {
    font-size: min(1.3vw, 13px);
  }
}
@media screen and (max-width: 767px) {
  .bag-brand__num {
    font-size: 2.9333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-brand__inner {
    display: flex;
    align-items: center;
  }
}
.bag-brand__en {
  display: block;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.037em;
}
@media screen and (min-width: 768px) {
  .bag-brand__en {
    font-size: min(3vw, 30px);
    float: left;
  }
}
@media screen and (max-width: 767px) {
  .bag-brand__en {
    font-size: 6.6666666667vw;
  }
}
.bag-brand__ja {
  display: block;
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .bag-brand__ja {
    font-size: min(1.1vw, 11px);
    margin-top: min(1.2vw, 12px);
    margin-left: min(1vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  .bag-brand__ja {
    font-size: 2.6666666667vw;
    margin-top: -0.8vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-seen {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--1 {
    flex-direction: row-reverse;
    margin-bottom: min(15vw, 150px);
  }
}
@media screen and (max-width: 767px) {
  .bag-seen--1 {
    margin-bottom: 28.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--1 .bag-imgwrap {
    margin-left: min(6.9vw, 69px);
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--1 .bag-lead {
    right: min(1.9vw, 19px);
  }
}
@media screen and (max-width: 767px) {
  .bag-seen--1 .bag-lead {
    right: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--1 .bag-data {
    padding-top: min(10.5vw, 105px);
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--2 {
    flex-direction: row;
    margin-bottom: min(13vw, 130px);
  }
}
@media screen and (max-width: 767px) {
  .bag-seen--2 {
    margin-bottom: 19.2vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--2 .bag-imgwrap {
    margin-right: min(6.9vw, 69px);
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--2 .bag-lead {
    right: min(1.9vw, 19px);
  }
}
@media screen and (max-width: 767px) {
  .bag-seen--2 .bag-lead {
    left: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-seen--2 .bag-data {
    padding-top: min(1.5vw, 15px);
  }
}
@media screen and (min-width: 768px) {
  .bag-imgwrap {
    flex-shrink: 0;
    width: min(41.2vw, 412px);
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .bag-imgwrap {
    position: relative;
    margin-bottom: 6.9333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-imgwrap .bag-img {
    border: 5px solid #fff;
  }
}
@media screen and (max-width: 767px) {
  .bag-imgwrap .bag-img {
    border: 2.5px solid #fff;
  }
}
.bag-imgwrap .bag-lead {
  background-color: #fff;
  border: 1px solid #0D010B;
  position: absolute;
  transition-delay: 0.3s;
}
@media screen and (min-width: 768px) {
  .bag-imgwrap .bag-lead {
    top: max(-2.2vw, -22px);
  }
}
@media screen and (max-width: 767px) {
  .bag-imgwrap .bag-lead {
    top: -6.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .bag-data {
    width: min(35.2vw, 352px);
  }
}
@media screen and (min-width: 768px) {
  .bag-text {
    margin-bottom: min(5vw, 50px);
  }
}
@media screen and (max-width: 767px) {
  .bag-text {
    margin-bottom: 9.3333333333vw;
    width: 73.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.bag-text__big {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  float: left;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .bag-text__big {
    font-size: min(4.4vw, 44px);
    padding: min(0.5vw, 5px) min(0.8vw, 8px) 0 0;
  }
}
@media screen and (max-width: 767px) {
  .bag-text__big {
    font-size: 9.8666666667vw;
    padding: 0.5333333333vw 2vw 0 0.8vw;
  }
}
.bag-text__min {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .bag-text__min {
    font-size: min(1.3vw, 13px);
    line-height: 2.3846153846;
  }
}
@media screen and (max-width: 767px) {
  .bag-text__min {
    font-size: 3.2vw;
    line-height: 1.9583333333;
  }
}

/* .spot
===================================================== */
.spot {
  background-color: #E3E3DD;
}
@media screen and (min-width: 768px) {
  .spot {
    padding-top: min(38.7vw, 387px);
    padding-bottom: min(27.5vw, 275px);
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .spot {
    padding-top: 74.1333333333vw;
    padding-bottom: 9.3333333333vw;
  }
}
.spot__inner {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .spot__inner {
    width: min(93.3vw, 933px);
  }
}
@media screen and (max-width: 767px) {
  .spot__inner {
    width: 100%;
  }
}
.spot-illust {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .spot-illust--1 {
    width: min(6vw, 60px);
    top: max(-26.5vw, -265px);
    left: min(12.5vw, 125px);
  }
}
@media screen and (max-width: 767px) {
  .spot-illust--1 {
    width: 13.3333333333vw;
    top: -50.6666666667vw;
    left: 5.8666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .spot-illust--2 {
    width: min(4.1vw, 41px);
    top: max(-32.5vw, -325px);
    left: min(19.5vw, 195px);
  }
}
@media screen and (max-width: 767px) {
  .spot-illust--2 {
    width: 8.5333333333vw;
    top: -59.7333333333vw;
    left: 18.9333333333vw;
  }
}
.spot-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .spot-list {
    padding-top: min(8.4vw, 84px);
    gap: min(9vw, 90px) min(4vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list {
    padding-top: 13.6vw;
    width: 85.8666666667vw;
    gap: 12vw 6.1333333333vw;
    margin-bottom: 12.5333333333vw;
  }
}
.spot-list__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .spot-list__item {
    width: calc((100% - min(12vw, 120px)) / 4);
  }
}
@media screen and (max-width: 767px) {
  .spot-list__item {
    width: calc((100% - 6.1333333333vw) / 2);
  }
}
.spot-list .spot-img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-img {
    margin-bottom: min(1.2vw, 12px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-img {
    margin-bottom: 2.6666666667vw;
  }
}
.spot-list .spot-title {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
  line-height: 1.4285714286;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-title {
    padding: 0 min(1vw, 10px);
    margin-bottom: min(0.6vw, 6px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-title {
    font-size: 3.7333333333vw;
    margin-bottom: 1.3333333333vw;
    padding: 0 1.0666666667vw;
  }
}
.spot-list .spot-text {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 400;
  font-style: normal;
  word-break: break-all;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-text {
    font-size: min(1.1vw, 11px);
    line-height: 2.1818181818;
    padding: 0 min(1vw, 10px);
    margin-bottom: min(1.5vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-text {
    font-size: 2.4vw;
    line-height: 2;
    margin-bottom: 2.6666666667vw;
    padding: 0 1.3333333333vw;
  }
}
.spot-list .spot-staff {
  display: flex;
  align-items: center;
}
.spot-list .spot-staff__img {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff__img {
    width: min(5.6vw, 56px);
    margin-right: min(1.7vw, 17px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff__img {
    width: 13.2vw;
    margin-right: 3.3333333333vw;
  }
}
.spot-list .spot-staff__name {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff__name {
    font-size: min(1.4vw, 14px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff__name {
    font-size: 2.8vw;
  }
}
.spot-list .spot-staff__store, .spot-list .spot-staff__h {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff__store, .spot-list .spot-staff__h {
    font-size: min(0.8vw, 8px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff__store, .spot-list .spot-staff__h {
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff__store {
    margin-bottom: min(0.5vw, 5px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff__store {
    margin-bottom: 1.0666666667vw;
  }
}
.spot-list .spot-staff-inst {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff-inst:hover {
    color: #3A7258;
  }
}
.spot-list .spot-staff-inst__img {
  height: 100%;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff-inst__img {
    width: min(1.6vw, 16px);
    margin-right: min(0.8vw, 8px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff-inst__img {
    width: 3.2vw;
    margin-right: 2vw;
  }
}
.spot-list .spot-staff-inst__id {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff-inst__id {
    font-size: min(1.2vw, 12px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff-inst__id {
    font-size: 2.1333333333vw;
  }
}
.spot-list .spot-staff__stasta {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
  font-style: normal;
  text-decoration: underline;
  text-transform: uppercase;
  white-space: nowrap;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .spot-list .spot-staff__stasta {
    font-size: min(1.1vw, 11px);
  }
}
@media screen and (max-width: 767px) {
  .spot-list .spot-staff__stasta {
    font-size: 2.1333333333vw;
  }
}
.spot .totop {
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .spot .totop {
    width: min(2.5vw, 25px);
    position: absolute;
    bottom: min(27.5vw, 275px);
    right: 35px;
  }
}
@media screen and (max-width: 767px) {
  .spot .totop {
    width: 5.6vw;
    margin-right: 7.3333333333vw;
    margin-left: auto;
  }
}

/* .nav-btn
===================================================== */
.nav-btn {
  background-color: #F0EEE9;
  border: 1px solid #0D010B;
  position: absolute;
  cursor: pointer;
  position: fixed;
  z-index: 99;
  display: none;
}
@media screen and (min-width: 768px) {
  .nav-btn {
    width: min(4.2vw, 42px);
    height: min(3.7vw, 37px);
    top: 33px;
    right: 32px;
  }
}
@media screen and (max-width: 767px) {
  .nav-btn {
    width: 14vw;
    height: 12.6666666667vw;
    top: 8vw;
    right: 5.3333333333vw;
  }
}
.nav-btn__inner {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .nav-btn__inner {
    gap: 4px 0;
  }
}
@media screen and (max-width: 767px) {
  .nav-btn__inner {
    gap: 1.6vw 0;
  }
}
.nav-btn__line {
  height: 1px;
  background-color: #0D010B;
}
@media screen and (min-width: 768px) {
  .nav-btn__line {
    width: 19px;
  }
}
@media screen and (max-width: 767px) {
  .nav-btn__line {
    width: 7.2vw;
  }
}

/* .nav
===================================================== */
.nav {
  background-color: #F0EEE9;
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 999;
  transition: transform 0.5s;
  transform: translateX(110%);
  display: none;
}
@media screen and (min-width: 768px) {
  .nav {
    height: 100vh;
    width: min(52vw, 520px);
    padding-left: min(7.1vw, 71px);
  }
}
@media screen and (max-width: 767px) {
  .nav {
    width: 100%;
    height: 100vh;
  }
}
.nav.show {
  transform: translateX(0);
}
.nav__inner {
  position: relative;
}
@media screen and (min-width: 768px) {
  .nav__inner {
    width: 100%;
    padding: min(6.2vw, 62px) 0;
    padding-right: min(10.3vw, 103px);
  }
}
@media screen and (max-width: 767px) {
  .nav__inner {
    width: 89.3333333333vw;
    padding-top: 28vw;
    padding-bottom: 28vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.nav .nav-close {
  border: 1px solid #0D010B;
  position: absolute;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .nav .nav-close {
    background-color: #F0EEE9;
    width: min(4.2vw, 42px);
    height: min(3.7vw, 37px);
    top: 33px;
    right: 32px;
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-close {
    background-color: #E3E3DD;
    width: 14vw;
    height: 12.6666666667vw;
    top: 8vw;
    right: 2.6666666667vw;
  }
}
.nav .nav-close__line {
  position: absolute;
  height: 1px;
  top: 50%;
  left: 50%;
  background: #0D010B;
  transform-origin: center;
}
@media screen and (min-width: 768px) {
  .nav .nav-close__line {
    width: min(2.3vw, 23px);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-close__line {
    width: 7.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-close__line:first-child {
    transform: translate(-50%, -50%) rotate(-32deg);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-close__line:first-child {
    transform: translate(-50%, -50%) rotate(-37deg);
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-close__line:last-child {
    transform: translate(-50%, -50%) rotate(32deg);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-close__line:last-child {
    transform: translate(-50%, -50%) rotate(37deg);
  }
}
.nav .nav-list__item:not(:last-child) {
  border-bottom: 1px solid #0D010B;
}
@media screen and (min-width: 768px) {
  .nav .nav-list__item:not(:last-child) {
    padding-bottom: min(4.7vw, 47px);
    margin-bottom: min(4.7vw, 47px);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-list__item:not(:last-child) {
    padding-bottom: 12vw;
    margin-bottom: 12vw;
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-list__item:nth-child(1) .nav-list-text__text-g {
    transform: translateX(max(-0.3vw, -3px));
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-list__item:nth-child(2) .nav-list-text__text-g {
    transform: translateX(max(-0.1vw, -1px));
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-list__item:nth-child(3) .nav-list-text__text-b {
    margin-bottom: min(0.3vw, 3px);
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-list__item:nth-child(3) .nav-list-text__text-g {
    transform: translateX(0);
    font-size: min(1.7vw, 17px);
    line-height: 1.1304347826;
  }
}
.nav .nav-list__link {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .nav .nav-list__link {
    padding-left: min(2.3vw, 23px);
    padding-right: min(2.1vw, 21px);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-list__link {
    padding-left: 4vw;
    padding-right: 6.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-list__link:hover .nav-list__img {
    opacity: 0.55;
  }
}
.nav .nav-list-text__num {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .nav .nav-list-text__num {
    margin-bottom: min(2.2vw, 22px);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-list-text__num {
    font-size: 2.5333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.nav .nav-list-text__text-b {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 500;
  font-style: normal;
  display: block;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .nav .nav-list-text__text-b {
    font-size: min(1.2vw, 12px);
    margin-bottom: min(0.4vw, 4px);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-list-text__text-b {
    font-size: 2.5333333333vw;
  }
}
.nav .nav-list-text__text-g {
  font-family: "dnp-shuei-gothic-gin-std", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #3A7258;
  display: block;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .nav .nav-list-text__text-g {
    font-size: min(2.3vw, 23px);
    line-height: 1.1304347826;
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-list-text__text-g {
    font-size: 6vw;
    line-height: 1.3157894737;
  }
}
@media screen and (min-width: 768px) {
  .nav .nav-list__img {
    width: min(11vw, 110px);
  }
}
@media screen and (max-width: 767px) {
  .nav .nav-list__img {
    width: 28.4vw;
  }
}

/* .load
===================================================== */
.load {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 999999;
  background-color: #F0EEE9;
  opacity: 1;
  transition: opacity 0.5s;
}
.load.on {
  opacity: 0;
}

/* animation
===================================================== */
.fadein {
  opacity: 0;
  transition: opacity 0.6s;
}
.fadein.on {
  opacity: 1;
}

.fadeup {
  transform: translateY(15px);
  opacity: 0;
  transition: all 0.6s;
}
.fadeup.on {
  transform: translateY(0);
  opacity: 1;
}

.fadedown {
  transform: translateY(-15px);
  opacity: 0;
  transition: all 0.6s;
}
.fadedown.on {
  transform: translateY(0);
  opacity: 1;
}

/* slick
===================================================== */
.slick {
  pointer-events: none;
}

/* オトナフッター上書き
===================================================== */
@media screen and (min-width: 768px) {
  .otona_footer div.inner {
    max-width: 842px !important;
    width: 100% !important;
  }
}/*# sourceMappingURL=style.css.map */