@charset "UTF-8";
/* setting */
/*
	サイト全体で使うフォントの指定
*/
/* メイン・サブカラー */
/* リンク色 */
/*
	サイト全体で使うフォントの指定
*/
/*
	サイト全体で使うフォントの指定
*/
/* ページのwidth */
/* ブレイクポイントのアイテムheight */
/* tool */
/*
	サイト全体で使うmixinの指定
*/
/* base */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: yu-gothic-pr6n, sans-serif;
  font-style: normal; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*
	サイトの基本となるCSS
*/
/* 余白のリセット */
body, div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
object, iframe, pre, code, p, blockquote,
form, fieldset, legend,
table, th, td, caption, tbody, tfoot, thead {
  margin: 0;
  padding: 0;
}

/* body */
html {
  font-family: yu-gothic-pr6n, sans-serif;
  font-style: normal; /* 1 */
  font-size: 15px;
}

body {
  background-color: #FAFAF7;
  text-align: center;
  line-height: 2;
  word-break: break-all;
  -webkit-text-size-adjust: 100%;
  -ms-scroll-chaining: none;
      overscroll-behavior: none;
  color: #484341;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 699px) {
  body.noscroll {
    overflow: hidden;
  }
}

main {
  overflow: hidden;
}
main.ec-layoutRole__main {
  padding-top: 130px;
}
@media (max-width: 699px) {
  main.ec-layoutRole__main {
    padding-top: 55px;
  }
}

.product_page main.ec-layoutRole__main {
  padding-top: 70px;
}
@media (max-width: 699px) {
  .product_page main.ec-layoutRole__main {
    padding-top: 55px;
  }
}

/* リンク色 */
a {
  color: #41342E;
}

a:hover, a:active {
  text-decoration: none;
  color: #41342E;
}

/* hover時の画像 */
a:hover img {
  border: none;
}

/* 画像 */
img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition: 0.4s ease-out;
  transition: 0.4s ease-out;
}

/* Clearfix */
.clearfix:after, .global-nav-list:after, .header:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.clearfix, .global-nav-list, .header {
  display: inline-block;
}

/* Hides from IE Mac */
* html .clearfix, * html .global-nav-list, * html .header {
  height: 1%;
}

.clearfix, .global-nav-list, .header {
  display: block;
}

/* End Hack */
.--pc {
  display: block;
}
@media (max-width: 768px) {
  .--pc {
    display: none;
  }
}

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

body.active {
  height: 100%;
  overflow: hidden;
}

/* layout */
/*
	サイト全体のレイアウトグリッドの指定
*/
/* ヘッダー */
.layout-header {
  width: 100%;
}

/* フッター */
.layout-footer {
  width: 100%;
}

.layout-footer-half {
  width: 460px;
  float: left;
}

/* ページ幅 */
.layout-container {
  width: 1148px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

/* メインカラム */
.layout-main-column {
  width: 710px;
  float: right;
}

/* サブカラム */
.layout-sub-column {
  width: 230px;
  float: left;
}

/* 汎用レイアウト */
.contents {
  padding-top: 10px;
}

.layout-section {
  margin-bottom: 80px;
}

.layout-half {
  width: 49%;
}

.layout-1-third {
  width: 32%;
}

.layout-2-third {
  width: 66%;
}

.layout-3-col {
  float: left;
  width: 32%;
  margin-right: 2%;
}
.layout-3-col:nth-child(3n) {
  margin-right: 0;
}
.layout-3-col:nth-child(3n+1) {
  clear: both;
}

.layout-4-col {
  float: left;
  width: 24%;
  margin-right: 1%;
}
.layout-4-col:nth-child(4n) {
  margin-right: 0;
}
.layout-4-col:nth-child(4n+1) {
  clear: both;
}

/*
	ヘッダーの指定
*/
/* ヘッダー外枠 */
.header {
  position: relative;
  background-color: #FAFAF7;
  width: 100% !important;
  padding: 0 8%;
  border-bottom: 1px solid #E3E5E4;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: fixed;
  text-align: left;
  z-index: 100;
}
@media (max-width: 768px) {
  .header {
    padding: 0 15px;
  }
}
.header.active {
  background: rgba(255, 255, 255, 0.9);
}
.header a {
  text-decoration: none;
}

.header-btn {
  background: url(../img/common/header/bgi---btn.svg) center center no-repeat;
  width: 70px;
  height: 30px;
  position: absolute;
  right: 19px;
  top: 20px;
  border: none;
}

/* ヘッダーメイン部分 */
.header-main {
  padding: 23px 0 20px;
  position: relative;
  max-width: 1148px;
  margin: 0 auto;
}

/* ヘッダーロゴ */
.header-site-name {
  padding-left: 30px;
}
@media (max-width: 768px) {
  .header-site-name {
    padding-left: 0;
  }
}
.header-site-name a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  display: block;
  vertical-align: top;
  line-height: 1px;
}
.header-site-name img {
  vertical-align: top;
}

.hamburger {
  display: none;
  position: fixed;
  top: 24.5px;
  left: 25px;
  width: 17px;
  height: 10px;
  z-index: 101;
  background-color: #FAFAF7;
}
@media (max-width: 768px) {
  .hamburger {
    display: block;
  }
}
.hamburger span {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #41342E;
  -webkit-transition: 0.15s ease-in-out;
  transition: 0.15s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 0;
}
.hamburger span:nth-child(2) {
  top: 10px;
}

.hamburger {
  padding: 0;
  border: none;
}

.hamburger:hover {
  cursor: pointer;
}

/* ナビ開いてる時のボタン */
.hamburger.active {
  background: none;
  z-index: 101;
}

.hamburger.active span:nth-child(1) {
  -webkit-transform: translateY(5px) rotate(45deg);
          transform: translateY(5px) rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  -webkit-transform: translateY(-5px) rotate(-45deg);
          transform: translateY(-5px) rotate(-45deg);
}

.globalMenu-bg {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -webkit-transform: translateY(1.5%);
          transform: translateY(1.5%);
  background-color: #FAFAF7;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  width: 100vw;
  height: 100%;
  overflow: scroll;
  z-index: -1;
  opacity: 0;
}
.globalMenu-bg .globalMenu {
  width: calc(100% - 40px);
  height: 100%;
  padding-top: 105px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
}
.globalMenu-bg .globalMenu__ec {
  position: relative !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  gap: 45px;
  top: inherit !important;
  -webkit-transform: none !important;
          transform: none !important;
}
.globalMenu-bg .globalMenu__ec a {
  text-decoration: none;
  padding-left: 22px !important;
}
.globalMenu-bg .globalMenu__ec li {
  position: relative;
  display: block !important;
}
.globalMenu-bg .globalMenu__ec li::before {
  position: absolute;
  left: -22.5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 1px;
  height: 11.5px;
  background-color: #E3E5E4;
}
.globalMenu-bg .globalMenu__ec li:nth-child(n+2) {
  margin-right: 12px;
}
.globalMenu-bg .globalMenu__nav-list {
  margin-top: 40px;
  list-style: none;
  padding: 0 7%;
  padding-bottom: 35px;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__nav-item {
  border-bottom: 1px solid #E3E5E4;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__nav-item a {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: block;
  text-align: left;
  text-decoration: none;
  padding: 17px 0;
  font-size: 19px;
  font-weight: 500;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__ac-btn {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 19px;
  font-weight: 500;
  position: relative;
  width: 100%;
  background-color: transparent;
  cursor: pointer;
  outline: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 17px 0;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__ac-btn::before {
  position: absolute;
  top: 50%;
  right: 3px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 11px;
  height: 1px;
  background-color: #41342E;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__ac-btn::after {
  position: absolute;
  top: 50%;
  right: 3px;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  content: "";
  width: 11px;
  height: 1px;
  opacity: 1;
  background-color: #41342E;
  -webkit-transition: 0.15s all ease;
  transition: 0.15s all ease;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__ac-btn.is-open::after {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__ac-body {
  border: transparent;
  line-height: 0;
  opacity: 0;
  height: 0;
  -webkit-transition: 0.25s all ease;
  transition: 0.25s all ease;
  pointer-events: none;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__ac-body.is-open {
  line-height: 2.14;
  opacity: 1;
  height: auto;
  pointer-events: all;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav {
  list-style: none;
  padding-bottom: 17px;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav a {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: block;
  text-align: left;
  text-decoration: none;
  padding: 7px 0;
  font-size: 16.5px;
  font-weight: 400;
  padding-left: 32px;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li {
  position: relative;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li::before {
  position: absolute;
  left: 10px;
  top: 52%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 6px;
  height: 6px;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li:nth-child(2)::before {
  background-color: #B7041A;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li:nth-child(3)::before {
  background-color: #C6C497;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li:nth-child(4)::before {
  background-color: #1DC6BF;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li:nth-child(5)::before {
  background-color: #FC81A2;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li:nth-child(6)::before {
  background-color: #FD8800;
}
.globalMenu-bg .globalMenu__nav-list .globalMenu__child-nav li:nth-child(7)::before {
  background-color: #D7F7EC;
}

.globalMenu-bg.active {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  z-index: 99;
}

/*
	フッターの指定
*/
/* フッター外枠 */
footer {
  clear: both;
  display: block;
  position: relative;
  text-align: left;
}

.ec-layoutRole__footer {
  margin-top: 180px;
}
@media (max-width: 768px) {
  .ec-layoutRole__footer {
    margin-top: 55px;
  }
}

.footer-photo {
  background: url(../img/common/footer/pic--01.jpg) center center no-repeat;
  background-size: cover;
  height: 405px;
  margin-bottom: 98px;
}

.footer-bg {
  background: url(../img/common/footer/pic--sitename.svg) calc(50% - 290px) 68px no-repeat, url(../img/common/footer/bgi--01.png) calc(50% - 520px) 178px no-repeat;
  background-size: 472px auto, 189px auto;
  mix-blend-mode: multiply;
  max-width: 1033px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .footer-bg {
    width: calc(100% - 40px);
    background: none;
  }
}
.footer-bg .footer__logo {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  padding-right: 15px;
  margin: 0 auto 134px;
}
@media (max-width: 768px) {
  .footer-bg .footer__logo {
    padding-right: 0;
    margin-bottom: 227px;
  }
  .footer-bg .footer__logo::before {
    position: absolute;
    top: 120px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    content: "";
    aspect-ratio: 394/256;
    width: 95vw;
    max-width: 394px;
    background: url(./../img/common/logo_txt_sp.webp) center/contain no-repeat;
    mix-blend-mode: multiply;
  }
}

@media (min-width: 700px) {
  .footer-container {
    width: 100% !important;
    margin: 0 auto;
  }
}

.footer-about {
  border-top: 1px solid #42342E;
  padding-top: 12px;
  padding-bottom: 10px;
  margin-left: 450px;
  line-height: 1.6;
  letter-spacing: 0.52px;
  font-size: 0.81em;
}
@media (max-width: 768px) {
  .footer-about {
    margin-left: 0;
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 768px) {
  .footer-about p {
    letter-spacing: 0.04em;
    line-height: 1.23;
  }
}
.footer-about strong {
  display: block;
  margin-bottom: 5px;
  letter-spacing: 1px;
  font-size: 0.88rem;
}
.footer-data {
  background: url(../img/common/footer/pic--grass.png) right 19px bottom 8px no-repeat;
  background-size: 70px auto;
  border-top: 1px solid #42342E;
  border-bottom: 1px solid #42342E;
  letter-spacing: 0.05em;
  font-size: 0.81rem;
}
.footer-data a {
  text-decoration: none;
  color: #484341;
}
@media (min-width: 700px) {
  .footer-data {
    height: 92px;
    position: relative;
  }
}
.footer-data.--sp {
  background: none;
}
.footer-data.--sp .footer-data__info-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
  border-bottom: 1px solid #42342E;
}
.footer-data.--sp .footer-data__info-list:last-of-type {
  border-bottom: none;
}
.footer-data.--sp .footer-data__info-list .footer-data__info-item {
  width: 100%;
  text-align: center;
  padding: 10px 0;
  border-right: 1px solid #42342E;
}
.footer-data.--sp .footer-data__info-list .footer-data__info-item:last-of-type {
  border-right: none;
}
.footer-data.--sp .footer-data__info-list .footer-data__info-item.--tel {
  letter-spacing: 0.05em;
}
.footer-data.--sp .footer-data__info-list .footer-data__info-item.--glass {
  width: 74px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.footer-data.--sp .footer-data__info-list .footer-data__info-item.--glass img {
  margin: 0 auto;
  width: 35px;
  height: 17px;
}
.footer-data.--sp .footer-data__info-list.--address li {
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer-data.--sp .footer-data__info-list.--address li span {
  display: inline-block;
  padding: 0 15px;
  line-height: 1.23;
}
.footer-data.--sp .footer-data__info-list.--address li a {
  width: 60px;
}
.footer-data.--sp .footer-data__info-list.--address li a img {
  margin: 0 auto;
  width: 13.47px;
  height: 19.2px;
}

.footer-addres {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (min-width: 700px) {
  .footer-addres li {
    border-right: 1px solid #42342E;
    border-bottom: 1px solid #42342E;
    padding: 10px 0 0;
    height: 46px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
  }
  .footer-addres li:nth-child(1) {
    width: 147px;
  }
  .footer-addres li:nth-child(2) {
    width: 509px;
  }
  .footer-addres li:nth-child(2) a {
    display: inline-block;
    margin-left: 14px;
  }
  .footer-addres li:nth-child(2) a img {
    vertical-align: middle;
  }
  .footer-addres li:nth-child(3) {
    background: url(../img/common/footer/bgi--time.png) right 19px bottom 11px no-repeat;
    background-size: 88px auto;
    width: 179px;
  }
  .footer-addres li:nth-child(4) {
    width: 198px;
    border-right: 0;
  }
}

.footer-sns {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (min-width: 700px) {
  .footer-sns {
    position: absolute;
    top: 46px;
    left: 0;
  }
  .footer-sns li {
    border-right: 1px solid #42342E;
    height: 46px;
    padding-top: 12px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
  }
  .footer-sns li:nth-child(1) {
    width: 147px;
  }
  .footer-sns li:nth-child(2) {
    width: 178px;
  }
  .footer-sns li:nth-child(3) {
    width: 178px;
  }
}

.footer-addres__line {
  background: url(../img/common/footer/ico--line.svg) left center no-repeat;
  padding-left: 29px;
  padding-top: 2px;
  padding-bottom: 2px;
}

.footer-addres__insta {
  background: url(../img/common/footer/ico--insta.svg) left center no-repeat;
  padding-left: 25px;
  padding-top: 2px;
  padding-bottom: 2px;
}

.footer-addres__fb {
  background: url(../img/common/footer/ico--fb.svg) left center no-repeat;
  padding-left: 27px;
  padding-top: 2px;
  padding-bottom: 2px;
}

.footer-tel {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (min-width: 700px) {
  .footer-tel {
    position: absolute;
    top: 46px;
    left: 501px;
  }
  .footer-tel li {
    border-right: 1px solid #42342E;
    width: 210px;
    height: 46px;
    padding-top: 12px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
  }
}

/* フッターナビ */
.footer-nav ul {
  list-style: none;
  margin: 10px 0;
}
.footer-nav ul li {
  display: inline-block;
  margin-right: 20px;
  padding-right: 20px;
  border-right: 1px solid #333;
}
.footer-nav ul li.home {
  border-left: 1px solid #333;
  padding-left: 20px;
}
.footer-nav ul li a {
  color: #333;
}

/* フッター　会社情報 */
.footer-address {
  padding: 10px 0;
}

address {
  font-style: normal;
}

/* コピーライト */
.copy {
  display: block;
  width: 176.33px;
  height: 12.47px;
  padding: 18px 0 56px;
  margin: 0 auto;
  text-align: center;
  font-size: 0.81rem;
}
@media (max-width: 768px) {
  .copy {
    padding-bottom: 40px;
  }
}

/* module */
/*
	サイト全体のナビゲーション設定
*/
/* グローバルナビの設定 */
.global-nav-list {
  list-style: none;
}
@media (max-width: 768px) {
  .global-nav-list {
    display: none;
  }
}
.global-nav-list li {
  display: block;
  position: relative;
}
.global-nav-list li a {
  color: #484341;
  display: block;
  height: 42.73px;
}
@media (min-width: 700px) {
  .global-nav-list {
    position: absolute;
    top: 22px;
    left: 0;
  }
  .global-nav-list li {
    float: left;
    margin-right: 17px;
    font-size: 0.81rem;
  }
  .global-nav-list li.drop::before {
    content: " ";
    background: #484341;
    width: 8px;
    height: 1px;
    position: absolute;
    bottom: 15px;
    left: calc(50% - 4px);
    -webkit-transition-duration: 0.4s;
            transition-duration: 0.4s;
  }
  .global-nav-list li.drop:hover::before {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}

.global-sub, .globalMenu-bg .globalMenu__ec {
  list-style: none;
  position: absolute;
  top: 18px;
  right: 0;
}
@media (max-width: 768px) {
  .global-sub, .globalMenu-bg .globalMenu__ec {
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.global-sub li, .globalMenu-bg .globalMenu__ec li {
  display: inline-block;
  line-height: 1;
  font-size: 0.88rem;
  margin-right: 30px;
  position: relative;
  /*&:nth-child(1) {
  	margin-right: 65px;
  	position: relative;
  	@include medium {
  		margin-right: 10px;
  	}
  	&::before {
  		content: " ";
  		background: #e3e5e4;
  		width: 1px;
  		height: 11px;
  		display: block;
  		position: absolute;
  		top: 0;
  		right: -35px;
  		@include medium {
  			display: none;
  		}
  	}
  }
  &:nth-child(2) {
  	@include medium {
  		margin-right: 8px;
  	}
  }*/
}
@media (max-width: 768px) {
  .global-sub li, .globalMenu-bg .globalMenu__ec li {
    margin-right: 10px;
  }
}
.global-sub li::before, .globalMenu-bg .globalMenu__ec li::before {
  content: " ";
  background: #e3e5e4;
  width: 1px;
  height: 11px;
  display: block;
  position: absolute;
  top: 0;
  right: -18px;
}
@media (max-width: 768px) {
  .global-sub li::before, .globalMenu-bg .globalMenu__ec li::before {
    display: none;
  }
}
@media (max-width: 768px) {
  .global-sub li, .globalMenu-bg .globalMenu__ec li {
    font-size: 14px;
  }
}
.global-sub li a, .globalMenu-bg .globalMenu__ec li a {
  color: #484341;
}
.global-sub li:last-of-type, .globalMenu-bg .globalMenu__ec li:last-of-type {
  margin-right: 0;
}
.global-sub li:last-of-type::before, .globalMenu-bg .globalMenu__ec li:last-of-type::before {
  content: none;
}
.global-sub li .global-sub__cart, .globalMenu-bg .globalMenu__ec li .global-sub__cart, .globalMenu-bg .globalMenu__ec li .globalMenu__ec-cart {
  background: url(../img/common/header/ico--cart.svg) left 3px no-repeat;
  padding-left: 20px;
}
.global-sub li .global-sub__mypage, .globalMenu-bg .globalMenu__ec li .global-sub__mypage, .globalMenu-bg .globalMenu__ec li .globalMenu__ec-mygape {
  background: url(../img/common/header/ico--mypage.svg) left 3px no-repeat;
  padding-left: 17px;
}
.global-sub li .global-sub__search, .globalMenu-bg .globalMenu__ec li .global-sub__search, .globalMenu-bg .globalMenu__ec li .globalMenu__ec-search {
  background: url(../img/common/header/ico--search.svg) left/contain no-repeat;
  padding-left: 20px;
  border: none;
}
.global-sub.--sp li a, .globalMenu-bg .--sp.globalMenu__ec li a {
  padding-left: 16px;
}
.global-sub.--sp li .global-sub__cart, .globalMenu-bg .--sp.globalMenu__ec li .global-sub__cart, .global-sub.--sp .globalMenu-bg .globalMenu__ec li .globalMenu__ec-cart, .globalMenu-bg .globalMenu__ec .global-sub.--sp li .globalMenu__ec-cart, .globalMenu-bg .--sp.globalMenu__ec li .globalMenu__ec-cart {
  background: url(../img/common/header/ico--cart.svg) left/contain no-repeat;
}
.global-sub.--sp li .global-sub__mypage, .globalMenu-bg .--sp.globalMenu__ec li .global-sub__mypage, .global-sub.--sp .globalMenu-bg .globalMenu__ec li .globalMenu__ec-mygape, .globalMenu-bg .globalMenu__ec .global-sub.--sp li .globalMenu__ec-mygape, .globalMenu-bg .--sp.globalMenu__ec li .globalMenu__ec-mygape {
  background: url(../img/common/header/ico--mypage.svg) left/contain no-repeat;
}
.global-sub.--sp li .global-sub__search, .globalMenu-bg .--sp.globalMenu__ec li .global-sub__search, .global-sub.--sp .globalMenu-bg .globalMenu__ec li .globalMenu__ec-search, .globalMenu-bg .globalMenu__ec .global-sub.--sp li .globalMenu__ec-search, .globalMenu-bg .--sp.globalMenu__ec li .globalMenu__ec-search {
  background: url(../img/common/header/ico--search.svg) left/contain no-repeat;
  padding-left: 7px;
}
.global-sub.--sp li:last-of-type a, .globalMenu-bg .--sp.globalMenu__ec li:last-of-type a {
  padding-left: 0;
}

.global-nav-list__child {
  -webkit-transform: scaleY(0);
          transform: scaleY(0); /*デフォルトでは非表示の状態にしておく*/
  -webkit-transform-origin: center top;
          transform-origin: center top; /*変形を適応する基準をtopとする*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s; /*表示の変化を0.3秒に指定*/
  width: 100vw;
  position: fixed;
  top: 66.73px;
  left: 0;
  padding: 45px 5.85% 45px 5.85%;
  background-color: #FAFAF7;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.global-nav-list__child dt {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 19px;
  font-weight: 500;
  max-width: 1146px;
  margin: 0 auto;
  margin-bottom: 20px;
}
.global-nav-list__child dd {
  max-width: 1146px;
  margin: 0 auto;
}
.global-nav-list__child .global-nav-list__child-item {
  position: relative;
  float: none;
  font-size: 16.5px;
  font-weight: 400;
  height: auto;
}
.global-nav-list__child .global-nav-list__child-item a {
  display: inline-block;
  height: 100%;
  padding: 10px 0;
  padding-left: 30px;
}
.global-nav-list__child .global-nav-list__child-item::before {
  position: absolute;
  left: 5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 6px;
  height: 1px;
}
.global-nav-list__child .global-nav-list__child-item[data-color=red]::before {
  background-color: #ED2424;
}
.global-nav-list__child .global-nav-list__child-item[data-color=white]::before {
  background-color: #9CDB14;
}
.global-nav-list__child .global-nav-list__child-item[data-color=spark]::before {
  background-color: #0ABAB5;
}
.global-nav-list__child .global-nav-list__child-item[data-color=rose]::before {
  background-color: #FF1D99;
}
.global-nav-list__child .global-nav-list__child-item[data-color=orange]::before {
  background-color: #FF8B01;
}

.drop:hover .global-nav-list__child {
  -webkit-transform: scaleY(1);
          transform: scaleY(1); /*Gナビメニューにホバーしたら表示*/
}

.drop {
  position: relative;
}

/* ローカルナビの設定 */
.side-nav {
  margin-bottom: 20px;
}
.side-nav .side-nav__title {
  background: #83300E;
  padding: 7px;
  font-size: 114%;
  color: #fff;
}
.side-nav .side-nav__list {
  list-style: none;
}
.side-nav .side-nav__list li {
  border-bottom: 1px solid #83300E;
}
.side-nav .side-nav__list li a {
  display: block;
  padding: 5px 5px 5px 5px;
}

/*
	サイト全体の見出しの設定
*/
/* ページタイトル */
.page-title {
  padding: 15px;
  margin-bottom: 20px;
  border-bottom: 3px solid #83300E;
  color: #83300E;
}

/* 見出し */
.title-lv1 {
  background: #EAE6D0;
  padding: 10px;
  margin-bottom: 15px;
  color: #83300E;
}

.title-lv2 {
  padding: 0 0 0 5px;
  border-left: 3px solid #83300E;
  margin-bottom: 5px;
  color: #83300E;
}

.title-lv3 {
  padding: 0 0 0 17px;
  margin-bottom: 5px;
  color: #83300E;
}

/* 汎用見出し */
.title-other-01 {
  background: #EAE6D0;
  padding: 3px 10px;
  margin-bottom: 5px;
  color: #83300E;
}

.title-other-02 {
  padding: 0px 10px;
  border-bottom: 1px dashed #83300E;
  margin-bottom: 5px;
  color: #83300E;
}

/*
	サイト全体のテーブルの設定
*/
/* テーブルの設定 */
.table-ptn--01 th {
  background: #EAE6D0;
  border: 1px solid #ABA073;
  padding: 5px 10px;
  color: #39330C;
}
.table-ptn--01 td {
  background: #fff;
  border: 1px solid #ABA073;
  padding: 5px 10px;
}

.table-ptn--02 th {
  background: #CCE4AE;
  border: 1px solid #ABA073;
  padding: 5px 10px;
  color: #39330C;
}
.table-ptn--02 td {
  background: #fff;
  border: 1px solid #ABA073;
  padding: 5px 10px;
}

.table-ptn--03 th {
  border-bottom: 1px dashed #ABA073;
  padding: 10px;
  font-weight: bold;
}
.table-ptn--03 td {
  border-bottom: 1px dashed #ABA073;
  padding: 10px;
}

/*
	サイト全体のリンク・ボタンの設定
*/
/* ボタンの設定 */
.btn {
  display: inline-block;
  padding: 8px 18px;
  border-radius: 3px;
  -webkit-box-shadow: 0px 5px 3px -3px rgba(0, 0, 0, 0.6);
          box-shadow: 0px 5px 3px -3px rgba(0, 0, 0, 0.6);
}

.btn--full {
  display: block;
  padding: 12px 0;
  border-radius: 3px;
  text-align: center;
  display: block;
}

.btn--main {
  background: #83300E;
  color: #fff;
  text-decoration: none;
}

.btn--orange {
  background: #E7590D;
  color: #fff;
  text-decoration: none;
}

.btn--white {
  background: #fff;
  border: 2px solid #83300E;
  text-decoration: none;
  color: #83300E;
}

.btn--show {
  background: #42342E;
  color: #FFFFFF;
  width: 374px;
  height: 64px;
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
}
.btn--show::after {
  content: url(../img/common/ico--arrow-right.svg);
  margin-left: 24px;
}

/*
	サイト全体のリストの設定
*/
/* アイコン型リストの設定 */
.list-arrow {
  list-style: none;
}
.list-arrow li {
  background: url(../img/common/mark/ico--arrow-01.png) 2px 7px no-repeat;
  padding-left: 17px;
}

.list-circle {
  list-style: none;
}
.list-circle li {
  background: url(../img/common/mark/ico--circle-01.png) 4px 7px no-repeat;
  padding-left: 17px;
}

/* ボーダー型リストの設定 */
.list-border {
  list-style: none;
}
.list-border li {
  padding-left: 5px;
  border-bottom: 1px dashed #ABA073;
}

/* 番号型リストの設定 */
.list-numbering {
  list-style: decimal;
  padding-left: 25px;
}
.list-numbering li {
  display: list-item;
  margin-bottom: 10px;
}
.list-numbering li .list-numbering {
  list-style: lower-roman inside;
}
.list-numbering li .list-numbering li {
  text-indent: -1.2em;
}

/* 通常リストの設定 */
.list-nomal {
  padding-left: 20px;
}
.list-nomal li {
  margin-bottom: 5px;
}

/* リストマークなし */
.list-style-none {
  list-style: none;
}

/*
	サイト全体のリンク・ボタンの設定
*/
/* ブロックの設定 */
.box-sub--01 {
  border: 1px solid #ABA073;
  background: #fff;
  padding: 15px;
}

.box-sub--02 {
  border: 4px solid #FFC693;
  padding: 7px;
}

/*
	サイト全体のWordPress記事の設定
*/
/* ブログ・お知らせの設定 */
.article-nav {
  position: relative;
  margin-bottom: 80px;
}
.article-nav .article-nav {
  width: 30%;
}
.article-nav .article-nav:nth-child(1) {
  position: absolute;
  top: 0;
  left: 0;
}
.article-nav .article-nav:nth-child(2) {
  position: absolute;
  top: 0;
  right: 0;
}
.article-nav .article-nav:nth-child(3) {
  margin: 0 auto;
}

/* ページネーションの設定 */
.pagination {
  position: relative;
  padding: 0;
  clear: both;
  text-align: center;
  line-height: 40px;
  font-size: 12px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 55px;
}
.pagination ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.pagination span, .pagination a {
  display: inline-block;
  width: auto;
  margin: 0px 10px;
  text-align: center;
  text-decoration: none;
  font-size: 1.2rem;
  font-weight: 100;
}
.pagination li.active a {
  opacity: 0.3;
}
.pagination .pagenation__item-first a,
.pagination .pagenation__item-last a,
.pagination .pagenation__item-previous a,
.pagination .pagenation__item-next a {
  width: 50px;
  height: 50px;
  background-color: #E8E8E8;
  border-radius: 8px;
}
.pagination .pagenation__item-first a span,
.pagination .pagenation__item-last a span,
.pagination .pagenation__item-previous a span,
.pagination .pagenation__item-next a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
}
@media (max-width: 699px) {
  .pagination {
    padding: 0px 20px;
  }
}

/*
	サイト全体のアイテムの設定
*/
.ec-layoutRole .ec-layoutRole__contents {
  max-width: 1366px !important;
}

img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

p {
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.12em;
}

picture {
  display: block;
}

.cmn-sec__inner {
  padding: 0 110px;
  margin: 0 auto;
  max-width: 1366px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 768px) {
  .cmn-sec__inner {
    padding: 0 20px;
  }
}

.cmn-sec-title {
  text-align: left;
  border-bottom: 4px solid #484341;
}
.cmn-sec-title__link {
  position: relative;
  display: block;
  padding-bottom: 10px;
  height: 100%;
  text-decoration: none;
  color: #484341;
}
.cmn-sec-title__link::after {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 29.1px;
  height: 9.09px;
  background: url(./../img/common/arrow--dash.svg) center/contain no-repeat;
}
.cmn-sec-title h2 {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  position: relative;
  font-size: 32px;
  font-weight: 600;
  line-height: 1;
}

.cmn-label-title {
  position: relative;
  padding-top: 20px;
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.cmn-label-title .--ja {
  line-height: 1.4;
  letter-spacing: 0.3em;
}
@media (max-width: 768px) {
  .cmn-label-title .--ja {
    letter-spacing: 0.1em;
  }
}
.cmn-label-title .--en {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  font-weight: 400;
}
.cmn-label-title img {
  width: 63.8px;
  height: 24.62px;
  margin: 0 auto;
  margin-top: 20px;
}
.cmn-label-title::before {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  content: "";
  width: 61px;
  height: 5px;
  background-color: #F6387D;
}
.cmn-label-title.--lv3 .--en {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.cmn-label-title.--lv3 .--ja {
  margin-top: 5px;
}
.cmn-label-title.--lv3 img {
  width: 74.02px;
  height: 28.26px;
  margin: 0 auto;
}
.cmn-label-title.--lv3::before {
  display: none;
}

.cmn-sec-catch {
  position: relative;
  text-align: left;
}
.cmn-sec-catch strong {
  display: block;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.5em;
  font-size: 17px;
}
@media (max-width: 768px) {
  .cmn-sec-catch strong {
    letter-spacing: 0.4em;
  }
}
.cmn-sec-catch p {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  letter-spacing: normal;
  line-height: 1.33;
  margin-top: 10px;
}

.top-main__inner {
  position: relative;
  width: 100%;
  max-width: 1366px;
  margin: 0 auto;
  height: 1284px;
}
.top-main__logo {
  position: absolute;
  top: 66px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  z-index: 2;
  width: 175.2px;
  height: 134.87px;
}
.top-main__catch {
  position: absolute;
  top: 240px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 692.42px;
  height: 445.09px;
  mix-blend-mode: multiply;
  z-index: 1;
}
@media (max-width: 768px) {
  .top-main__catch {
    width: 385px;
    height: 199px;
    position: absolute;
    top: 440px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.top-main__title {
  width: 184.25px;
  height: 19.12px;
  margin: 0 auto;
  margin-bottom: 8px;
}
.top-main__title-cont {
  position: absolute;
  top: 540px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
.top-main__title-cont > p {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  text-align: center;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: 0.03em;
}
@media (max-width: 768px) {
  .top-main__title-cont > p {
    white-space: nowrap;
    font-size: 12px;
  }
}
.top-main__card-box {
  position: absolute;
}
.top-main__card-box > picture {
  position: relative;
  border-radius: 11px;
}
.top-main__card-box > picture::before {
  position: absolute;
  content: "";
  width: 60px;
  height: 12px;
}
@media (max-width: 768px) {
  .top-main__card-box > picture::before {
    width: 40px;
    height: 7.88px;
  }
}
.top-main__card-box[data-color=spark] {
  right: 0;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=spark] {
    top: 55px;
    right: -150px;
  }
}
.top-main__card-box[data-color=spark] > picture {
  width: 761px;
  height: 280px;
  z-index: 0;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=spark] > picture {
    width: 380px;
    height: 102px;
  }
}
.top-main__card-box[data-color=spark] > picture > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-main__card-box[data-color=spark] > picture::before {
  right: 55px;
  bottom: -9px;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  background: url(./../img/common/color-baner_spark.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=spark] > picture::before {
    right: inherit;
    left: 160px;
  }
}
.top-main__card-box[data-color=red] {
  top: 0;
  left: 0;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=red] {
    top: 44px;
    left: -82px;
  }
}
.top-main__card-box[data-color=red] > picture {
  /*width: 275px;
  height: 380px;
  width: 480px;
  height: 502px;*/
  width: 410px;
  height: 500px;
  z-index: 0;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=red] > picture {
    width: 194px;
    height: 269px;
  }
}
.top-main__card-box[data-color=red] > picture > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-main__card-box[data-color=red] > picture::before {
  right: 134px;
  bottom: 70px;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  background: url(./../img/common/color-baner_red.svg) center/contain no-repeat;
}
.top-main__card-box[data-color=red] > picture::after {
  position: absolute;
  right: 22px;
  bottom: 165px;
  content: "";
  width: 132.37px;
  height: 231.56px;
  background: url(./../img/common/top/main_card02_txt.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=red] > picture::after {
    width: 64.5px;
    height: 113px;
    bottom: 15px;
    right: -52px;
  }
}
.top-main__card-box[data-color=rose] {
  top: 338px;
  right: 0;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=rose] {
    top: inherit;
    right: -20px;
    bottom: 300px;
  }
}
.top-main__card-box[data-color=rose] > picture {
  width: 267px;
  height: 480px;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=rose] > picture {
    width: 126.8px;
    height: 216.59px;
  }
}
.top-main__card-box[data-color=rose] > picture::before {
  left: 0;
  bottom: -9px;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  background: url(./../img/common/color-baner_rose.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=rose] > picture::before {
    top: 17px;
    left: -34px;
    bottom: inherit;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
.top-main__card-box[data-color=rose] > picture::after {
  position: absolute;
  bottom: 25px;
  left: -145px;
  content: "";
  width: 226.8px;
  height: 118.47px;
  background: url(./../img/common/top/main_card03_txt.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=rose] > picture::after {
    bottom: -20px;
    left: -35px;
    width: 110px;
    height: 57px;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
}
.top-main__card-box[data-color=white] {
  top: 545px;
  left: 0;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=white] {
    top: 200px;
    left: inherit;
    right: -60px;
  }
}
.top-main__card-box[data-color=white] > picture {
  width: 370px;
  height: 495px;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=white] > picture {
    width: 205px;
    height: 139px;
  }
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=white] > picture > img {
    width: 205px;
    height: 139px;
    -o-object-position: top;
       object-position: top;
  }
}
.top-main__card-box[data-color=white] > picture::before {
  right: 0;
  bottom: -9px;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  background: url(./../img/common/color-baner_white.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=white] > picture::before {
    right: inherit;
    bottom: inherit;
    top: 17px;
    left: -30px;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
}
.top-main__card-box[data-color=orange] {
  top: 652px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=orange] {
    top: 630px;
    left: -20px;
    -webkit-transform: none;
            transform: none;
  }
}
.top-main__card-box[data-color=orange] > picture {
  width: 444px;
  height: 503px;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=orange] > picture {
    width: 216px;
    height: 244px;
  }
}
.top-main__card-box[data-color=orange] > picture > img {
  border-radius: 11px;
}
.top-main__card-box[data-color=orange] > picture::before {
  top: -9px;
  left: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  background: url(./../img/common/color-baner_orange.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=orange] > picture::before {
    top: inherit;
    left: 30px;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    bottom: -9px;
  }
}
.top-main__card-box[data-color=orange] > picture::after {
  position: absolute;
  bottom: -32px;
  right: -22px;
  content: "";
  width: 91.56px;
  height: 348.3px;
  background: url(./../img/common/top/main_card05_txt.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .top-main__card-box[data-color=orange] > picture::after {
    bottom: 140px;
    right: -110px;
    width: 141.54px;
    height: 64.12px;
    background: url(./../img/common/top/main_card05_txt_sp.svg) center/contain no-repeat;
  }
}

.top-catch {
  position: relative;
}
@media (max-width: 768px) {
  .top-catch {
    margin-top: -50px;
  }
}
.top-catch__inner {
  position: relative;
  padding-top: 328px;
  padding-bottom: 65px;
}
@media (max-width: 768px) {
  .top-catch__inner {
    padding: 0 20px;
  }
}
.top-catch__inner::after {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(calc(-50% - 13px), 0);
          transform: translate(calc(-50% - 13px), 0);
  content: "";
  width: 600px;
  height: 993px;
  background: url(./../img/common/top/catch_grape.webp) center/contain no-repeat;
  z-index: 1;
}
@media (max-width: 768px) {
  .top-catch__inner::after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(calc(-50% - 13px), -50%);
            transform: translate(calc(-50% - 13px), -50%);
    width: 300px;
    height: 496.5px;
  }
}
.top-catch__title-box {
  position: relative;
  display: inline-block;
  margin: 0 auto;
}
.top-catch__title-box::before {
  position: absolute;
  top: -95px;
  left: 125px;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  content: "";
  width: 319px;
  height: 241.12px;
  background: url(./../img/common/top/catch_free.svg) center/contain no-repeat;
  z-index: 2;
}
@media (max-width: 768px) {
  .top-catch__title-box::before {
    position: absolute;
    top: -80px;
    left: 125px;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    width: 255px;
    height: 193px;
  }
}
.top-catch__title-box::after {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: translate(calc(50% - 30px), calc(50% + 27px));
          transform: translate(calc(50% - 30px), calc(50% + 27px));
  content: "";
  width: 228px;
  height: 218px;
  background: url(./../img/common/top/catch_splash.webp) center/contain no-repeat;
  z-index: 2;
  mix-blend-mode: multiply;
}
.top-catch__title {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  width: 100%;
  font-weight: 500;
  font-size: 52px;
  letter-spacing: 0.075em;
  line-height: 1.2;
  z-index: 1;
}
@media (max-width: 768px) {
  .top-catch__title {
    text-align: left;
    display: block;
    letter-spacing: 0.05em;
  }
}
.top-catch__title span {
  display: block;
}
.top-catch__title span:nth-of-type(2) {
  padding-left: 220px;
}
@media (max-width: 768px) {
  .top-catch__title span:nth-of-type(2) {
    padding-left: 0;
  }
}
.top-catch__desc {
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  text-align: left;
  width: 592.19px;
  margin: 0 auto;
  margin-top: 100px;
}
@media (max-width: 768px) {
  .top-catch__desc {
    width: auto;
  }
}
.top-catch__desc p {
  font-size: 17px;
  line-height: 3.529;
}
@media (max-width: 768px) {
  .top-catch__desc p {
    line-height: 2.5;
  }
}

.top-main2 {
  height: 705px;
  width: 100%;
  background: url(../img/common/top/bgi--main.webp) bottom center/1254px auto no-repeat;
  position: relative;
}
.top-main2__catch01 {
  position: absolute;
  left: 110px;
  top: 60px;
  z-index: 1;
  width: 263px;
  height: auto;
}
.top-main2__catch02 {
  position: absolute;
  right: 110px;
  bottom: 0;
  z-index: 1;
  width: 743px;
  height: auto;
  max-width: 100%;
}
@media (max-width: 1255px) {
  .top-main2 {
    background-size: 100% auto;
  }
}
@media (max-width: 768px) {
  .top-main2 {
    height: 330px;
    background-position: center;
    background-size: 436px auto;
  }
  .top-main2__catch01 {
    top: 25px;
    left: 46px;
    width: 174px;
  }
  .top-main2__catch02 {
    right: 0;
    width: 80vw;
  }
}

.top-main2-gallery {
  margin-top: 20px;
}
.top-main2-gallery__item {
  width: 674px;
  margin: 0px 10px;
}
@media (max-width: 768px) {
  .top-main2-gallery {
    margin-top: 10px;
  }
  .top-main2-gallery__item {
    width: auto;
  }
}

.product-container .btn--show {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .product-container .btn--show {
    margin-bottom: 64px;
  }
}

.top-subs {
  position: relative;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  background: url(./../img/common/top/bg--cream-sand.webp) center/cover no-repeat;
}
@media (max-width: 768px) {
  .top-subs {
    margin-top: 35px;
  }
}
.top-subs__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 163px 110px 0px 110px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-subs__inner {
    padding: 35px 20px 0px 20px;
  }
}
.top-subs__title {
  max-width: 1148px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-subs__title {
    width: 90%;
    margin-left: 0;
    margin-right: auto;
  }
}
.top-subs__catch-box {
  text-align: left;
  width: 36.5%;
  margin-top: 165px;
  margin-left: auto;
  margin-right: 0;
}
@media (max-width: 768px) {
  .top-subs__catch-box {
    width: 90%;
    margin-top: 28px;
    margin-left: 0;
  }
}
.top-subs__catch-box strong {
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.5em;
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.top-subs__catch-box p {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  margin-top: 30px;
  line-height: 1.2;
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.top-subs__catch-box .--sp {
  margin-top: 45px;
}
.top-subs__baner-box {
  width: 100%;
  min-height: 307px;
  aspect-ratio: 1366/307;
  max-height: 450px;
  margin-top: 44.5px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .top-subs__baner-box img {
    -o-object-position: 60% 50%;
       object-position: 60% 50%;
    height: 100%;
  }
}
.top-subs__txt-img {
  position: absolute;
  top: 302px;
  left: -25px;
  width: 96.8%;
  max-width: 1091px;
  height: auto;
  aspect-ratio: 1112/651;
  mix-blend-mode: multiply;
}
.top-subs__txt-img img {
  -o-object-fit: contain;
     object-fit: contain;
}
.top-subs::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  width: 26.5px;
  height: calc(100% - 163px);
  background-color: #F6387D;
}
@media (max-width: 768px) {
  .top-subs::after {
    top: 0;
    height: 100%;
    width: 15.5px;
  }
}

.top-your-color__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 200px 0;
}
@media (max-width: 768px) {
  .top-your-color__inner {
    padding: 200px 0 150px 0;
  }
}
.top-your-color__baner-cont {
  position: relative;
  width: 49.85%;
  height: auto;
  max-width: 681.42px;
}
@media (max-width: 768px) {
  .top-your-color__baner-cont {
    width: 100%;
    max-width: none;
  }
}
.top-your-color__title {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  position: relative;
  display: block;
  text-align: left;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .top-your-color__title {
    padding-left: 37px;
  }
}
.top-your-color__title::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  -webkit-transform: translateX(-65%) translateY(-65%);
          transform: translateX(-65%) translateY(-65%);
  width: 64.65px;
  height: 44.5px;
  background: url(./../img/common/top/your-color-logo.png) center/cover no-repeat;
  mix-blend-mode: multiply;
}
@media (max-width: 768px) {
  .top-your-color__title::before {
    left: 55px;
    top: 9px;
  }
}
.top-your-color__baner {
  display: block;
  width: 100%;
  height: 141px;
  background-color: #F6387D;
}
.top-your-color__bottle-box {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(calc(-50% + 30px)) translateY(calc(-50% + 5px));
          transform: translateX(calc(-50% + 30px)) translateY(calc(-50% + 5px));
  width: 314px;
  height: 425px;
}

.top-product__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 163px 110px 0px 110px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-product__inner {
    padding: 150px 20px 0 20px;
  }
}
.top-product__title-link {
  position: relative;
}
.top-product__title-link .color-baner {
  position: absolute;
  top: 50%;
  right: 92px;
  -webkit-transform: translateY(calc(-50% - 5px));
          transform: translateY(calc(-50% - 5px));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16.3px;
}
@media (max-width: 768px) {
  .top-product__title-link .color-baner {
    top: inherit;
    left: 0;
    right: inherit;
    -webkit-transform: none;
            transform: none;
    bottom: -40px;
  }
}
.top-product__title-link .color-baner__item {
  width: 48.82px;
  height: 9.62px;
}
.top-product__catch-box {
  width: 51%;
  max-width: 586px;
  margin-top: 23px;
}
@media (max-width: 768px) {
  .top-product__catch-box {
    width: auto;
    margin-top: 68px;
  }
}
.top-product__catch-box strong {
  margin-top: 30px;
}
.top-product__wine-list {
  padding-top: 140px;
}
@media (max-width: 768px) {
  .top-product__wine-list {
    padding-top: 80px;
  }
}

.page-main__inner {
  margin-bottom: 60px;
  padding-bottom: 230px;
}
@media (max-width: 768px) {
  .page-main__inner {
    margin-top: 30px;
    padding-bottom: 60px;
  }
}

.wine__item:nth-child(n+2) {
  margin-top: 197px;
}
@media (max-width: 768px) {
  .wine__item:nth-child(n+2) {
    margin-top: 120px;
  }
}
.wine__color-baner {
  width: 73.12px;
  height: 14.4px;
}
@media (max-width: 768px) {
  .wine__color-baner {
    margin-bottom: 20px;
  }
}
.wine__gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 39.9px;
  margin-top: 23.5px;
}
@media (max-width: 768px) {
  .wine__gallery {
    margin-top: 0;
    gap: 0;
    display: block;
    width: calc(100% + 1px);
  }
}
.wine__grid {
  position: relative;
  display: -ms-grid;
  display: grid;
  gap: 0;
  -ms-grid-columns: 4fr 0 4.89fr 0 1.11fr;
  grid-template-columns: 4fr 4.89fr 1.11fr;
  -ms-grid-rows: 127px 0 86px;
  grid-template-rows: 127px 86px;
  margin-top: 64px;
  color: #484341;
  text-decoration: none;
}
.wine__grid > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.wine__grid > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
.wine__grid > *:nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.wine__grid > *:nth-child(4) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
.wine__grid > *:nth-child(5) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}
.wine__grid > *:nth-child(6) {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
}
@media (max-width: 768px) {
  .wine__grid {
    display: block;
    -ms-grid-columns: none;
    grid-template-columns: none;
    -ms-grid-rows: none;
    grid-template-rows: none;
    margin-top: -1px;
  }
  .wine__grid > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
.wine__grid-item {
  border: 1px solid #484341;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: -1px;
  margin-right: -1px;
}
.wine__grid-item:nth-of-type(1) {
  position: relative;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/3;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(1) {
    height: 133px;
    grid-row: auto;
  }
}
.wine__grid-item:nth-of-type(1) .--num {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  position: absolute;
  font-size: 40px;
  line-height: 1;
  top: 25px;
  left: 30px;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(1) .--num {
    top: 8px;
    left: 8px;
    font-size: 18px;
  }
}
.wine__grid-item:nth-of-type(1) .--title {
  position: absolute;
  mix-blend-mode: multiply;
}
.wine__grid-item:nth-of-type(1) img {
  position: absolute;
}
.wine__grid-item:nth-of-type(2) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  padding-left: 31px;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(2) {
    display: block;
    padding-left: 0;
    grid-row: auto;
  }
}
.wine__grid-item:nth-of-type(2) p {
  letter-spacing: 0.4em;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(2) p {
    padding: 16px 0;
    text-align: center;
    letter-spacing: 0.3em;
  }
}
.wine__grid-item:nth-of-type(3) {
  position: relative;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/3;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(3) {
    position: absolute;
    right: 0;
    grid-row: auto;
    border: 1px solid #484341;
    width: calc(27% + 2px);
    height: 119.77px !important;
  }
}
.wine__grid-item:nth-of-type(3) .--arrow {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-48%);
          transform: translateX(-50%) translateY(-48%);
  content: "";
  width: 40.18px;
  height: 6.47px;
  background: url(./../img/common/arrow--right.svg) center/contain no-repeat;
  z-index: 1;
}
.wine__grid-item:nth-of-type(4) {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(4) {
    display: block;
    width: 73%;
    height: 119.77px !important;
    margin-left: 0;
  }
}
.wine__grid-item:nth-of-type(4) p {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  width: 87.41%;
  font-size: 12px;
  line-height: 1.33;
  letter-spacing: 0.045em;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(4) p {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 20px;
  }
}
.wine__grid-item:nth-of-type(4) .--wave {
  position: absolute;
  content: "";
}
.wine__grid-item:nth-of-type(4) .--wave.--left {
  left: 13.2px;
  bottom: 8.4px;
  width: 140.69px;
  height: 54.28px;
  background: url(./../img/common/top/grid-wave-border-01.png) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(4) .--wave.--left {
    display: none;
  }
}
.wine__grid-item:nth-of-type(4) .--wave.--right {
  right: 101.9px;
  bottom: 16.2px;
  width: 121.86px;
  height: 46.53px;
  background: url(./../img/common/top/grid-wave-border-02.png) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__grid-item:nth-of-type(4) .--wave.--right {
    right: 40px;
  }
}
.wine__catch {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  text-align: center;
  font-size: 13px;
  margin-top: 12px;
  letter-spacing: 0.08em;
}
.wine__item.--red .wine__color-baner {
  background: url(./../img/common/color-baner_red.svg) center/contain no-repeat;
}
.wine__item.--red .--title {
  left: 50%;
  bottom: -55px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 298px;
  height: 209px;
  background: url(./../img/common/title_red.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__item.--red .--title {
    bottom: -30px;
  }
}
.wine__item.--red .--bg {
  position: absolute;
  top: 23.6px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 101px;
  height: 150px;
}
@media (max-width: 768px) {
  .wine__item.--red .--bg {
    width: 60.6px;
    height: 90px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.wine__item.--white .wine__color-baner {
  background: url(./../img/common/color-baner_white.svg) center/contain no-repeat;
}
.wine__item.--white .--title {
  right: 25.8px;
  bottom: -5px;
  width: 355px;
  height: 200px;
  background: url(./../img/common/title_white.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__item.--white .--title {
    right: inherit;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 284px;
    height: 160px;
  }
}
.wine__item.--white .--bg {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 115px;
  height: 172px;
}
@media (max-width: 768px) {
  .wine__item.--white .--bg {
    width: 92px;
    height: 137.6px;
    position: absolute;
    top: 35%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.wine__item.--spark .wine__color-baner {
  background: url(./../img/common/color-baner_spark.svg) center/contain no-repeat;
}
.wine__item.--spark .--title {
  right: -75px;
  bottom: -52px;
  width: 525px;
  height: 324px;
  background: url(./../img/common/title_sparkling.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__item.--spark .--title {
    position: absolute;
    top: 50%;
    left: 46%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 367.5px;
    height: 226.8px;
  }
}
.wine__item.--spark .--bg {
  position: absolute;
  top: 11.2px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 115px;
  height: 173px;
}
@media (max-width: 768px) {
  .wine__item.--spark .--bg {
    width: 80.5px;
    height: 121px;
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.wine__item.--rose .wine__color-baner {
  background: url(./../img/common/color-baner_rose.svg) center/contain no-repeat;
}
.wine__item.--rose .--title {
  left: 50%;
  top: 35px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 295px;
  height: 173px;
  background: url(./../img/common/title_rose.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__item.--rose .--title {
    top: 25px;
    width: 236px;
    height: 138.4px;
  }
}
.wine__item.--rose .--bg {
  position: absolute;
  top: 15.5px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 113px;
  height: 169px;
}
@media (max-width: 768px) {
  .wine__item.--rose .--bg {
    width: 80.5px;
    height: 121px;
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.wine__item.--orange .wine__color-baner {
  background: url(./../img/common/color-baner_orange.svg) center/contain no-repeat;
}
.wine__item.--orange .--title {
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-47%) translateY(-47.5%);
          transform: translateX(-47%) translateY(-47.5%);
  width: 400px;
  height: 253px;
  background: url(./../img/common/title_orange.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine__item.--orange .--title {
    width: 360px;
    height: 227.7px;
  }
}
.wine__item.--orange .--bg {
  position: absolute;
  top: 8.8px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 111px;
  height: 167px;
}
@media (max-width: 768px) {
  .wine__item.--orange .--bg {
    width: 80.5px;
    height: 121px;
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

.top-life__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 344px 110px 0px 110px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-life__inner {
    padding: 110px 20px 0 20px;
  }
}
.top-life__news-cont {
  margin-top: 22.5px;
}
.top-life .top-life__title {
  margin-bottom: 39px;
}

.top-card__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 163px 110px 356px 110px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-card__inner {
    height: 1000px;
    padding: 110px 20px 0 20px;
  }
}
.top-card__bg {
  position: absolute;
}
.top-card__bg.--purple {
  right: 290px;
  bottom: 550px;
  width: 467.95px;
  height: 381.55px;
  mix-blend-mode: multiply;
}
.top-card__bg.--orange {
  left: -180px;
  bottom: 0;
  width: 680.96px;
  height: 530.68px;
}
.top-card__shuffle-wrap {
  position: relative;
  height: 1058px;
  max-width: 1148px;
  margin: 0 49px;
}
.top-card__shuffle-item {
  position: absolute;
  width: 236.86px;
  height: 326.07px;
  padding: 15px;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  -webkit-box-shadow: 0 0 5px #eeeeeb;
          box-shadow: 0 0 5px #eeeeeb;
}
.top-card__shuffle-item > img {
  position: relative;
  display: block;
  width: 206px;
  height: 240px;
}
.top-card__shuffle-item:nth-of-type(1) {
  top: 0;
  left: 0;
}
.top-card__shuffle-item:nth-of-type(2) {
  top: 0;
  left: 262.46px;
  -webkit-transform: rotate(1deg);
          transform: rotate(1deg);
}
.top-card__shuffle-item:nth-of-type(3) {
  top: -35px;
  right: 278.46px;
  -webkit-transform: rotate(3deg);
          transform: rotate(3deg);
}
.top-card__shuffle-item:nth-of-type(3)::before {
  position: absolute;
  content: "";
  bottom: 33px;
  right: 33px;
  width: 144px;
  height: 53px;
  background: url(./../img/common/top/shuffle_card03_txt.svg) center/contain no-repeat;
  z-index: 1;
}
.top-card__shuffle-item:nth-of-type(4) {
  top: 0;
  right: 16px;
}
.top-card__shuffle-item:nth-of-type(5) {
  top: 365.07px;
  left: 0;
}
.top-card__shuffle-item:nth-of-type(6) {
  top: 360.97px;
  left: 262.46px;
}
.top-card__shuffle-item:nth-of-type(7) {
  top: 349.67px;
  right: 0;
}
.top-card__shuffle-item:nth-of-type(7)::before {
  position: absolute;
  content: "";
  bottom: 15px;
  left: 31px;
  -webkit-transform: rotate(-3deg);
          transform: rotate(-3deg);
  width: 145px;
  height: 53px;
  background: url(./../img/common/top/shuffle_card07_txt.svg) center/contain no-repeat;
  z-index: 1;
}
.top-card__shuffle-item:nth-of-type(8) {
  bottom: 0;
  left: -36px;
  -webkit-transform: rotate(-8deg);
          transform: rotate(-8deg);
}
.top-card__shuffle-item:nth-of-type(9) {
  bottom: 25.6px;
  left: 262.46px;
}
.top-card__shuffle-item:nth-of-type(9)::before {
  position: absolute;
  content: "";
  left: 24px;
  bottom: 6px;
  width: 190.72px;
  height: 99.46px;
  background: url(./../img/common/top/shuffle_card09_txt.svg) center/contain no-repeat;
  z-index: 1;
}
.top-card__shuffle-item:nth-of-type(10) {
  bottom: 4.6px;
  right: 286.46px;
}
.top-card__shuffle-item:nth-of-type(11) {
  bottom: 25.6px;
  right: 24px;
  -webkit-transform: rotate(1deg);
          transform: rotate(1deg);
}
.top-card__meet-wine {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 596.22px;
  height: 657.52px;
  margin: 0 auto;
}

.top-know__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0px 110px 356px 110px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-know__inner {
    padding: 110px 0px 110px 0px;
  }
}
.top-know__inner::before {
  position: absolute;
  bottom: 130px;
  right: -40px;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  content: "";
  width: 1006px;
  height: 945px;
  background: url(./../img/common/top/know_bg_dish.webp) center/contain no-repeat;
  z-index: -1;
}
@media (max-width: 768px) {
  .top-know__inner::before {
    width: 503px;
    height: 472.5px;
    bottom: -130px;
  }
}
@media (max-width: 768px) {
  .top-know__title {
    margin: 0 20px;
  }
}
.top-know__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 23px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  margin-top: 39.3px;
}
@media (max-width: 768px) {
  .top-know__list {
    overflow-x: scroll;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    white-space: nowrap;
    gap: 18px;
    padding: 0 20px;
  }
}
.top-know__item {
  text-align: left;
  width: 324px;
  height: 434px;
  padding: 21px;
  background-color: #f8f3ef;
}
@media (max-width: 768px) {
  .top-know__item {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 320px;
    height: 416px;
  }
}
.top-know__item .top-know__bg-wrap {
  position: relative;
  padding-top: 4px;
}
.top-know__item .top-know__bg-wrap::before {
  position: absolute;
  top: 0;
  left: -21px;
  content: "";
  width: calc(100% + 42px);
  height: calc(100% + 93px);
}
.top-know__link {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  position: relative;
  display: block;
  height: 100%;
  text-decoration: none;
  color: #000;
}
.top-know__link .--label {
  display: block;
  font-size: 12px;
  border-top: 1px solid #000;
}
.top-know__link .--title {
  position: relative;
  display: block;
  font-weight: 700;
  line-height: 50px;
}
.top-know__link .--title::before {
  position: absolute;
  content: "";
  width: 25px;
  height: 11px;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(./../img/common/arrow--dash.svg) center/contain no-repeat;
}
.top-know__grid {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  -ms-grid-rows: 39px 71px;
  grid-template-rows: 39px 71px;
  z-index: 1;
}
.top-know__grid > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.top-know__grid > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
.top-know__grid > *:nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.top-know__grid > *:nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
}
.top-know__grid-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-bottom: -1px;
}
.top-know__grid-item:nth-of-type(1) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/3;
  border-right: 1px solid #000;
}
.top-know__grid-item:nth-of-type(1) span {
  font-size: 12px;
  line-height: 39px;
}
.top-know__grid-item:nth-of-type(2) .--num {
  padding-left: 9px;
  font-size: 12px;
}
.top-know__grid-item:nth-of-type(3) .--menu {
  padding-left: 9px;
}
.top-know__grid-item:nth-of-type(3) .--menu span {
  display: block;
  font-size: 12px;
  line-height: 1.4;
}
.top-know__item[data-no="01"] .top-know__bg-wrap::before {
  background-color: #ff8b00;
}
.top-know__item[data-no="02"] .top-know__bg-wrap::before {
  background-color: #9cdb14;
}
.top-know__item[data-no="03"] .top-know__bg-wrap::before {
  background-color: #ed2424;
}
.top-know__item[data-no="04"] .top-know__bg-wrap::before {
  background-color: #0abab5;
}
.top-know__item[data-no="05"] .top-know__bg-wrap::before {
  background-color: #ff1d99;
}
.top-know__txt-box {
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.top-owner {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
}
.top-owner__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0px 110px 0 110px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-owner__inner {
    margin-top: 120px;
    padding: 110px 20px 0 20px;
  }
}
.top-owner__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 527px;
}
@media (max-width: 768px) {
  .top-owner__media {
    height: auto;
  }
}
.top-owner__txt-box {
  position: relative;
  text-align: justify;
  width: 35.43%;
  height: 100%;
}
@media (max-width: 768px) {
  .top-owner__txt-box {
    width: 100%;
  }
}
.top-owner__txt-box p {
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.075em;
}
.top-owner__name-box {
  font-weight: 700;
  line-height: 1;
  margin-top: 170px;
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  .top-owner__name-box {
    width: 349px;
    margin-top: 0;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 25px;
  }
}
.top-owner__name-box span {
  display: block;
  font-size: 14px;
  font-weight: 600;
}
.top-owner__name-box strong {
  font-size: 55px;
  font-weight: 600;
}
@media (max-width: 768px) {
  .top-owner__txt-sp {
    width: auto;
    margin-top: 30px;
    margin-left: auto;
    margin-right: 0;
  }
}
.top-owner__btn {
  position: absolute;
  bottom: 40px;
  right: 0;
  width: 29.1px;
  height: 9.09px;
}
.top-owner__img-box {
  position: absolute;
  top: 0;
  right: 0;
  width: 791px;
  height: 527px;
}
@media (max-width: 768px) {
  .top-owner__img-box {
    position: relative;
    right: inherit;
    width: 100%;
    height: auto;
    aspect-ratio: 791/527;
  }
}
.top-owner__gallery-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 344px;
  max-width: 1366px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .top-owner__gallery-wrap {
    display: none;
  }
}
.top-owner__gallery {
  position: absolute;
}
.top-owner__gallery:nth-of-type(1) {
  top: 23px;
  left: 66px;
  width: 259px;
  height: 172px;
}
.top-owner__gallery:nth-of-type(2) {
  top: 228px;
  left: 364px;
  width: 169px;
  height: 112px;
}
.top-owner__gallery:nth-of-type(3) {
  top: 79px;
  right: 430px;
  width: 259px;
  height: 172px;
}
.top-owner__gallery:nth-of-type(4) {
  top: -159px;
  right: 166px;
  width: 216px;
  height: 324px;
}
.top-owner__gallery:nth-of-type(5) {
  top: 165px;
  right: -79px;
  width: 188px;
  height: 125px;
}

.top-faq__inner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0px 110px 0 110px;
  max-width: 1366px;
  margin: 0 auto;
  margin-top: 275px;
  margin-bottom: 222.5px;
}
@media (max-width: 768px) {
  .top-faq__inner {
    margin-top: 150px;
    padding: 0 20px;
  }
}
.top-faq__title {
  position: absolute;
  top: -59px;
  left: -11px;
  mix-blend-mode: multiply;
  width: 277px;
  height: 156px;
}
@media (max-width: 768px) {
  .top-faq__title {
    width: 221.6px;
    height: 124.8px;
    left: -50px;
  }
}
.top-faq__list {
  list-style: none;
  width: 82.7%;
  margin-left: auto;
  margin-right: 0;
}
@media (max-width: 768px) {
  .top-faq__list {
    width: 85%;
  }
}
.top-faq__item {
  border-top: 0.5px solid #484341;
  border-bottom: 0.5px solid #484341;
}
.top-faq__item:nth-child(n+2) {
  margin-top: -0.5px;
}
.top-faq__btn {
  position: relative;
  width: 100%;
  padding: 42px 0;
  background-color: transparent;
  cursor: pointer;
  outline: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.top-faq__btn .question {
  font-family: yu-gothic-pr6n, sans-serif;
  font-size: 16px;
  color: #484341;
}
.top-faq__btn::before {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 18px;
  height: 0.5px;
  background-color: #332e2e;
}
.top-faq__btn::after {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  content: "";
  width: 18px;
  height: 0.5px;
  opacity: 1;
  background-color: #332e2e;
  -webkit-transition: 0.15s all ease;
  transition: 0.15s all ease;
}
.top-faq__btn.is-open::after {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}
.top-faq__body {
  border: transparent;
  line-height: 0;
  opacity: 0;
  height: 0;
  -webkit-transition: 0.25s all ease;
  transition: 0.25s all ease;
}
.top-faq__body p:nth-child(n+2) {
  margin-top: 35px;
}
.top-faq__body.answer {
  font-family: yu-gothic-pr6n, sans-serif;
  position: relative;
  font-size: 14px;
}
.top-faq__body.is-open {
  padding-bottom: 37px;
  line-height: 2.14;
  opacity: 1;
  height: auto;
}

/*
	サイト全体のユーティリティ設定
*/
/* 文字サイズの設定 */
.u-font-size--small {
  font-size: 0.88rem;
}

.u-font-size--large {
  font-size: 1.13rem;
}

.u-font-size--x-large {
  font-size: 1.25rem;
}

.u-font-size--xx-large {
  font-size: 1.5rem;
}

/* 文字色、装飾の設定 */
.u-font-bold {
  font-weight: bold;
}

.u-color-red {
  color: red;
}

.u-color-white {
  color: white;
}

.u-color-main {
  color: #83300E;
}

.u-color-sub {
  color: #83300E;
}

/* フォントの設定 */
.u-ff-futura-b, .company-business .company-business__en, .company-section .company-section-headding .company-section__en, .product .product__price-detail .product__price-tax, .product .product__en, .topic-path, .footer-container {
  font-family: "futura-pt", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.u-ff-futura-m, .product-gift .product-gift__item li .product-gift__price, .product-scene .product-scene-content .product-scene-content__heading, .product .product__price-detail, #price .category-search__list li a, .global-sub, .globalMenu-bg .globalMenu__ec {
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.u-ff-futura-d, .freepage-title, .product-knowledge .product-knowledge__title, .product-subsc .product-subsc__title, .product-relation__title, .product-scene .product-scene-content .product-scene-content__title, .wine-list__page-title, .category-search-wrap .category-search__title-en, .global-nav-list {
  font-family: "futura-pt", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.u-ff-corporate-r, .freepage-intro-area, .product-relation__area, .product-section .product-section__title span, .cat-catch__area-sp, .cat-catch__area, .wine-list__area {
  font-family: "corporate-a", serif;
  font-weight: 400;
  font-style: normal;
}

.u-yugo-d, .product-gift .product-gift__item li strong, .product .product__text, .product .product__title, #price .category-search__list li a span {
  font-weight: normal;
  font-family: sans-serif;
}

.u-yugo-b, .company-business .company-business__title, .company-profile .company-profile__table, .company-section .company-section-headding .company-section__title, .product-subsc .subsc-link p, .product-subsc .subsc-content, .product-gift .product-gift-content__lede, .product-scene .product-scene-content .product-scene-content__text, .product-meal .product-meal__list, .product-meal .product-meal__title, .product-profile .product-profile-content__lede, .product-section .product-section__title, .cat-catch__lede {
  font-weight: bold;
  font-family: sans-serif;
}

/* マーカーの設定 */
.u-marker-yellow {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #FFF238));
  background: linear-gradient(transparent 60%, #FFF238 60%);
  padding: 0 2px;
  position: relative;
  behavior: url(PIE.htc);
}

.u-marker-pink {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #FFD4D3));
  background: linear-gradient(transparent 40%, #FFD4D3 40%);
  padding: 0 2px;
  position: relative;
}

/* 段落の設定 */
.u-txt {
  padding: 0 1px;
}

.u-paragraph {
  padding: 0 1px 0 1px;
  margin-bottom: 1em;
}

.u-txt-sub {
  font-size: 85% !important;
  color: #666;
}

.u-txt-attention {
  padding: 0 0 0 0.7em;
  text-indent: -0.7em;
  color: #C60;
}

/* 文字寄せの設定 */
.u-textalign-center {
  text-align: center;
}

.u-textalign-right {
  text-align: right;
}

.u-textalign-left {
  text-align: left;
}

/* floatの設定 */
.u-float-left {
  float: left;
}

.u-float-right {
  float: right;
}

.u-clear {
  clear: both;
}

.u-overflow-hidden {
  overflow: hidden;
}

/* 画像の寄せ */
img.alignleft {
  float: left;
  margin: 0 15px 15px 0;
}

img.alignright {
  float: right;
  margin: 0 0 15px 15px;
}

img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* 線の設定 */
.u-line-dashed {
  border: none;
  border-top: 1px dashed #ccc;
  height: 1px;
}

/* ポジションの設定 */
.u-position-relative {
  position: relative;
}

/* マージンボトムの設定 */
.u-margin-bottom--none {
  margin-bottom: 0px;
}

.u-margin-bottom--small {
  margin-bottom: 10px;
}

.u-margin-bottom {
  margin-bottom: 20px;
}

.u-margin-bottom--large {
  margin-bottom: 60px;
}

.u-margin-bottom--x-large {
  margin-bottom: 80px;
}

.u-margin-bottom--xx-large {
  margin-bottom: 120px;
}

.u-margin-bottom--max {
  margin-bottom: 160px;
}

/* レイアウトの設定 */
@media (min-width: 700px) {
  .u-over-parent {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

@media (min-width: 700px) {
  .u-padding-pagewidth {
    padding-left: calc(50vw - 540px);
    padding-right: calc(50vw - 540px);
  }
}

@media (min-width: 700px) {
  .u-flex-between {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

/* ポジションの設定 */
.u-position-relative {
  position: relative;
}

/* 改行の設定 */
@media screen and (max-width: 699px) {
  .u-br-not-sp {
    display: none;
  }
}

@media screen and (min-width: 699px) {
  .u-br-sp {
    display: none;
  }
}

/* パンくず */
.topic-path {
  background: url(../img/common/item/topic-path/bgi--li.svg) left center no-repeat;
  margin-bottom: 60px;
  padding-left: 57px;
  list-style: none;
}
.topic-path li {
  display: inline-block;
  margin-right: 26px;
  position: relative;
  color: #B7041A;
}
.topic-path li::before {
  content: " ";
  background: #484341;
  width: 9px;
  height: 1px;
  display: block;
  position: absolute;
  left: -20px;
  top: 17px;
}
.topic-path li:nth-child(1) {
  content: none;
}
@media screen and (max-width: 699px) {
  .topic-path {
    margin-bottom: 36px;
  }
}

/*
	商品ページ
*/
/* スマホ構築用（構築後削除） */
@media (max-width: 699px) {
  .layout-container {
    width: auto;
  }
  .footer {
    display: none;
  }
}
/* スマホ構築用ここまで（構築後削除） */
.category-search-wrap {
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
  font-size: 0.88rem;
  width: 414px;
  height: calc(100vh - 66px);
  background: #fff;
  right: 0;
  top: 66px;
  position: fixed;
  padding: 100px 20px 27px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 11;
  /*.category-search-btn{
  	background: url(../img/product/search/btn--search.svg) left bottom no-repeat;
  	width: 66px;
  	height: 49px;
  	display: block;
  	box-sizing: border-box;
  	overflow: hidden;
  	border: none;
  	text-indent: -999px;
  	//position: absolute;
  	position: fixed;
  	top: 65px;
  	right: 300px;
  }*/
}
.category-search-wrap.hide {
  right: -414px;
}
.category-search-wrap.hide .category-search {
  display: none;
}
.category-search-wrap a {
  text-decoration: none;
}
.category-search-wrap .category-search {
  margin: 0 auto;
}
.category-search-wrap .category-search__tab {
  list-style: none;
  margin-bottom: 40px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 74px 48px 74px 48px 74px;
  grid-template-columns: repeat(3, 74px);
  grid-gap: 20px 48px;
  padding: 0px 28px;
  margin-top: 26px;
}
.category-search-wrap .category-search__tab li {
  display: inline-block;
  position: relative;
  line-height: 1;
  /*font-weight: bold;
  font-family: sans-serif;
  &::before{
  	content: ' ';
  	background: #C3C3C3;
  	width: 1px;
  	height: 11px;
  	display: block;
  	position: absolute;
  	right: 0;
  	top: 3px;

  }
  &:last-child{
  	&::before{
  		content: none;
  	}
  }*/
}
.category-search-wrap .category-search__tab li img {
  display: block;
  margin-bottom: 10px;
}
.category-search-wrap .category-search__title {
  border-bottom: 3px solid #484341;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px;
}
.category-search-wrap .category-search__title-en {
  font-size: 1.67rem;
  letter-spacing: 0.5px;
}
.category-search-wrap .category-search__title-ja {
  font-size: 0.93rem;
}
@media (max-width: 699px) {
  .category-search-wrap {
    width: 100vw;
    height: calc(100vh - 55px);
    top: 55px;
  }
  .category-search-wrap.hide {
    right: -100vw;
  }
  .category-search-wrap .category-search__tab {
    -ms-grid-columns: 1fr 30px 1fr 30px 1fr;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 20px 30px;
    padding: 0;
  }
}

.category-search__list {
  /*list-style: none;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid  #484341;
  li{
  	width: 16.666%;
  	box-sizing: border-box;
  	a{
  		padding: 5px 0;
  		border-bottom: 1px solid  #484341;
  		border-left: 1px solid  #484341;
  		display: block;
  	}
  	&:nth-child(6n) , &:last-child{
  		a{
  			border-right: 1px solid #484341;
  		}
  	}
  }*/
}
.category-search__list li {
  border-bottom: 1px solid #EFEFEF;
  text-align: left;
}
.category-search__list li a, .category-search__list li .category-search-area dt {
  padding: 28px 40px;
  font-size: 1rem;
  display: block;
}

#type .category-search__list li a {
  background: url(../img/common/search/ico--color.png) left 8px center/17px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}

#breed .category-search__list li a {
  background: url(../img/common/search/ico--color-red.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}

#price .category-search__list li a span {
  margin-left: 30px;
  font-weight: 100;
}
#price .category-search__list li:nth-of-type(1) a {
  background: url(../img/common/search/ico--price-01.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(1) a span {
  color: #FF9DA0;
}
#price .category-search__list li:nth-of-type(2) a {
  background: url(../img/common/search/ico--price-02.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(2) a span {
  color: #F86367;
}
#price .category-search__list li:nth-of-type(3) a {
  background: url(../img/common/search/ico--price-03.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(3) a span {
  color: #FF454A;
}
#price .category-search__list li:nth-of-type(4) a {
  background: url(../img/common/search/ico--price-04.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(4) a span {
  color: #B7041A;
}
#price .category-search__list li:nth-of-type(5) a {
  background: url(../img/common/search/ico--price-05.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(5) a span {
  color: #8D1A37;
}
#price .category-search__list li:nth-of-type(6) a {
  background: url(../img/common/search/ico--price-06.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(6) a span {
  color: #7F0518;
}
#price .category-search__list li:nth-of-type(7) a {
  background: url(../img/common/search/ico--price-07.svg) left 8px center/10px auto no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
#price .category-search__list li:nth-of-type(7) a span {
  color: #5B0B0B;
}

.category-search-area dd {
  display: none;
}
.category-search-area dt {
  background: url(../img/common/search/ico--color-bl.svg) left 20px center/10px auto no-repeat;
  position: relative;
}
.category-search-area dt::after {
  content: "";
  width: 22px;
  height: 22px;
  background: url(../img/common/search/ico--plus.svg) top left/contain no-repeat;
  position: absolute;
  right: 15px;
  top: 33px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.category-search-area dt.active {
  background-color: #F7F7F7;
}
.category-search-area dt.active::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.category-search-area dt.active + dd {
  display: block;
}
.category-search-area .category-search__list {
  padding: 0px 8px;
}
.category-search-area .category-search__list li a {
  padding-top: 20px;
  padding-bottom: 20px;
  background: -webkit-gradient(linear, left top, left bottom, from(#3341EA), to(#3341EA)) left 22px center/4px 10px no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
  background: linear-gradient(#3341EA, #3341EA) left 22px center/4px 10px no-repeat, url(../img/common/search/ico--arrow-gray.svg) right 8px center/40px auto no-repeat;
}
.category-search-area .category-search__list li:last-of-type {
  border: none;
}

.category-search-block {
  display: none;
  padding-top: 27px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 70px;
  height: calc(100vh - 134px);
  width: calc(100% - 40px);
  background-color: #fff;
  overflow-y: scroll;
  list-style: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.category-search-block::-webkit-scrollbar {
  display: none;
}
.category-search-block.active {
  display: block;
}
@media (max-width: 699px) {
  .category-search-block {
    padding-bottom: 100px;
  }
}

.category-search-footer {
  position: absolute;
  height: 70px;
  width: 100%;
  background-color: #F0F0F0;
  top: 0;
  right: 0;
  z-index: 12;
}
.category-search-footer img {
  width: auto;
  display: inline-block;
}
.category-search-footer .btn-search-close {
  border: none;
  background-color: #FF3884;
  width: 70px;
  height: 70px;
  position: absolute;
  bottom: 0;
  right: 0;
}
.category-search-footer .btn-search-back {
  border: none;
  width: 155px;
  height: 70px;
  background-color: transparent;
  position: absolute;
  bottom: 0;
  left: 10px;
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.category-search-footer .btn-search-back.active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (max-width: 699px) {
  .product-container {
    padding: 5px 20px 0px 20px;
  }
}

.ec-searchnavRole__topicpath {
  margin-top: 100px;
}

#page_product_list .ec-searchnavRole__topicpath {
  margin-top: 0;
}

.ec-headerRole {
  display: none;
}

.product_page .ec-layoutRole__contents {
  max-width: none;
}

.ec-layoutRole {
  background: none;
}

.wine-list__page-title {
  background: url(../img/product/top/title/bgi--01.svg) right center no-repeat;
  border-bottom: 4px solid #484341;
  padding-bottom: 15px;
  margin-bottom: 20px;
  line-height: 1;
  font-size: 2.38rem;
}
@media (max-width: 699px) {
  .wine-list__page-title {
    background: none;
    padding-bottom: 10px;
    margin-bottom: 15px;
    font-size: 1.56rem;
  }
}

.wine-list__area {
  background: url(../img/product/top/title/bgi--area.png) 303px bottom no-repeat;
  background-size: 105px auto;
  width: 586px;
  padding-bottom: 7px;
  margin-bottom: 83px;
  letter-spacing: 0.05em;
  line-height: 1.33;
  font-size: 0.75rem;
}
@media (max-width: 699px) {
  .wine-list__area {
    background: url(../img/product/top/title/bgi--area.png) right 84px bottom 14px no-repeat;
    background-size: 70px auto;
    width: auto;
    font-size: 0.63rem;
    margin-bottom: 30px;
  }
}

.wine-list__nav-wrap {
  margin-bottom: 90px;
}
@media (max-width: 699px) {
  .wine-list__nav-wrap {
    width: auto;
    padding-bottom: 20px;
    margin-bottom: 30px;
    overflow-y: scroll;
  }
}

.wine-list__nav {
  width: 988px;
  margin: 0 auto;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.wine-list__nav li {
  width: 149px;
  text-align: center;
}
.wine-list__nav li a {
  display: block;
  height: 239px;
  padding-top: 145px;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  text-decoration: none;
  letter-spacing: 0.4em;
  font-weight: bold;
  font-size: 0.88em;
}
.wine-list__nav li a:hover {
  background: url(../img/product/top/nav/bgi--hover.png) calc(50% + 9px) bottom no-repeat;
  background-size: 73px auto;
}
.wine-list__nav li a::before {
  content: " ";
  width: 172px;
  height: 76px;
  display: block;
  position: absolute;
  top: 44px;
  left: calc(50% - 86px);
}
.wine-list__nav li a::after {
  content: " ";
  width: 100%;
  height: 20px;
  display: block;
  position: absolute;
  left: 0;
  top: 160px;
}
.wine-list__nav li:nth-child(1) {
  background: url(../img/product/top/nav/ico--arrow.svg) center bottom 32px no-repeat, url(../img/product/top/nav/bgi--01.png) center top no-repeat;
  background-size: auto, 100% auto;
}
.wine-list__nav li:nth-child(1) a::before {
  background: url(../img/product/top/nav/pic--color-01.png) left top no-repeat;
  background-size: 100% auto;
  mix-blend-mode: multiply;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.wine-list__nav li:nth-child(1) a::after {
  background: url(../img/product/top/nav/pic--en-01.svg) center bottom no-repeat;
}
.wine-list__nav li:nth-child(2) {
  background: url(../img/product/top/nav/ico--arrow.svg) center bottom 32px no-repeat, url(../img/product/top/nav/bgi--02.png) center top no-repeat;
  background-size: auto, 100% auto;
}
.wine-list__nav li:nth-child(2) a::before {
  background: url(../img/product/top/nav/pic--color-02.png) left top no-repeat;
  background-size: 100% auto;
  mix-blend-mode: multiply;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.wine-list__nav li:nth-child(2) a::after {
  background: url(../img/product/top/nav/pic--en-02.svg) center bottom no-repeat;
}
.wine-list__nav li:nth-child(3) {
  background: url(../img/product/top/nav/ico--arrow.svg) center bottom 32px no-repeat, url(../img/product/top/nav/bgi--03.png) center top no-repeat;
  background-size: auto, 100% auto;
}
.wine-list__nav li:nth-child(3) a span {
  display: block;
  margin: 0 -30px;
}
.wine-list__nav li:nth-child(3) a::before {
  background: url(../img/product/top/nav/pic--color-03.png) left top no-repeat;
  background-size: 100% auto;
  mix-blend-mode: multiply;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.wine-list__nav li:nth-child(3) a::after {
  background: url(../img/product/top/nav/pic--en-03.svg) center bottom no-repeat;
}
.wine-list__nav li:nth-child(4) {
  background: url(../img/product/top/nav/ico--arrow.svg) center bottom 32px no-repeat, url(../img/product/top/nav/bgi--04.png) center top no-repeat;
  background-size: auto, 100% auto;
}
.wine-list__nav li:nth-child(4) a::before {
  background: url(../img/product/top/nav/pic--color-04.png) left top no-repeat;
  background-size: 100% auto;
  mix-blend-mode: multiply;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.wine-list__nav li:nth-child(4) a::after {
  background: url(../img/product/top/nav/pic--en-04.svg) center bottom no-repeat;
}
.wine-list__nav li:nth-child(5) {
  background: url(../img/product/top/nav/ico--arrow.svg) center bottom 32px no-repeat, url(../img/product/top/nav/bgi--01.png) center top no-repeat;
  background-size: auto, 100% auto;
}
.wine-list__nav li:nth-child(5) a::before {
  background: url(../img/product/top/nav/pic--color-05.png) left top no-repeat;
  background-size: 100% auto;
  mix-blend-mode: multiply;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.wine-list__nav li:nth-child(5) a::after {
  background: url(../img/product/top/nav/pic--en-05.svg) center bottom no-repeat;
}
@media (max-width: 699px) {
  .wine-list__nav {
    width: 770px;
  }
}

.product-list, .product-relatioin-list {
  list-style: none;
  display: -ms-grid;
  display: grid;
  padding: 0px 60px;
  -ms-grid-columns: 330px calc((100% - 990px) / 2) 330px calc((100% - 990px) / 2) 330px;
  grid-template-columns: repeat(3, 330px);
  grid-column-gap: calc((100% - 990px) / 2);
  grid-row-gap: 80px;
}
.product-list li, .product-relatioin-list li {
  padding-bottom: 5px;
  border-bottom: 1px solid #484341;
}
.product-list li a, .product-relatioin-list li a {
  text-decoration: none;
  height: 100%;
  display: block;
  position: relative;
}
.product-list li .product-list__pic, .product-relatioin-list li .product-list__pic {
  display: block;
  margin-bottom: 15px;
  aspect-ratio: 330/400;
}
.product-list li .product-list__pic img, .product-relatioin-list li .product-list__pic img {
  height: 100%;
}
.product-list li .product-list__title, .product-relatioin-list li .product-list__title {
  display: block;
  margin-bottom: 60px;
  line-height: 1.76;
  letter-spacing: 0.03em;
  font-size: 1.3em;
}
.product-list li .product-list__price, .product-relatioin-list li .product-list__price {
  display: block;
  font-size: 1.6rem;
  position: absolute;
  bottom: 0;
}
.product-list li .product-list__price span, .product-relatioin-list li .product-list__price span {
  font-size: 0.86rem;
}
.product-list li p, .product-relatioin-list li p {
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media (min-width: 700px) {
  .product-list, .product-relatioin-list {
    margin-bottom: 60px;
  }
  .product-list li.type-8, .product-relatioin-list li.type-8 {
    /*&.type-10{
    	background: url(../img/product/top/list/bgi--red.svg) left top no-repeat;
    }*/
    position: relative;
  }
  .product-list li.type-8::before, .product-relatioin-list li.type-8::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 0;
    width: 48px;
    height: 10px;
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .product-list li.type-8.type-10:before, .product-relatioin-list li.type-8.type-10:before {
    background-image: url(../img/product/category/pic--badge-red.svg);
  }
  .product-list li.type-8.type-13:before, .product-relatioin-list li.type-8.type-13:before {
    background-image: url(../img/product/category/pic--badge-white.svg);
  }
  .product-list li.type-8.type-14:before, .product-relatioin-list li.type-8.type-14:before {
    background-image: url(../img/product/category/pic--badge-sparkling.svg);
  }
  .product-list li.type-8.type-15:before, .product-relatioin-list li.type-8.type-15:before {
    background-image: url(../img/product/category/pic--badge-rose.svg);
  }
  .product-list li.type-8.type-16:before, .product-relatioin-list li.type-8.type-16:before {
    background-image: url(../img/product/category/pic--badge-orange.svg);
  }
}
@media (max-width: 699px) {
  .product-list, .product-relatioin-list {
    margin: 0 -20px 55px;
    padding: 0;
    -ms-grid-columns: 1fr 0px 1fr;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 25px 0px;
  }
  .product-list li, .product-relatioin-list li {
    padding-top: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .product-list li:nth-child(3n), .product-relatioin-list li:nth-child(3n) {
    margin-right: 0;
  }
  .product-list li .product-list__title, .product-relatioin-list li .product-list__title {
    background-position: left 10px top;
    background-repeat: no-repeat;
  }
  .product-list li.type10 .product-list__title, .product-relatioin-list li.type10 .product-list__title {
    background: url(../img/product/top/list/bgi--red.svg) left 10px top no-repeat;
  }
  .product-list li a, .product-relatioin-list li a {
    text-decoration: none;
  }
  .product-list li .product-list__pic, .product-relatioin-list li .product-list__pic {
    display: block;
    margin-bottom: 10px;
    aspect-ratio: 200/250;
    overflow: hidden;
  }
  .product-list li .product-list__pic img, .product-relatioin-list li .product-list__pic img {
    width: 100%;
    height: 100%;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  .product-list li .product-list__title, .product-relatioin-list li .product-list__title {
    display: block;
    padding: 10px 10px 0;
    margin-bottom: 50px;
    line-height: 1.4;
    letter-spacing: 0.03em;
    font-size: 1rem;
  }
  .product-list li .product-list__price, .product-relatioin-list li .product-list__price {
    padding-left: 10px;
    font-size: 1.46rem;
  }
  .product-list li .product-list__price span, .product-relatioin-list li .product-list__price span {
    font-size: 0.81rem;
  }
  .product-list li p, .product-relatioin-list li p {
    -webkit-font-feature-settings: initial;
            font-feature-settings: initial;
  }
}

/* ワインカテゴリ */
.cat-catch {
  margin-bottom: 133px;
}
@media (max-width: 699px) {
  .cat-catch {
    margin-bottom: 60px;
  }
}

.cat-catch__title {
  width: 100%;
  display: block;
  mix-blend-mode: multiply;
  text-indent: -9999px;
  overflow: hidden;
}

.cat-catch__area {
  width: 574px;
  padding-top: 64px;
  padding-bottom: 10px;
  margin-bottom: 52px;
  line-height: 1.3;
  letter-spacing: 0.05em;
  font-size: 0.63rem;
}
@media (max-width: 699px) {
  .cat-catch__area {
    background: url(../img/product/top/title/bgi--area.png) right 84px bottom 10px no-repeat;
    background-size: 70px auto;
    width: auto;
    padding: 0;
    margin-bottom: 16px;
  }
}

.cat-catch__lede {
  letter-spacing: 0.4em;
  line-height: 1;
  font-weight: bold;
  font-size: 1.06rem;
}
@media (max-width: 699px) {
  .cat-catch__lede {
    border: 1px solid #42342E;
    margin: -1px 0;
    padding: 24px 0;
    text-align: center;
    letter-spacing: 0.4em;
    font-size: 0.88rem;
  }
}

.cat-catch__photo-sp {
  height: 76vw;
  position: relative;
}
.cat-catch__photo-sp::before {
  content: " ";
  width: 100%;
  display: block;
  position: absolute;
}

.cat-catch__box-sp {
  border: 1px solid #42342E;
  height: 31vw;
  margin: -1px 0 0;
}

.cat-catch__area-sp {
  background: url(../img/product/category/sp/bgi--area-sp-02.webp) 97px 43px no-repeat, url(../img/product/category/sp/bgi--area-sp.webp) right 20px center no-repeat;
  background-size: 121px auto, 60px auto;
  border: 1px solid #42342E;
  padding: 20px 115px 20px 25px;
  position: relative;
  letter-spacing: 0.05em;
  line-height: 1.33;
  font-size: 0.63rem;
}
.cat-catch__area-sp::before {
  content: " ";
  background: #42342E;
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 100px;
}

/* 赤ワイン */
@media (min-width: 700px) {
  .wine-10 .cat-catch__title {
    background: url(../img/product/category/tit--red.webp) calc(50% + 393px) top no-repeat;
    background-size: 363px 391px;
    height: 391px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .wine-10 .cat-catch__area {
    background: url(../img/product/category/pic--photo-red.webp) right top no-repeat, url(../img/product/category/pic--badge-red.svg) left 27px no-repeat, url(../img/product/top/title/bgi--area.png) 25px bottom no-repeat;
    background-size: 235px auto, auto, 105px auto;
  }
}
@media (max-width: 699px) {
  .wine-10 .wine-list__page-title {
    background: url(../img/product/category/pic--badge-red.svg) right center no-repeat;
  }
  .wine-10 .cat-catch__photo-sp {
    background: url(../img/product/category/sp/pic--red.webp) left top no-repeat;
    background-size: 100% auto;
  }
  .wine-10 .cat-catch__photo-sp::before {
    background: url(../img/product/category/sp/tit--red.webp) left top no-repeat;
    background-size: 100% auto;
    height: 39vw;
    bottom: -26vw;
    mix-blend-mode: multiply;
  }
}

/* 白ワイン */
@media (min-width: 700px) {
  .wine-13 .cat-catch__title {
    background: url(../img/product/category/tit--white.webp) calc(50% + 399px) top no-repeat;
    background-size: 589px 362px;
    height: 362px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .wine-13 .cat-catch__area {
    background: url(../img/product/category/pic--photo-white.webp) right top no-repeat, url(../img/product/category/pic--badge-white.svg) left 27px no-repeat, url(../img/product/top/title/bgi--area.png) 25px bottom no-repeat;
    background-size: 235px auto, auto, 105px auto;
  }
}
@media (max-width: 699px) {
  .wine-13 .wine-list__page-title {
    background: url(../img/product/category/pic--badge-white.svg) right center no-repeat;
  }
  .wine-13 .cat-catch__photo-sp {
    background: url(../img/product/category/sp/pic--white.webp) left top no-repeat;
    background-size: 100% auto;
  }
  .wine-13 .cat-catch__photo-sp::before {
    background: url(../img/product/category/sp/tit--white.webp) left top no-repeat;
    background-size: 100% auto;
    height: 32vw;
    bottom: -25vw;
    mix-blend-mode: multiply;
  }
}

/* スパークリング */
@media (min-width: 700px) {
  .wine-14 .cat-catch__title {
    background: url(../img/product/category/tit--sparkling.webp) calc(50% + 348px) top no-repeat;
    background-size: 595px 374px;
    height: 374px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .wine-14 .cat-catch__area {
    background: url(../img/product/category/pic--photo-sparkling.webp) right top no-repeat, url(../img/product/category/pic--badge-sparkling.svg) left 27px no-repeat, url(../img/product/top/title/bgi--area.png) 25px bottom no-repeat;
    background-size: 235px auto, auto, 105px auto;
  }
}
@media (max-width: 699px) {
  .wine-14 .wine-list__page-title {
    background: url(../img/product/category/pic--badge-sparkling.svg) right center no-repeat;
  }
  .wine-14 .cat-catch__photo-sp {
    background: url(../img/product/category/sp/pic--sparkling.webp) left top no-repeat;
    background-size: 100% auto;
  }
  .wine-14 .cat-catch__photo-sp::before {
    background: url(../img/product/category/sp/tit--sparkling.webp) left top no-repeat;
    background-size: 100% auto;
    height: 22vw;
    bottom: -25vw;
    mix-blend-mode: multiply;
  }
}

/* ロゼ */
@media (min-width: 700px) {
  .wine-15 .cat-catch__title {
    background: url(../img/product/category/tit--rose.webp) calc(50% + 409px) top no-repeat;
    background-size: 496px 374px;
    height: 374px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .wine-15 .cat-catch__area {
    background: url(../img/product/category/pic--photo-rose.webp) right top no-repeat, url(../img/product/category/pic--badge-rose.svg) left 27px no-repeat, url(../img/product/top/title/bgi--area.png) 25px bottom no-repeat;
    background-size: 235px auto, auto, 105px auto;
  }
}
@media (max-width: 699px) {
  .wine-15 .wine-list__page-title {
    background: url(../img/product/category/pic--badge-rose.svg) right center no-repeat;
  }
  .wine-15 .cat-catch__photo-sp {
    background: url(../img/product/category/sp/pic--rose.webp) left top no-repeat;
    background-size: 100% auto;
  }
  .wine-15 .cat-catch__photo-sp::before {
    background: url(../img/product/category/sp/tit--rose.webp) left top no-repeat;
    background-size: 100% auto;
    height: 30.2vw;
    bottom: -33.8vw;
    mix-blend-mode: multiply;
  }
}

/* オレンジ */
@media (min-width: 700px) {
  .wine-16 .cat-catch__title {
    background: url(../img/product/category/tit--orange.webp) calc(50% + 409px) top no-repeat;
    background-size: 496px 374px;
    height: 374px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .wine-16 .cat-catch__area {
    background: url(../img/product/category/pic--photo-orange.webp) right top no-repeat, url(../img/product/category/pic--badge-orange.svg) left 27px no-repeat, url(../img/product/top/title/bgi--area.png) 25px bottom no-repeat;
    background-size: 235px auto, auto, 105px auto;
  }
}
@media (max-width: 699px) {
  .wine-16 .wine-list__page-title {
    background: url(../img/product/category/pic--badge-orange.svg) right center no-repeat;
  }
  .wine-16 .cat-catch__photo-sp {
    background: url(../img/product/category/sp/pic--orange.webp) left top no-repeat;
    background-size: 100% auto;
  }
  .wine-16 .cat-catch__photo-sp::before {
    background: url(../img/product/category/sp/tit--orange.webp) left top no-repeat;
    background-size: 100% auto;
    height: 30.2vw;
    bottom: -33.8vw;
    mix-blend-mode: multiply;
  }
}

/* 商品詳細 */
.ec-layoutRole__contents {
  overflow-x: hidden;
}

.product-recommend {
  margin-bottom: 100px;
}
.product-recommend .product-recommend__title {
  margin-bottom: 10px;
  letter-spacing: 0.4rem;
  font-weight: bold;
  font-size: 1.06rem;
}

.ec-searchnavRole {
  margin: 0;
  padding: 0;
}

.product-detail-body {
  background: url(../img/product/detail/bgi--01.png) calc(50% + 580px) top no-repeat, url(../img/product/detail/bgi--02.png) calc(50% - 495px) 556px no-repeat;
  background-size: 328px auto, 1030px auto;
}
@media screen and (max-width: 699px) {
  .product-detail-body {
    background: url(../img/product/detail/bgi--sp.webp) calc(50% + 77px) 180px no-repeat;
    background-size: 324px auto;
  }
}

@media screen and (max-width: 699px) {
  .product-detail__area {
    margin-bottom: 15px !important;
  }
}

.product-detail {
  padding-top: 38px;
  margin-bottom: 160px;
}
@media screen and (max-width: 699px) {
  .product-detail {
    padding-top: 0;
    margin-bottom: 60px;
  }
}

.product {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.product .product-photo {
  width: 546px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.product .product-photo::before {
  content: " ";
  background: url(../img/product/detail/main/pic--grass.png) left top no-repeat;
  background-size: cover;
  width: 32px;
  height: 76px;
  display: block;
  position: absolute;
  right: 19px;
  top: -42px;
  z-index: 3;
}
.product .product-photo__main {
  list-style: none;
  margin-bottom: 16px;
  width: 438px;
}
.product .product-photo__main img {
  height: 658px !important;
  -o-object-fit: cover;
     object-fit: cover;
}
.product .product-photo__main a {
  position: relative;
  display: block;
}
.product .product-photo__main a::before {
  content: " ";
  background: url(../img/product/detail/main/ico--zoom.svg) left top no-repeat;
  background-size: 100% auto;
  width: 56px;
  height: 56px;
  display: block;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 4;
}
.product .product-photo__bg {
  width: 100px;
  height: auto;
}
.product .product-photo__thumb-bg {
  text-align: right;
}
.product .product-photo__sub {
  text-align: right;
  list-style: none;
}
.product .product-photo__sub li {
  background: #fff;
  padding: 8px 8px 0 8px;
  width: 86px;
  cursor: pointer;
}
.product .product-photo__sub li img {
  width: 86px;
  height: 86px !important;
  -o-object-fit: cover;
     object-fit: cover;
}
.product .product-photo__sub li:last-child {
  padding-bottom: 8px;
}
.product .product-photo__sub .slick-list {
  padding: 0 !important;
}
.product .product-photo__sub .slick-current img {
  opacity: 0.8;
}
.product .product-photo__sub .slick-track {
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  -webkit-transform: none !important;
          transform: none !important;
}
.product .product-content {
  width: 546px;
}
.product .product__title {
  padding-top: 30px;
  border-top: 3px solid #42342E;
  line-height: 1.46;
  font-weight: normal;
  font-size: 1.5rem;
}
.product .product__en {
  margin-bottom: 10px;
  letter-spacing: -0.01em;
  font-size: 0.94rem;
}
.product .product__size {
  margin-bottom: 0px;
}
.product .product__text {
  margin-bottom: 0px;
  line-height: 1.63;
  letter-spacing: 0.03em;
}
.product .product__price-detail {
  margin-bottom: 30px;
  line-height: 1.63;
  letter-spacing: 0.03em;
  font-size: 2.38rem !important;
  color: #484341 !important;
}
.product .product__price-detail .product__price-tax {
  font-size: 1rem;
  color: #BCBCBC;
}
.product .ec-blockBtn--action {
  background: #FF454B url(../img/product/detail/ico--submit.svg) right 39px center no-repeat;
  display: block;
  width: 100%;
  padding: 25px 0;
  margin-bottom: 47px;
  border: none;
  line-height: 1;
  font-size: 0.96rem;
  color: #fff;
}
.product .product__spec {
  border-top: 1px solid #42342E;
}
.product .product__spec dt {
  padding: 10px 10px 0 10px;
  font-weight: bold;
}
.product .product__spec dd {
  padding: 0 10px 10px 10px;
  border-bottom: 1px solid #D1D1D1;
}
@media (max-width: 699px) {
  .product {
    display: block;
  }
  .product .product-photo {
    width: auto;
    position: relative;
    display: block;
  }
  .product .product-photo .slick-arrow {
    width: 28px;
    height: 28px;
  }
  .product .product-photo .slick-arrow::before {
    content: none;
  }
  .product .product-photo .slick-arrow.slick-next {
    background: url(../img/product/detail/main/ico--next.svg) left top no-repeat;
    right: 28px;
  }
  .product .product-photo .slick-arrow.slick-prev {
    background: url(../img/product/detail/main/ico--prev.svg) left top no-repeat;
    left: 28px;
    z-index: 2;
  }
  .product .product-photo__main {
    margin-left: -20px;
    margin-right: -20px;
    width: 100vw;
  }
  .product .product-photo__main a::before {
    content: none;
  }
  .product .product-photo__sub {
    margin-bottom: 10px;
    text-align: left;
    list-style: none;
  }
  .product .product-photo__sub li {
    background: none;
    padding: 0;
    width: 41px;
    margin-right: 12px;
    cursor: pointer;
  }
  .product .product-photo__sub li img {
    width: 41px;
    height: 41px !important;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 50%;
  }
  .product .product-photo__sub li:last-child {
    padding-right: 8px;
  }
  .product .product-photo__sub .slick-list {
    padding: 0 !important;
  }
  .product .product-photo__sub .slick-current img {
    opacity: 0.8;
  }
  .product .product-photo__sub .slick-track {
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    float: none;
    -webkit-transform: none !important;
            transform: none !important;
  }
  .product .product-content {
    width: auto;
  }
  .product .product__price-detail {
    position: relative;
  }
  .product .product__price-detail::before {
    content: " ";
    background: url(../img/product/detail/bgi--content-sp.webp) left top no-repeat;
    background-size: auto 100%;
    width: 27.7vw;
    height: 132vw;
    display: block;
    position: absolute;
    top: 35px;
    right: -20px;
    z-index: -1;
  }
  .product .product-photo__bg {
    width: 100%;
  }
}

#recommend .product-detail {
  margin-bottom: 0;
}

/* カテゴリによって変更 */
.product-cat-10.product-detail {
  background: url(../img/product/category/pic--badge-red.svg) left top no-repeat;
  background-size: 85px auto;
}
.product-cat-10.product .product-photo::after {
  content: " ";
  background: url(../img/product/detail/main/pic--red.png) left top no-repeat;
  background-size: cover;
  width: 66px;
  height: 56px;
  display: block;
  mix-blend-mode: multiply;
  position: absolute;
  right: 0;
  top: -22px;
  z-index: 4;
}

.product-section {
  position: relative;
}
.product-section .product-section__title {
  background: url(../img/product/detail/profile/bgi--title.png) right 16px bottom no-repeat;
  background-size: 111px auto;
  position: absolute;
  width: 260px;
  height: 212px;
  border: 1px solid #42342E;
  padding-top: 25px;
  padding-left: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0.2em;
  line-height: 1;
  z-index: 2;
  font-size: 1.06em;
}
.product-section .product-section__title span {
  display: inline-block;
  margin-right: 15px;
  font-size: 1.44rem;
}
@media (max-width: 699px) {
  .product-section .product-section__title {
    background: url(../img/product/detail/profile/bgi--title.png) 25px 30px no-repeat;
    background-size: 84px auto;
    position: static;
    width: auto;
    height: auto;
    margin-bottom: 30px;
    border: none;
    border-left: 1px solid #42342E;
    padding: 8px 0 25px 25px;
  }
}

.product-profile {
  border-top: 1px solid #42342E;
}
.product-profile .product-profile__title {
  top: -1px;
  left: 0;
}
.product-profile .product-profile-content {
  padding-left: 340px;
  padding-right: 57px;
  padding-top: 70px;
  margin-bottom: 98px;
}
.product-profile .product-profile-content__lede {
  margin-bottom: 70px;
  letter-spacing: 0.3em;
  font-size: 1.06rem;
}
.product-profile .product-profile-content__text {
  letter-spacing: 0.04em;
  line-height: 1.88;
  font-size: 0.94rem;
}
@media (max-width: 699px) {
  .product-profile {
    border-top: 0;
  }
  .product-profile .product-profile__title {
    top: 0;
    left: 0;
  }
  .product-profile .product-profile-content {
    padding: 0;
    margin-bottom: 30px;
  }
  .product-profile .product-profile-content__lede {
    margin-bottom: 40px;
    letter-spacing: 0.3em;
    font-size: 1.25rem;
  }
}

.product-meal {
  margin: 0 57px 160px;
  position: relative;
  /*
  .product-meal__list{
  	background: #fff;
  	border: 1px solid  #42342E;
  	padding: 46px 20px 46px 58px;
  	margin-left: 283px;
  	list-style: none;
  	li{
  		@extend .u-yugo-b;
  		background:url(../img/product/detail/profile/ico--meal.svg) left 3px no-repeat;
  		padding-left: 19px;
  		line-height: 1;
  		display: inline-block;
  		margin: 0 23px 20px 0;
  		font-size: .94rem;
  	}
  }
  */
}
.product-meal .product-meal__title {
  background: url(../img/product/detail/profile/tit--meal.png) left top no-repeat;
  background-size: 397px auto;
  width: 397px;
  padding-top: 55px;
  mix-blend-mode: multiply;
  position: absolute;
  left: 0;
  top: -28px;
  line-height: 1;
  letter-spacing: 0.16em;
  font-size: 1rem;
}
.product-meal .product-meal__list {
  background: #fff;
  border: 1px solid #42342E;
  padding: 46px 20px 46px 58px;
  margin-left: 283px;
  letter-spacing: 0.04em;
  list-style: none;
  font-size: 0.94rem;
}
@media (max-width: 699px) {
  .product-meal {
    padding: 0;
    margin: 0 auto 60px;
  }
  .product-meal .product-meal__title {
    background: url(../img/product/detail/profile/bgi--title.png) left top no-repeat;
    background-size: 84px auto;
    padding: 5px 0 0 96px;
    margin-bottom: 20px;
    position: static;
    font-size: 1rem;
  }
  .product-meal .product-meal__list {
    background: #fff;
    border: 1px solid #42342E;
    padding: 30px 38px;
    margin-left: 0;
    list-style: none;
    font-size: 1rem;
  }
  .product-meal .product-meal__list li {
    padding-left: 22px;
    margin-bottom: 10px;
    position: relative;
    line-height: 1.5;
  }
  .product-meal .product-meal__list li::before {
    content: " ";
    width: 12px;
    height: 12px;
    display: block;
    border: 1px solid #3E3E3E;
    position: absolute;
    top: 6px;
    left: 0;
  }
}

.product-scene {
  margin-bottom: 120px;
}
.product-scene .product-scene__title {
  top: -1px;
  right: 0;
}
.product-scene .product-scene-content {
  width: 948px;
  height: 546px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 55px;
  padding-left: 44px;
  position: relative;
  color: #fff;
}
.product-scene .product-scene-content::before {
  content: " ";
  background: url(../img/product/detail/scene/friend/pic--icon.webp) left top no-repeat;
  background-size: cover;
  width: 106px;
  height: 75px;
  display: block;
  position: absolute;
  top: -30px;
  left: 36px;
  mix-blend-mode: multiply;
}
.product-scene .product-scene-content.product-scene-content__scene1 {
  background: url(../img/product/detail/scene/friend/pic--01.jpg) center center no-repeat;
  background-size: cover;
}
.product-scene .product-scene-content .product-scene-content__heading {
  font-size: 0.75rem;
  color: #fff;
}
.product-scene .product-scene-content .product-scene-content__title {
  width: 276px;
  padding: 3px 0;
  margin-top: 5px;
  margin-bottom: 15px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  font-size: 0.75rem;
}
.product-scene .product-scene-content .product-scene-content__text {
  padding-left: 6px;
  line-height: 1.5;
}
@media (max-width: 699px) {
  .product-scene .product-scene-content {
    width: auto;
    height: 100%;
    padding: 14px 0 0 30px;
    aspect-ratio: 46/33;
    margin-left: -20px;
    margin-right: -20px;
  }
  .product-scene .product-scene-content::before {
    content: none;
  }
  .product-scene .product-scene-content .product-scene-content__heading {
    color: #41342E;
  }
  .product-scene .product-scene-content .product-scene-content__title {
    padding: 3px 0;
    margin-top: 5px;
    margin-bottom: 15px;
    border-top: 1px solid #41342E;
    border-bottom: 1px solid #41342E;
    color: #41342E;
  }
  .product-scene .product-scene-content .product-scene-content__text {
    position: absolute;
    bottom: 10px;
    left: 28px;
    line-height: 1.55;
    letter-spacing: 0.05em;
    font-size: 1.13rem;
  }
}

.product-gift {
  margin-bottom: 150px;
  position: relative;
}
.product-gift .product-gift__title {
  top: 0;
  left: 0;
  border-top: 0;
}
.product-gift .product-gift-content {
  padding-left: 340px;
  padding-top: 30px;
  margin-bottom: 112px;
}
.product-gift .product-gift-content__lede {
  margin-bottom: 40px;
  letter-spacing: 0.3em;
  font-size: 1.06rem;
}
.product-gift .product-gift-content__text {
  letter-spacing: 0.04em;
  font-size: 0.94rem;
}
.product-gift .product-gift__item {
  width: 1034px;
  margin: 0 auto;
  list-style: none;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.product-gift .product-gift__item li {
  width: 474px;
  line-height: 1;
}
.product-gift .product-gift__item li img {
  display: block;
  margin-bottom: 27px;
}
.product-gift .product-gift__item li strong {
  display: block;
  margin-bottom: 16px;
  font-size: 1.5rem;
}
.product-gift .product-gift__item li .product-gift__price {
  display: block;
  font-size: 1.44rem;
}
@media (max-width: 699px) {
  .product-gift .product-gift-content {
    padding-left: 0;
    padding-top: 0;
    margin-bottom: 52px;
  }
  .product-gift .product-gift-content .product-gift-content__lede {
    margin-bottom: 30px;
  }
  .product-gift .product-gift__item {
    width: 100%;
    margin: 0 auto;
    list-style: none;
    display: block;
  }
  .product-gift .product-gift__item li {
    width: 100%;
    margin-bottom: 43px;
    line-height: 1;
  }
  .product-gift .product-gift__item li img {
    display: block;
    margin-bottom: 27px;
  }
  .product-gift .product-gift__item li strong {
    display: block;
    margin-bottom: 15px;
    font-weight: 500;
    font-size: 1.06rem;
  }
  .product-gift .product-gift__item li .product-gift__price {
    display: block;
    font-size: 1.44rem;
  }
  .product-gift .product-gift__item li .product-gift__price span {
    font-weight: normal;
    font-size: 0.93rem;
  }
}

.product-relation__title {
  border-bottom: 4px solid #484341;
  padding-bottom: 15px;
  margin-bottom: 20px;
  position: relative;
  line-height: 1;
  font-size: 2.38rem;
}
.product-relation__title a {
  padding: 5px 0 10px;
  display: inline-block;
  position: absolute;
  right: 0;
}
.product-relation__title a img {
  vertical-align: middle;
}

.product-relation__area {
  background-size: 105px auto;
  width: 586px;
  padding-bottom: 7px;
  margin-bottom: 83px;
  letter-spacing: 0.05em;
  line-height: 1.33;
  font-size: 0.75rem;
}
@media (max-width: 699px) {
  .product-relation__area {
    width: auto;
    margin-bottom: 38px;
  }
}

.product-relatioin-list {
  display: block;
}
@media (min-width: 700px) {
  .product-relatioin-list {
    margin-right: calc(50% - 50vw + 16px);
  }
  .product-relatioin-list li {
    width: 330px !important;
    -webkit-transform: translate(50px) !important;
            transform: translate(50px) !important;
    margin-right: 0 !important;
    padding-bottom: 0;
    border-bottom: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .product-relatioin-list .slick-slide {
    margin-left: 50px;
  }
}
@media (max-width: 699px) {
  .product-relatioin-list {
    margin: 0 -20px 140px !important;
  }
  .product-relatioin-list .slick-dots {
    bottom: -10px;
  }
  .product-relatioin-list .slick-dots li button:before {
    background: #EAEAEA;
    content: " ";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: block;
    opacity: 1;
  }
  .product-relatioin-list .slick-dots li.slick-active button:before {
    background: #FF3884;
  }
}

.product-subsc {
  margin-bottom: 145px;
}
.product-subsc .product-subsc__title {
  border-bottom: 4px solid #484341;
  padding-bottom: 15px;
  margin-bottom: 0;
  position: relative;
  line-height: 1;
  font-size: 2.38rem;
  text-align: left;
  margin-bottom: 30px;
}
.product-subsc .subsc-content {
  background: url(../img/product/detail/subscription/pic--01.webp) calc(50% + 206px) top no-repeat;
  background-size: 622px auto;
  height: 590px;
  position: relative;
}
.product-subsc .subsc-content::before {
  content: " ";
  background: url(../img/product/detail/subscription/pic--layer-01.webp) left top no-repeat;
  background-size: 100% auto;
  display: block;
  width: 181px;
  height: 98px;
  mix-blend-mode: multiply;
  position: absolute;
  top: 150px;
  left: calc(50% - 150px);
}
.product-subsc .subsc-content__text-01 {
  position: absolute;
  top: 98px;
  left: 182px;
  letter-spacing: 0.4em;
  line-height: 2.18;
  font-size: 1.06rem;
}
.product-subsc .subsc-content__text-02 {
  position: absolute;
  top: 388px;
  left: 677px;
  letter-spacing: 0.5em;
  line-height: 2.35;
  font-size: 1.06rem;
}
.product-subsc .subsc-bg {
  background: url(../img/product/detail/subscription/bgi--text.png) calc(50% + 293px) 288px no-repeat, url(../img/product/detail/subscription/pic--02.webp) center top no-repeat;
  background-size: 413px auto, cover;
  height: 422px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-bottom: 40px;
  padding-left: calc(50vw - 574px);
  padding-right: calc(50vw - 574px);
  position: relative;
}
.product-subsc .subsc-bg::before {
  content: " ";
  background: url(../img/product/detail/subscription/pic--layer-02.webp) left top no-repeat;
  background-size: 100% auto;
  width: 424px;
  height: 281px;
  display: block;
  mix-blend-mode: multiply;
  position: absolute;
  left: calc(50% + 66px);
  top: -50px;
}
.product-subsc .subsc-link {
  text-align: center;
}
.product-subsc .subsc-link p {
  margin-bottom: 40px;
  letter-spacing: 0.5em;
  font-size: 1.06rem;
}
.product-subsc .subsc-link a {
  background: url(../img/product/detail/subscription/pic--link-text.svg) center 88px no-repeat, url(../img/product/detail/subscription/ico--arrwo.svg) center 67px no-repeat, url(../img/product/detail/subscription/pic--link.png) center bottom no-repeat;
  background-size: auto, auto, 60px auto;
  width: 140px;
  height: 142px;
  display: block;
  margin: 0 auto;
  text-indent: -999px;
  overflow: hidden;
}
@media (max-width: 699px) {
  .product-subsc {
    margin-bottom: 0;
  }
  .product-subsc .product-subsc__title {
    border-bottom: 4px solid #484341;
    padding-bottom: 15px;
    margin-bottom: 0;
    position: relative;
    line-height: 1;
    font-size: 1.56rem;
  }
  .product-subsc .subsc-content__text-01 {
    display: none;
  }
  .product-subsc .subsc-content__text-02 {
    position: static;
    /*margin-top: 45px;
    margin-bottom: 45px;*/
    margin-top: 25px;
    margin-bottom: 25px;
    letter-spacing: 0.3em;
    line-height: 2.35;
    font-size: 1.06rem;
  }
  .product-subsc .subsc-content {
    background: none;
    height: auto;
  }
  .product-subsc .subsc-content::before {
    content: none;
  }
  .product-subsc .subsc-bg {
    background: url(../img/product/detail/subscription/pic--01-sp.webp) left top no-repeat;
    background-size: 100% auto;
    height: 422px;
    margin: 0 -20px;
    padding: 0;
    position: relative;
  }
  .product-subsc .subsc-bg::before {
    content: none;
  }
  .product-subsc .subsc-link {
    margin-top: -80px;
  }
  .product-subsc .subsc-link p {
    margin: 0 0px 40px;
    letter-spacing: 0.5em;
    font-weight: 500 !important;
    font-size: 1.06em;
    text-align: center;
  }
}

@media (max-width: 699px) {
  #page_homepage .product-subsc, #page_product_list .product-subsc {
    padding: 0px 20px;
  }
  #page_homepage .ec-pagerRole + .product-subsc, #page_product_list .ec-pagerRole + .product-subsc {
    margin-top: 55px;
  }
}

.product-knowledge {
  margin-bottom: 150px;
}
.product-knowledge .product-knowledge__title {
  border-bottom: 4px solid #484341;
  padding-bottom: 15px;
  margin-bottom: 20px;
  position: relative;
  line-height: 1;
  font-size: 2.38rem;
}
.product-knowledge .product-knowledge__title a {
  padding: 5px 0 10px;
  display: inline-block;
  position: absolute;
  right: 0;
}
.product-knowledge .product-knowledge__title a img {
  vertical-align: middle;
}

@media (max-width: 699px) {
  .is-pc {
    display: none;
  }
}

@media (min-width: 700px) {
  .is-sp {
    display: none;
  }
}

.ec-pager {
  padding: 0 20px;
}

/*
	その他ページ
*/
.freepage-container {
  background: url(../img/common/freepage/bgi--page-title.png) calc(50% + 582px) 195px no-repeat;
  background-size: 159px auto;
  mix-blend-mode: multiply;
}

.freepage-title {
  border-bottom: 4px solid #484341;
  padding-bottom: 15px;
  margin-bottom: 20px;
  line-height: 1;
  font-size: 2.38rem;
}

.freepage-intro-area {
  background: url(../img/common/freepage/area/bgi--01.png) 135px bottom no-repeat, url(../img/common/freepage/area/bgi--02.png) 534px 0px no-repeat;
  background-size: 116px auto, 125px auto;
  width: 950px;
  padding-bottom: 7px;
  margin-bottom: 83px;
  letter-spacing: 0.05em;
  line-height: 1.33;
  word-break: normal;
  font-size: 0.75rem;
}

.company-intro-area {
  margin-bottom: 149px;
}

.company-content {
  width: 1030px;
  margin: 0 auto;
}

.company-section .company-section-headding {
  border-left: 4px solid #F6397D;
  padding: 8px 0 8px 16px;
  margin-bottom: 36px;
  line-height: 1;
}
.company-section .company-section-headding .company-section__title {
  margin-bottom: 8px;
  letter-spacing: 0.5em;
  font-size: 1.06rem;
}
.company-section .company-section-headding .company-section__en {
  letter-spacing: 0.15rem;
  font-size: 0.75rem;
}

.company-profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 150px;
}
.company-profile .company-profile__pic {
  width: 243px;
  -o-object-fit: cover;
     object-fit: cover;
}
.company-profile .company-profile__table {
  width: 736px;
  border-top: 1px solid #E2E2E2;
  letter-spacing: 0.1em;
  font-size: 0.88rem;
}
.company-profile .company-profile__table th, .company-profile .company-profile__table td {
  border-bottom: 1px solid #E2E2E2;
}
.company-profile .company-profile__table th {
  border-right: 1px solid #E2E2E2;
  padding-left: 33px;
}
.company-profile .company-profile__table td {
  padding-left: 40px;
}

.company-business {
  margin-bottom: 138px;
}
.company-business .company-business__en {
  text-align: center;
  letter-spacing: 0.1em;
  color: #F6397D;
}
.company-business .company-business__title {
  margin-bottom: 20px;
  text-align: center;
  letter-spacing: 0.15em;
  font-size: 1.38em;
}
.company-business .company-business__pic {
  display: block;
  margin-bottom: 40px;
}
.company-business .company-business__text {
  padding: 0 100px;
}

/* page */
.life-style-calendar__title {
  position: relative;
}
.life-style-calendar__title::before {
  position: absolute;
  right: -93px;
  top: -5px;
  -webkit-transform: rotate(-74deg);
          transform: rotate(-74deg);
  content: "";
  width: 167.58px;
  height: 167.58px;
  mix-blend-mode: multiply;
  background: url(./../img/common/cmn-sec-title_icon_purple.webp) center/contain no-repeat;
}
.life-style-calendar__catch {
  width: 82.57%;
  max-width: 948px;
  margin-top: 20px;
}
.life-style-calendar__catch::before {
  position: absolute;
  bottom: -5px;
  left: 13.39%;
  content: "";
  width: 140.69px;
  height: 54.28px;
  background: url(./../img/common/pen_thick.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .life-style-calendar__catch::before {
    display: none;
  }
}
.life-style-calendar__catch::after {
  position: absolute;
  top: -14.7px;
  right: 30.9%;
  content: "";
  width: 121.86px;
  height: 46.53px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.life-style-calendar__media {
  position: relative;
}
.life-style-calendar__txt-box {
  text-align: left;
  margin-top: 105px;
  padding-top: 10px;
  padding-left: 58px;
  width: 46.6%;
}
@media (max-width: 768px) {
  .life-style-calendar__txt-box {
    padding-left: 0;
    width: 100%;
    margin-top: 50px;
  }
}
.life-style-calendar__txt-box strong {
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.5em;
}
.life-style-calendar__txt-box p {
  line-height: 1.86;
  margin-top: 35px;
}
.life-style-calendar__img-box {
  position: absolute;
  top: 0;
  right: -110px;
  width: 612px;
  height: 359px;
}
@media (max-width: 768px) {
  .life-style-calendar__img-box {
    position: static;
    width: 306px;
    height: 180px;
    margin-top: 50px;
    margin-right: 0;
    margin-left: auto;
  }
}

.life-style-oneweek {
  margin-top: 170px;
  padding-bottom: 300px;
}
@media (max-width: 768px) {
  .life-style-oneweek {
    margin-top: 100px;
  }
}
.life-style-oneweek__list {
  list-style: none;
}
.life-style-oneweek__item {
  margin-top: 127px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item {
    margin-top: 50px;
  }
}
.life-style-oneweek__media-title-box > h3 {
  position: relative;
  text-align: left;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 131px;
  line-height: 90px;
  font-weight: 600;
  color: #BCBCBC;
  opacity: 0.2;
}
@media (max-width: 768px) {
  .life-style-oneweek__media-title-box > h3 {
    font-size: 52px;
  }
}
.life-style-oneweek__media-title-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  gap: 15px;
  margin-top: -0.75rem;
}
.life-style-oneweek__media-title-box ul > li {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  font-weight: 400;
  font-size: 12px;
  line-height: 1;
}
.life-style-oneweek__media-title-box ul .is-day {
  position: relative;
}
.life-style-oneweek__media-title-box ul .is-day::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, calc(-50% + 3px)) rotate(-5deg);
          transform: translate(-50%, calc(-50% + 3px)) rotate(-5deg);
  content: "";
  width: 53px;
  height: 20px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.life-style-oneweek .label-wrap {
  text-align: left;
  height: 16px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  border-bottom: 1px solid #292525;
}
.life-style-oneweek .label {
  position: absolute;
  top: 0;
  left: 0;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: inline-block;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #FAFAF7;
  background-color: #292525;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3px 28px;
}
.life-style-oneweek .label::before {
  position: absolute;
  top: 0.1px;
  right: -4.7px;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #292525;
  border-left: 1px solid #292525;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  clip-path: polygon(100% 100%, 0 0, 0 100%);
}
.life-style-oneweek__media-img-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 8px;
}
.life-style-oneweek__media-img-wrap img {
  width: 50%;
  aspect-ratio: 1/1;
}
.life-style-oneweek__media-txt-cont {
  margin-top: 20px;
  width: 100%;
}
@media (max-width: 768px) {
  .life-style-oneweek__media-txt-cont tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.life-style-oneweek__media-txt-cont td {
  border: 1px solid #42342E;
}
.life-style-oneweek__media-txt-cont td:nth-of-type(1) {
  position: relative;
  width: 21.5%;
}
@media (max-width: 768px) {
  .life-style-oneweek__media-txt-cont td:nth-of-type(1) {
    width: 100%;
  }
}
.life-style-oneweek__media-txt-cont td:nth-of-type(1)::before {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 85px;
  height: 5.78px;
  background-color: #F6387D;
}
.life-style-oneweek__media-txt-cont td:nth-of-type(1) .--en {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 14px;
  font-weight: 600;
}
.life-style-oneweek__media-txt-cont td:nth-of-type(1) .--ja {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 14px;
}
.life-style-oneweek__media-txt-cont td:nth-of-type(2) {
  width: 66.6%;
}
@media (max-width: 768px) {
  .life-style-oneweek__media-txt-cont td:nth-of-type(2) {
    width: 100%;
    margin-top: -1px;
  }
}
.life-style-oneweek__media-txt-cont td:nth-of-type(2) > p {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  padding: 33px 42px;
  line-height: 1.86;
}
.life-style-oneweek__media-txt-cont td:nth-of-type(3) {
  position: relative;
  width: auto;
  overflow: visible;
}
@media (max-width: 768px) {
  .life-style-oneweek__media-txt-cont td:nth-of-type(3) {
    border: none;
  }
}
.life-style-oneweek__media-txt-cont td:nth-of-type(3) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
}
@media (max-width: 768px) {
  .life-style-oneweek__media-txt-cont td:nth-of-type(3) .life-style-oneweek__media-txt-deco-box {
    right: -18px;
    bottom: -36px;
  }
}
.life-style-oneweek__item:nth-of-type(1) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: 8.6px;
  bottom: -18px;
  width: 189px;
  height: 192px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(1) .life-style-oneweek__media-txt-deco-box {
    width: 94.5px;
    height: 96px;
  }
}
.life-style-oneweek__item:nth-of-type(1) td:nth-of-type(1) > img {
  width: 162.23px;
  height: 47.52px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(2) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: 0px;
  bottom: -46px;
  width: 249.35px;
  height: 165.9px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(2) .life-style-oneweek__media-txt-deco-box {
    width: 125px;
    height: 82.5px;
  }
}
.life-style-oneweek__item:nth-of-type(2) td:nth-of-type(1) > img {
  width: 188.79px;
  height: 55.3px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(3) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  left: -33px;
  bottom: -36px;
  width: 287px;
  height: 208.1px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(3) .life-style-oneweek__media-txt-deco-box {
    left: inherit;
    right: 0;
    width: 143px;
    height: 104px;
  }
}
.life-style-oneweek__item:nth-of-type(3) td:nth-of-type(1) > img {
  width: 173.79px;
  height: 55.3px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(4) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: -36px;
  bottom: -38px;
  width: 224px;
  height: 149px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(4) .life-style-oneweek__media-txt-deco-box {
    width: 112px;
    height: 74.5px;
  }
}
.life-style-oneweek__item:nth-of-type(4) td:nth-of-type(1) > img {
  width: 173.79px;
  height: 55.3px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(5) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: 38px;
  bottom: -42.4px;
  width: 159px;
  height: 134px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(5) .life-style-oneweek__media-txt-deco-box {
    width: 79.5px;
    height: 67px;
  }
}
.life-style-oneweek__item:nth-of-type(5) td:nth-of-type(1) > img {
  width: 173.79px;
  height: 55.3px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(6) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: 41px;
  bottom: -41.3px;
  width: 125px;
  height: 138px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(6) .life-style-oneweek__media-txt-deco-box {
    width: 62.5px;
    height: 69px;
  }
}
.life-style-oneweek__item:nth-of-type(6) td:nth-of-type(1) > img {
  width: 193px;
  height: 64px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(7) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: 17px;
  bottom: -85px;
  width: 171px;
  height: 205px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(7) .life-style-oneweek__media-txt-deco-box {
    width: 85.5px;
    height: 102.5px;
  }
}
.life-style-oneweek__item:nth-of-type(7) td:nth-of-type(1) > img {
  width: 193px;
  height: 64px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__item:nth-of-type(8) .life-style-oneweek__media-txt-deco-box {
  position: absolute;
  right: 58.5px;
  bottom: -226px;
  width: 148px;
  height: 336px;
}
@media (max-width: 768px) {
  .life-style-oneweek__item:nth-of-type(8) .life-style-oneweek__media-txt-deco-box {
    width: 74px;
    height: 168px;
  }
}
.life-style-oneweek__item:nth-of-type(8) td:nth-of-type(1) > img {
  width: 193px;
  height: 64px;
  -webkit-transform: rotate(-1deg);
          transform: rotate(-1deg);
  margin: 0 auto;
  margin-top: 7px;
}
.life-style-oneweek__recommend {
  margin-top: 74.5px;
}
.life-style-oneweek__recommend-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  list-style: none;
}
@media (max-width: 768px) {
  .life-style-oneweek__recommend-list {
    overflow-x: scroll;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    white-space: nowrap;
    padding-bottom: 30px;
    /* スクロールバーのトラック（背景部分）のスタイル */
    /* スクロールバーのハンドル（動かす部分）のスタイル */
  }
  .life-style-oneweek__recommend-list::-webkit-scrollbar {
    height: 5px;
  }
  .life-style-oneweek__recommend-list::-webkit-scrollbar-track {
    border-bottom: 1px solid #484341;
  }
  .life-style-oneweek__recommend-list::-webkit-scrollbar-thumb {
    background: #292525; /* ハンドルの色 */
  }
}
.life-style-oneweek__recommend-list a {
  position: relative;
  display: block;
  background-color: #fff;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 5px #eeeeeb;
          box-shadow: 0 0 5px #eeeeeb;
  text-decoration: none;
  padding: 17.7px;
  padding-bottom: 82.7px;
}
@media (max-width: 768px) {
  .life-style-oneweek__recommend-list a {
    width: 200px;
  }
}
.life-style-oneweek__recommend-list a img {
  position: absolute;
}
.life-style-oneweek__recommend-list a .--product {
  position: static;
  width: 206px;
  height: 240px;
}
.life-style-oneweek__recommend-list a .--grass {
  position: absolute;
  bottom: 17px;
  right: 28px;
  width: 20.3px;
  height: 49px;
}
.life-style-oneweek__recommend-list a .--arrow {
  position: absolute;
  bottom: 40px;
  right: 18px;
  width: 40.18px;
  height: 6.17px;
}
.life-style-oneweek__recommend-list a .--baner {
  position: absolute;
  right: 5px;
  bottom: 83px;
  width: 6.94px;
  height: 35.22px;
}
.life-style-oneweek__recommend-list a .--info {
  position: absolute;
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  top: 105px;
  right: 21px;
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
  font-size: 10px;
  letter-spacing: 0.08em;
}

.about-wine-main {
  position: relative;
}
.about-wine-main::before {
  position: absolute;
  top: 10px;
  right: -108px;
  content: "";
  width: 488px;
  height: 450px;
  background: url(./../img/common/about-wine/bgi--catch.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-main::before {
    content: none;
  }
}
.about-wine-main__title {
  position: relative;
}
.about-wine-main__title::before {
  position: absolute;
  right: -93px;
  top: -5px;
  -webkit-transform: rotate(-74deg);
          transform: rotate(-74deg);
  content: "";
  width: 167.58px;
  height: 167.58px;
  mix-blend-mode: multiply;
  background: url(./../img/common/cmn-sec-title_icon_purple.webp) center/contain no-repeat;
}
.about-wine-main__catch {
  width: 82.57%;
  max-width: 948px;
  margin-top: 20px;
}
.about-wine-main__catch::before {
  position: absolute;
  bottom: -5px;
  left: 13.39%;
  content: "";
  width: 140.69px;
  height: 54.28px;
  background: url(./../img/common/pen_thick.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-main__catch::before {
    display: none;
  }
}
.about-wine-main__catch::after {
  position: absolute;
  top: -14.7px;
  right: 30.9%;
  content: "";
  width: 121.86px;
  height: 46.53px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.about-wine-main__txt-box {
  text-align: left;
  margin-top: 105px;
  padding-top: 10px;
  padding-left: 58px;
  width: 43.55%;
}
@media (max-width: 768px) {
  .about-wine-main__txt-box {
    width: 100%;
    padding: 0;
    margin-top: 50px;
  }
}
.about-wine-main__txt-box strong {
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.5em;
}
@media (max-width: 768px) {
  .about-wine-main__txt-box strong {
    letter-spacing: 0.1em;
  }
}
.about-wine-main__txt-box p {
  line-height: 1.86;
  margin-top: 35px;
}

.about-wine-cat__catch {
  margin-top: 30px;
}
.about-wine-cat__thumb {
  margin-left: -110px;
}
.about-wine-cat__txt-box {
  text-align: right;
  margin-top: 50px;
}
@media (max-width: 768px) {
  .about-wine-cat__txt-box {
    text-align: left;
  }
}
.about-wine-cat__txt-box p {
  text-align: right;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .about-wine-cat__txt-box p {
    text-align: left;
  }
}
.about-wine-cat__txt-box strong {
  position: relative;
}
.about-wine-cat__txt-box strong::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: 50%;
  left: 0;
  -webkit-transform: translate(calc(-100% - 10px), -50%);
          transform: translate(calc(-100% - 10px), -50%);
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-cat__txt-box strong::before {
    left: inherit;
    right: 0;
    -webkit-transform: translate(calc(100% + 10px), -50%);
            transform: translate(calc(100% + 10px), -50%);
  }
}
.about-wine-cat__list {
  margin-top: 90px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: scroll;
  white-space: nowrap;
  padding-bottom: 65px;
  gap: 125px;
  /* スクロールバーのハンドル（動かす部分）のスタイル */
}
@media (max-width: 768px) {
  .about-wine-cat__list {
    gap: 20px;
  }
}
.about-wine-cat__list::-webkit-scrollbar {
  height: 1px;
}
.about-wine-cat__list::-webkit-scrollbar-thumb {
  background: #42342e; /* ハンドルの色 */
}

.about-card {
  aspect-ratio: 762/423;
  max-width: 762px;
  width: 100%;
  margin-right: 145px;
  padding-bottom: 45px;
  padding-left: 40px;
}
@media (max-width: 768px) {
  .about-card {
    min-width: 300px;
    max-width: calc(100vw - 40px);
    padding-left: 0;
    aspect-ratio: auto;
    padding-bottom: 0;
  }
}
.about-card__title {
  position: relative;
  text-align: left;
  font-size: 17px;
  border-bottom: 3px solid #42342e;
  padding: 30px 0;
  padding-left: 160px;
  line-height: 1;
}
@media (max-width: 768px) {
  .about-card__title {
    padding: 30px 0 15px 0;
  }
}
.about-card__title::before {
  position: absolute;
  left: -40px;
  bottom: -25px;
  -webkit-transform: rotate(5deg);
          transform: rotate(5deg);
  content: "";
  mix-blend-mode: multiply;
  background-blend-mode: multiply;
  width: 198.49px;
  height: 111.59px;
}
@media (max-width: 768px) {
  .about-card__title::before {
    width: 100px;
    height: 56px;
    left: inherit;
    right: 10px;
    bottom: inherit;
    top: 10px;
  }
}
.about-card__title::after {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  position: absolute;
  right: 0;
  bottom: 5px;
  font-weight: 300;
  font-size: 13px;
  letter-spacing: 0.08em;
}
.about-card__label {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid #42342e;
}
.about-card__label > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 45px;
}
.about-card__label span {
  font-size: 13px;
}
.about-card__label p {
  font-size: 13px;
}
.about-card__label p .--pc {
  display: inline-block;
}
.about-card__label img {
  display: block;
  width: 68.85px;
  height: 13.56px;
}
@media (max-width: 768px) {
  .about-card__label img {
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 55.08px;
    height: 10.84px;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
  }
}
.about-card__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #42342e;
}
@media (max-width: 768px) {
  .about-card__media {
    display: block;
  }
}
.about-card__img-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 35.3%;
  border-right: 1px solid #42342e;
  background-color: #FAFAF7;
}
@media (max-width: 768px) {
  .about-card__img-box {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #42342e;
  }
}
.about-card__img-box img {
  display: block;
  width: 202px;
  height: 217px;
  mix-blend-mode: multiply;
}
.about-card__img-box::before {
  position: absolute;
  right: 50%;
  bottom: 50%;
  -webkit-transform: translate(75%, 200%);
          transform: translate(75%, 200%);
  content: "";
  width: 140.69px;
  height: 54.28px;
  background: url(./../img/common/pen_thick.svg) center/contain no-repeat;
}
.about-card__txt-box {
  width: 64.7%;
  padding: 40px 0 50px 40px;
  text-align: left;
}
@media (max-width: 768px) {
  .about-card__txt-box {
    width: 100%;
    padding: 40px 0;
  }
}
.about-card__txt-box img {
  display: block;
  width: 86.06px;
  height: 31.71px;
}
.about-card__txt-box strong {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 13px;
  font-weight: 400;
}
.about-card__txt-box p {
  margin-top: 10px;
  white-space: initial;
}
.about-card__deco {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  position: relative;
  font-size: 10px;
  line-height: 1.3;
  letter-spacing: -0.02em;
  margin-top: 7px;
  padding-right: 17.6%;
  white-space: initial;
}
.about-card__deco::before {
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translateY(-45%);
          transform: translateY(-45%);
  content: "";
  width: 131px;
  height: 68.37px;
  background: url(./../img/common/about-wine/about-card_deco_red.svg) center/contain no-repeat;
}
.about-card.--red .about-card__title::before {
  background: url(./../img/common/title_red.webp) center/contain no-repeat, #FAFAF7;
}
.about-card.--red .about-card__title::after {
  content: "1/5";
}
.about-card.--white .about-card__title::before {
  background: url(./../img/common/title_white.webp) center/contain no-repeat, #FAFAF7;
}
.about-card.--white .about-card__title::after {
  content: "2/5";
}
.about-card.--sparkling .about-card__title::before {
  background: url(./../img/common/title_sparkling.webp) center/contain no-repeat, #FAFAF7;
}
.about-card.--sparkling .about-card__title::after {
  content: "3/5";
}
.about-card.--rose .about-card__title::before {
  background: url(./../img/common/title_rose.webp) center/contain no-repeat, #FAFAF7;
}
.about-card.--rose .about-card__title::after {
  content: "4/5";
}
.about-card.--orange .about-card__title::before {
  background: url(./../img/common/title_orange.webp) center/contain no-repeat, #FAFAF7;
}
.about-card.--orange .about-card__title::after {
  content: "5/5";
}

.about-wine-variety__inner {
  padding-top: 148px;
}
.about-wine-variety__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 55px;
  margin-top: 70px;
}
@media (max-width: 768px) {
  .about-wine-variety__media {
    display: block;
    margin-bottom: 50px;
  }
}
.about-wine-variety__img-box {
  aspect-ratio: 430/320;
  width: 37.45%;
  max-height: 320px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .about-wine-variety__img-box {
    width: 100%;
  }
}
.about-wine-variety__txt-box {
  width: 47.56%;
}
@media (max-width: 768px) {
  .about-wine-variety__txt-box {
    width: 100%;
    margin-top: 20px;
  }
}
.about-wine-variety__txt-box p {
  line-height: 1.875;
}
.about-wine-variety__list {
  list-style: none;
  max-width: 1366px;
  margin: 0 auto;
}
.about-wine-variety__list li {
  height: 173px;
  border-top: 1px solid #42342e;
  position: relative;
}
.about-wine-variety__list li:last-of-type {
  border-bottom: 1px solid #42342e;
}
.about-wine-variety__list li > a {
  height: 100%;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
}
.about-wine-variety__list li img {
  margin: 0 auto;
}
.about-wine-variety__list li span {
  display: block;
  font-size: 14px;
  line-height: 1;
  margin-top: 20px;
}
.about-wine-variety__list li .--cabernet {
  aspect-ratio: 818.98/99.98;
  width: 59.95%;
}
@media (max-width: 768px) {
  .about-wine-variety__list li .--cabernet {
    width: 80%;
  }
}
.about-wine-variety__list li .--merlot {
  aspect-ratio: 272.33/72.16;
  width: 19.93%;
}
@media (max-width: 768px) {
  .about-wine-variety__list li .--merlot {
    width: 40%;
  }
}
.about-wine-variety__list li .--pinot {
  aspect-ratio: 420.21/74.21;
  width: 30.76%;
}
@media (max-width: 768px) {
  .about-wine-variety__list li .--pinot {
    width: 60%;
  }
}
.about-wine-variety__list li .--chardonnay {
  aspect-ratio: 583.4/70.41;
  width: 42.7%;
}
@media (max-width: 768px) {
  .about-wine-variety__list li .--chardonnay {
    width: 70%;
  }
}
.about-wine-variety__list li .--sauvignon {
  aspect-ratio: 718.59/82.4;
  width: 52.6%;
}
@media (max-width: 768px) {
  .about-wine-variety__list li .--sauvignon {
    width: 80%;
  }
}
.about-wine-variety__list li .--riesling {
  aspect-ratio: 360.93/65.32;
  width: 26.42%;
}
@media (max-width: 768px) {
  .about-wine-variety__list li .--riesling {
    width: 70%;
  }
}
.about-wine-variety__list__list-item {
  cursor: pointer;
}

.about-wine-enjoy {
  padding-bottom: 200px;
}
.about-wine-enjoy__inner {
  position: relative;
  padding-top: 200px;
}
.about-wine-enjoy__thumb {
  position: relative;
  aspect-ratio: 1257/365.1;
  width: 109.5%;
  margin-top: 33px;
  margin-left: -110px;
}
.about-wine-enjoy__thumb img {
  height: 100%;
}
@media (max-width: 768px) {
  .about-wine-enjoy__thumb {
    aspect-ratio: 1257/565.1;
    width: 100%;
    margin-left: 0;
  }
}
.about-wine-enjoy__thumb::before {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: translate(5%, 43%);
          transform: translate(5%, 43%);
  content: "";
  width: 388px;
  height: 349px;
  background: url(./../img/common/about-wine/enjoy_thumb_txt.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-enjoy__thumb::before {
    width: 199px;
    height: 174.5px;
  }
}
.about-wine-enjoy__sence-title-wrap, .about-wine-enjoy__dish-title-wrap {
  text-align: left;
  margin-top: -55px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-title-wrap, .about-wine-enjoy__dish-title-wrap {
    margin-top: 0;
  }
}
.about-wine-enjoy__sence-title-box, .about-wine-enjoy__dish-title-box {
  position: relative;
  display: inline-block;
  text-align: left;
  padding: 20px 226px 40px 56.6px;
  border-left: 1px solid #484341;
  border-right: 1px solid #484341;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-title-box, .about-wine-enjoy__dish-title-box {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 20px 40px;
    margin-top: 20px;
  }
}
.about-wine-enjoy__sence-title-box h3, .about-wine-enjoy__dish-title-box h3 {
  position: relative;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 55px;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.07;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-title-box h3, .about-wine-enjoy__dish-title-box h3 {
    font-size: 32px;
  }
}
.about-wine-enjoy__sence-title-box h3::before, .about-wine-enjoy__dish-title-box h3::before {
  position: absolute;
  bottom: -27px;
  left: 25px;
  content: "";
  width: 77px;
  height: 52px;
  background: url(./../img/common/about-wine/enjoy_logo.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-title-box h3::before, .about-wine-enjoy__dish-title-box h3::before {
    display: none;
  }
}
.about-wine-enjoy__sence-title-box span, .about-wine-enjoy__dish-title-box span {
  display: block;
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 15px;
  font-weight: 700;
  margin-top: 35px;
}
.about-wine-enjoy__sence-title-box p, .about-wine-enjoy__dish-title-box p {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.3;
  position: absolute;
  bottom: 50%;
  right: 0;
  width: 195.72px;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: translateY(50%) rotate(-90deg);
          transform: translateY(50%) rotate(-90deg);
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-title-box p, .about-wine-enjoy__dish-title-box p {
    position: static;
    -webkit-transform: none;
            transform: none;
    margin-top: 20px;
    width: 100%;
  }
}
.about-wine-enjoy__sence-list, .enjoy-wine-nature__about-list {
  list-style: none;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  margin-top: 120px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-list, .enjoy-wine-nature__about-list {
    display: block;
    margin-top: 50px;
  }
}
.about-wine-enjoy__sence-item, .enjoy-wine-nature__about-item {
  width: 33.33333%;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-item, .enjoy-wine-nature__about-item {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-item:nth-of-type(2), .enjoy-wine-nature__about-item:nth-of-type(2) {
    margin-top: 40px;
  }
}
.about-wine-enjoy__sence-item:nth-of-type(2) .about-wine-enjoy__sence-img-box::after, .about-wine-enjoy__sence-item:nth-of-type(2) .enjoy-wine-nature__about-img-box::after, .enjoy-wine-nature__about-item:nth-of-type(2) .about-wine-enjoy__sence-img-box::after, .enjoy-wine-nature__about-item:nth-of-type(2) .enjoy-wine-nature__about-img-box::after {
  content: "SCENT";
  color: #fafaf7;
}
@media (max-width: 768px) {
  .about-wine-enjoy__sence-item:nth-of-type(3), .enjoy-wine-nature__about-item:nth-of-type(3) {
    margin-top: 40px;
  }
}
.about-wine-enjoy__sence-item:nth-of-type(3) .about-wine-enjoy__sence-img-box::after, .about-wine-enjoy__sence-item:nth-of-type(3) .enjoy-wine-nature__about-img-box::after, .enjoy-wine-nature__about-item:nth-of-type(3) .about-wine-enjoy__sence-img-box::after, .enjoy-wine-nature__about-item:nth-of-type(3) .enjoy-wine-nature__about-img-box::after {
  content: "TASTE";
  color: #fafaf7;
}
.about-wine-enjoy__sence-img-box, .enjoy-wine-nature__about-img-box {
  position: relative;
  margin-top: 15px;
  aspect-ratio: 310/322;
}
.about-wine-enjoy__sence-img-box::before, .enjoy-wine-nature__about-img-box::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  border-left: 6px solid #484341;
  border-bottom: 6px solid #484341;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.about-wine-enjoy__sence-img-box::after, .enjoy-wine-nature__about-img-box::after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  content: "CHANGE COLOR";
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.15em;
}
.about-wine-enjoy__sence-txt-box, .enjoy-wine-nature__about-txt-box {
  margin-top: 25px;
}
.about-wine-enjoy__sence-txt-box p, .enjoy-wine-nature__about-txt-box p {
  line-height: 1.8666;
}
.about-wine-enjoy__freely {
  margin-top: 116px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely {
    margin-top: 50px;
  }
}
.about-wine-enjoy__freely-title-wrap {
  text-align: right;
}
.about-wine-enjoy__freely-title-box {
  position: relative;
  display: inline-block;
  width: 303px;
  text-align: left;
  padding: 70px 45px 60px 25px;
  border-top: 1px solid #484341;
  border-bottom: 1px solid #484341;
  z-index: 2;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-title-box {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 20px 40px;
    width: 100%;
    border: none;
    border-left: 1px solid #484341;
    border-right: 1px solid #484341;
  }
}
.about-wine-enjoy__freely-title-box h3 {
  position: relative;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 55px;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.07;
}
.about-wine-enjoy__freely-title-box h3::before {
  position: absolute;
  bottom: -27px;
  left: 0;
  content: "";
  width: 77px;
  height: 52px;
  background: url(./../img/common/about-wine/enjoy_logo.webp) center/contain no-repeat;
}
.about-wine-enjoy__freely-title-box span {
  display: block;
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 15px;
  font-weight: 700;
  margin-top: 55px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-title-box span {
    margin-top: 35px;
  }
}
.about-wine-enjoy__freely-title-box p {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.3;
  margin-top: 60px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-title-box p {
    margin-top: 20px;
  }
}
.about-wine-enjoy__freely-thumb {
  position: relative;
  -webkit-transform: translateY(-65%);
          transform: translateY(-65%);
  z-index: 1;
  aspect-ratio: 880/450;
  width: 76.65%;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-thumb {
    width: 100%;
    -webkit-transform: none;
            transform: none;
    margin-top: 20px;
  }
}
.about-wine-enjoy__freely-media {
  -webkit-transform: translateY(-80%);
          transform: translateY(-80%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-media {
    -webkit-transform: none;
            transform: none;
    display: block;
  }
}
.about-wine-enjoy__freely-img-box {
  width: 35.88%;
  aspect-ratio: 412/354;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-img-box {
    display: none;
  }
}
.about-wine-enjoy__freely-txt-box {
  width: 44.94%;
  text-align: left;
  padding-top: 60px;
  /*strong {
      @include infotext;
      font-weight: 700;
      font-size: 17px;
  }*/
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-txt-box {
    width: 100%;
    padding-top: 30px;
  }
}
.about-wine-enjoy__freely-txt-box strong {
  position: relative;
  padding-left: 80px;
}
.about-wine-enjoy__freely-txt-box strong::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-txt-box strong::before {
    left: inherit;
    right: 0;
    -webkit-transform: translate(calc(100% + 10px), -50%);
            transform: translate(calc(100% + 10px), -50%);
  }
}
.about-wine-enjoy__freely-txt-box p {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-txt-box p {
    margin-top: 20px;
  }
}
.about-wine-enjoy__freely-txt-box p:nth-of-type(1) {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-txt-box p:nth-of-type(1) {
    margin-top: 20px;
  }
}
.about-wine-enjoy__freely-list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 55px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__freely-list {
    gap: 20px;
    margin-top: 60px;
  }
}
.about-wine-enjoy .freely-card {
  position: relative;
  width: 29%;
  border-top: 3px solid #42342e;
  border-bottom: 1px solid #42342e;
}
@media (max-width: 768px) {
  .about-wine-enjoy .freely-card {
    width: calc(50% - 10px);
  }
}
.about-wine-enjoy .freely-card::before {
  position: absolute;
  right: 0;
  top: -12px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  content: "";
  width: 42px;
  height: 8.27px;
  background: url(./../img/common/color-baner_spark.svg) center/contain no-repeat;
}
.about-wine-enjoy .freely-card:nth-child(n+4) {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .about-wine-enjoy .freely-card:nth-child(n+4) {
    margin: 0;
  }
}
@media (max-width: 768px) {
  .about-wine-enjoy .freely-card:nth-child(n+3) {
    margin-top: 30px;
  }
}
.about-wine-enjoy .freely-card__title-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px 18px;
  border-bottom: 1px solid #42342e;
}
.about-wine-enjoy .freely-card__title-box span {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  font-size: 20px;
  font-weight: 500;
}
@media (max-width: 768px) {
  .about-wine-enjoy .freely-card__title-box span {
    position: absolute;
    top: -5px;
    left: 0;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    font-size: 12px;
  }
}
.about-wine-enjoy .freely-card__img-box {
  padding: 29px 0 34px 0;
}
.about-wine-enjoy__dish {
  margin-top: 0;
}
@media (max-width: 768px) {
  .about-wine-enjoy__dish {
    margin-top: 50px;
  }
}
@media (max-width: 768px) {
  .about-wine-enjoy__dish-slider {
    margin-top: 20px;
  }
}
.about-wine-enjoy__dish-title-wrap {
  padding-left: 37px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__dish-title-wrap {
    padding-left: 0;
  }
}
.about-wine-enjoy__dish-title-box {
  padding: 20px 226px 25px 56.6px;
}
@media (max-width: 768px) {
  .about-wine-enjoy__dish-title-box {
    padding: 20px 40px;
  }
}
.about-wine-enjoy .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.about-wine-enjoy__dish-txt {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: translateY(calc(100% + 220px));
          transform: translateY(calc(100% + 220px));
  z-index: 2;
  margin-left: auto;
  width: 424px;
  padding: 40px;
  background-color: #fafaf7;
}
@media (max-width: 768px) {
  .about-wine-enjoy__dish-txt {
    width: calc(100vw - 40px);
    padding: 0;
    right: inherit;
    left: 50%;
    -webkit-transform: translate(-50%, calc(100% + 180px));
            transform: translate(-50%, calc(100% + 180px));
  }
}

.about-wine-life__inner {
  padding-top: 190px;
}
.about-wine-life__thumb {
  position: relative;
  margin-top: 30px;
}
@media (max-width: 768px) {
  .about-wine-life__thumb {
    aspect-ratio: 1257/565.1;
    width: 100%;
  }
}
.about-wine-life__thumb img {
  height: 100%;
}
.about-wine-life__thumb::before {
  position: absolute;
  top: -64px;
  right: -66px;
  content: "";
  width: 494px;
  height: 304px;
  background: url(./../img/common/about-wine/life_thumb_txt.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .about-wine-life__thumb::before {
    width: 200px;
    height: 130px;
  }
}
.about-wine-life__list {
  margin-top: 140px;
}
.about-wine-life__item:nth-child(n+2) {
  margin-top: 250px;
}
@media (max-width: 768px) {
  .about-wine-life__item:nth-child(n+2) {
    margin-top: 80px;
  }
}
.about-wine-life .life-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 55px;
}
@media (max-width: 768px) {
  .about-wine-life .life-media {
    display: block;
    padding: 0;
  }
}
.about-wine-life .life-media__img-box {
  width: 56%;
  aspect-ratio: 580/627;
}
@media (max-width: 768px) {
  .about-wine-life .life-media__img-box {
    width: 100%;
  }
}
.about-wine-life .life-media__txt-box {
  text-align: left;
  width: 34%;
}
@media (max-width: 768px) {
  .about-wine-life .life-media__txt-box {
    width: 100%;
  }
}
.about-wine-life .life-media__txt-box img {
  width: 64.77px;
  height: 111.8px;
  margin-left: auto;
  margin-right: 0;
}
@media (max-width: 768px) {
  .about-wine-life .life-media__txt-box img {
    margin-left: 0;
    margin-right: auto;
  }
}
.about-wine-life .life-media__txt-box h3 {
  position: relative;
  padding-top: 60px;
}
.about-wine-life .life-media__txt-box h3::before {
  position: absolute;
  top: 10px;
  left: 0;
  content: "";
  width: 74.02px;
  height: 28.26px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.about-wine-life .life-media__txt-box p {
  margin-top: 40px;
}
.about-wine-life .life-media:nth-of-type(2) .life-media__txt-box h3, .about-wine-life .life-media.media02 .life-media__txt-box h3 {
  padding-top: 0;
}
.about-wine-life .life-media:nth-of-type(2) .life-media__txt-box h3::before, .about-wine-life .life-media.media02 .life-media__txt-box h3::before {
  position: absolute;
  top: -20px;
  left: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  content: "";
  width: 74.02px;
  height: 28.26px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.about-wine-life .life-media:nth-of-type(2) .life-media__img-box, .about-wine-life .life-media.media02 .life-media__img-box {
  position: relative;
  aspect-ratio: 580/396;
}
.about-wine-life .life-media:nth-of-type(2) .life-media__img-box .life-media__title-img, .about-wine-life .life-media.media02 .life-media__img-box .life-media__title-img {
  position: absolute;
  top: -16px;
  left: 19px;
  width: 64.77px;
  height: 111.8px;
}
@media (max-width: 768px) {
  .about-wine-life .life-media:nth-of-type(2) .life-media__img-box .life-media__title-img, .about-wine-life .life-media.media02 .life-media__img-box .life-media__title-img {
    top: 20px;
  }
}
.about-wine-life .life-media:nth-of-type(2) .life-media__img-box span, .about-wine-life .life-media.media02 .life-media__img-box span {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: block;
  text-align: left;
  font-size: 12px;
  letter-spacing: 0.15em;
}
@media (max-width: 768px) {
  .about-wine-life .life-media:nth-of-type(3) .life-media__txt-box, .about-wine-life .life-media.media03 .life-media__txt-box {
    margin-top: 20px;
  }
}
.about-wine-life .life-media:nth-of-type(3) .life-media__txt-box h3, .about-wine-life .life-media.media03 .life-media__txt-box h3 {
  padding-top: 30px;
}
.about-wine-life .life-media:nth-of-type(3) .life-media__txt-box h3::before, .about-wine-life .life-media.media03 .life-media__txt-box h3::before {
  position: absolute;
  top: -10px;
  left: 0;
  content: "";
  width: 74.02px;
  height: 28.26px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.about-wine-life .life-media:nth-of-type(3) .life-media__txt-box p:nth-of-type(2), .about-wine-life .life-media.media03 .life-media__txt-box p:nth-of-type(2) {
  margin-top: 0;
}
.about-wine-life .life-media:nth-of-type(3) .life-media__img-box, .about-wine-life .life-media.media03 .life-media__img-box {
  position: relative;
  aspect-ratio: 580/396;
}
.about-wine-life .life-media:nth-of-type(3) .life-media__img-box .life-media__title-img, .about-wine-life .life-media.media03 .life-media__img-box .life-media__title-img {
  position: absolute;
  top: -16px;
  left: 19px;
  width: 64.77px;
  height: 111.8px;
}
@media (max-width: 768px) {
  .about-wine-life .life-media:nth-of-type(3) .life-media__img-box .life-media__title-img, .about-wine-life .life-media.media03 .life-media__img-box .life-media__title-img {
    top: inherit;
    bottom: 40px;
    left: inherit;
    right: 20px;
  }
}
.about-wine-life .life-media:nth-of-type(3) .life-media__img-box span, .about-wine-life .life-media.media03 .life-media__img-box span {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: block;
  text-align: left;
  font-size: 12px;
  letter-spacing: 0.15em;
}
.about-wine-life__thumb--bottom {
  position: relative;
  margin-top: 250px;
  width: 100%;
  aspect-ratio: 1148/579;
  margin-bottom: 155px;
}
@media (max-width: 768px) {
  .about-wine-life__thumb--bottom {
    aspect-ratio: 1148/979;
    margin: 50px 0;
  }
}
.about-wine-life__thumb--bottom img {
  height: 100%;
}
.about-wine-life__thumb--bottom::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: url(./../img/common/about-wine/life_thumb_txt_bottom.svg) center/contain no-repeat;
}
.about-wine-life__item-sub {
  margin-top: 120px;
}
@media (max-width: 768px) {
  .about-wine-life__item-sub {
    margin-top: 60px;
  }
}
.about-wine-life__slide {
  padding-left: 55px;
  padding-right: 0;
  margin-bottom: 26px;
}
.about-wine-life__slide .slick-slide {
  width: 470px;
  margin-right: 40px;
}
@media (max-width: 768px) {
  .about-wine-life__slide {
    padding: 0;
  }
  .about-wine-life__slide .slick-slide {
    width: 100vw;
    margin-right: 20px;
  }
}
.about-wine-life__content {
  padding: 0 55px;
  display: -ms-grid;
  display: grid;
  grid-gap: 90px;
  -ms-grid-columns: 1fr 90px 1fr;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .about-wine-life__content {
    padding: 0;
    display: block;
  }
}

.about-wine-modal {
  width: 550px;
  border: 1px solid #707070;
  padding: 20px 35px 30px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-color: #fff;
  position: absolute;
  z-index: 1;
  top: 150px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: none;
}
.about-wine-modal__image {
  width: 192px;
}
.about-wine-modal__content {
  width: 282px;
  font-size: 0.88rem;
  letter-spacing: 1.26px;
}
.about-wine-modal__type {
  width: 157px;
  margin-left: -30px !important;
  margin-right: auto !important;
}
.about-wine-modal__banner {
  height: 8px;
  width: auto;
  margin-left: 0 !important;
  margin-right: auto !important;
}
.about-wine-modal__title {
  font-size: 0.69rem;
  letter-spacing: 5.5px;
  margin-top: 12px;
  margin-bottom: 15px;
  text-align: left;
}
@media (max-width: 768px) {
  .about-wine-modal {
    display: none;
  }
}

.cmn-contents-wrap {
  max-width: 1032px;
  margin: 0 auto;
  padding: 0 52px;
}
@media (max-width: 768px) {
  .cmn-contents-wrap {
    padding: 0;
  }
}

.enjoy-wine-main::before {
  position: absolute;
  top: 64px;
  right: 190px;
  content: "";
  width: 690px;
  height: 545px;
  background: url(./../img/common/enjoy-wine/bgi--catch.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .enjoy-wine-main::before {
    content: none;
  }
}
.enjoy-wine-main .about-wine-main__title::before {
  content: none;
}

.enjoy-wine-nature__catch {
  position: relative;
  margin-top: 30px;
  padding-bottom: 240px;
}
.enjoy-wine-nature__catch::before {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: translate(50%, 0) rotate(27deg);
          transform: translate(50%, 0) rotate(27deg);
  content: "";
  width: 300.37px;
  height: 843.67px;
  background: url(./../img/common/enjoy-wine/nature_catch_bottle.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__catch::before {
    right: 50px;
    width: 100px;
    height: 280px;
  }
}
.enjoy-wine-nature__thumb {
  margin-left: -110px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__thumb {
    margin-left: 0;
  }
}
.enjoy-wine-nature__catch-desc {
  text-align: left;
  width: 59.3%;
  margin-top: 90px;
  margin-left: 95px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__catch-desc {
    width: 100%;
    margin: 0 auto;
    margin-top: 20px;
  }
}
.enjoy-wine-nature__catch-desc h3 {
  position: relative;
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.5em;
  margin-bottom: 95px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__catch-desc h3 {
    letter-spacing: 0.1em;
    margin-bottom: 20px;
  }
}
.enjoy-wine-nature__catch-desc h3::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: 0;
  left: -24px;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.enjoy-wine-nature__catch-desc p:nth-of-type(3) {
  position: relative;
  margin-top: 80px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__catch-desc p:nth-of-type(3) {
    margin-top: 100px;
  }
}
.enjoy-wine-nature__catch-desc p:nth-of-type(3)::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 111.62px;
  height: 66.75px;
  -webkit-transform: translate(-45%, -80%);
          transform: translate(-45%, -80%);
  background: url(./../img/common/enjoy-wine/nature_desc_deco01.svg) center/contain no-repeat;
}
.enjoy-wine-nature__match > p {
  width: 67.33%;
  margin: 0 auto;
  margin-top: 75px;
  margin-bottom: 63px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__match > p {
    width: 100%;
    margin-top: 20px;
  }
}
.enjoy-wine-nature__about-thumb {
  margin-top: 80px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__about-thumb {
    margin-top: 20px;
  }
}
.enjoy-wine-nature__about-thumb-desc > img {
  aspect-ratio: 388.81/139.15;
  width: 33.79%;
  margin: 0 auto;
  margin-top: 30px;
}
.enjoy-wine-nature__about-thumb-desc p {
  width: 60.62%;
  margin: 0 auto;
  margin-top: 15px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__about-thumb-desc p {
    width: 100%;
  }
}
.enjoy-wine-nature__about-item {
  position: relative;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__about-item {
    text-align: center;
  }
}
.enjoy-wine-nature__about-item::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: -5px;
  left: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__about-item::before {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
.enjoy-wine-nature__about-item:nth-of-type(1) .enjoy-wine-nature__about-img-box::after {
  content: "HOW TO RAISE";
}
.enjoy-wine-nature__about-item:nth-of-type(2) .enjoy-wine-nature__about-img-box::after {
  content: "HOW TO RAISE";
}
.enjoy-wine-nature__about-item:nth-of-type(3) .enjoy-wine-nature__about-img-box::after {
  content: "SCENT AND TASTE";
}
@media (max-width: 768px) {
  .enjoy-wine-nature__about-img-box {
    text-align: left;
  }
}
.enjoy-wine-nature__about-img-box img {
  height: 100%;
}
.enjoy-wine-nature__about-img-box::after {
  color: #fafaf7;
}
.enjoy-wine-nature__about-img-box::before {
  border-left: none;
  border-bottom: 6px solid #f6397d;
}
.enjoy-wine-nature__mark {
  margin-top: 120px;
}
.enjoy-wine-nature__mark-title {
  padding-bottom: 25px;
  text-align: left;
}
.enjoy-wine-nature__mark-title > img {
  margin-left: 0 !important;
  margin-bottom: 40px !important;
}
.enjoy-wine-nature__mark .label-wrap {
  text-align: left;
  height: 16px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  border-bottom: 1px solid #292525;
  margin-top: 70px;
}
.enjoy-wine-nature__mark .label {
  position: absolute;
  top: 0;
  left: 0;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: inline-block;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #fafaf7;
  background-color: #292525;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3px 28px;
}
.enjoy-wine-nature__mark .label::before {
  position: absolute;
  top: 0.1px;
  right: -4.7px;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #292525;
  border-left: 1px solid #292525;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  clip-path: polygon(100% 100%, 0 0, 0 100%);
}
.enjoy-wine-nature__mark-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding: 0 0 20px 0;
  border-bottom: 1px solid #292525;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__mark-list {
    display: block;
  }
}
.enjoy-wine-nature__mark-item {
  width: 25%;
  padding: 19px 25px;
  border-right: 1px solid #484341;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__mark-item {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #484341;
    padding-top: 35px;
  }
}
.enjoy-wine-nature__mark-item:last-of-type {
  border: none;
}
.enjoy-wine-nature__mark-item.--ab img {
  width: 63px;
  height: 88px;
}
.enjoy-wine-nature__mark-item.--leaf img {
  width: 104px;
  height: 70px;
}
.enjoy-wine-nature__mark-item.--deme img {
  width: 114px;
  height: 53px;
}
.enjoy-wine-nature__mark-item.--terra img {
  width: 64px;
  height: 87px;
}
.enjoy-wine-nature__mark-img-box {
  height: 87px;
}
.enjoy-wine-nature__mark-img-box img {
  height: 100%;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.enjoy-wine-nature__mark-txt-box {
  margin-top: 20px;
}
.enjoy-wine-nature__mark-txt-box strong {
  display: block;
  height: 68px;
  line-height: 1.25;
}
.enjoy-wine-nature__tech {
  margin-top: 240px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech {
    margin-top: 100px;
  }
}
.enjoy-wine-nature__tech-table {
  text-align: left;
  width: 100%;
  margin-top: 60px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-table {
    margin-top: 40px;
  }
}
.enjoy-wine-nature__tech-table ul {
  list-style: none;
}
.enjoy-wine-nature__tech-table .req-list > li {
  padding: 15px 0;
}
.enjoy-wine-nature__tech-table .req-list > li:nth-of-type(1) {
  border-bottom: 1px solid #484341;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.enjoy-wine-nature__tech-table td {
  padding: 20px 45px;
  border: 1px solid #484341;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-table td {
    padding: 20px 0;
  }
}
.enjoy-wine-nature__tech-table td p {
  text-align: center;
}
.enjoy-wine-nature__tech-table td:nth-of-type(1) {
  width: 30%;
  border-left: none;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-table td:nth-of-type(1) {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    border-right: none;
    border-bottom: none;
  }
}
.enjoy-wine-nature__tech-table td:nth-of-type(2) {
  width: 70%;
  border-right: none;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-table td:nth-of-type(2) {
    border-left: none;
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.enjoy-wine-nature__tech-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 44px 1fr 44px 1fr;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 44px;
  list-style: none;
  margin-top: 225px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-list {
    display: block;
    margin-top: 90px;
  }
}
.enjoy-wine-nature__tech-item {
  position: relative;
  padding: 50px 25px 30px 25px;
  border: 1px solid #282525;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-item {
    padding: 25px 12.5px 15px 12.5px;
  }
}
.enjoy-wine-nature__tech-item::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 199px;
  height: 143px;
  -webkit-transform: translate(-17%, -82%) rotate(-3deg);
          transform: translate(-17%, -82%) rotate(-3deg);
  background: url(./../img/common/enjoy-wine/nature_tech_free.webp) center/contain no-repeat;
  z-index: -1;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-item::before {
    left: inherit;
    right: 0;
    width: 100px;
    height: 71.5px;
    -webkit-transform: translate(0, -70%);
            transform: translate(0, -70%);
  }
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-item:nth-child(n+2) {
    margin-top: 80px;
  }
}
.enjoy-wine-nature__tech-item img {
  width: 95.42px;
  height: 87.44px;
  margin: 0 auto;
  margin-top: 45px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-item img {
    margin-top: 20px;
  }
}
.enjoy-wine-nature__tech-item p {
  margin-top: 45px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__tech-item p {
    margin-top: 20px;
  }
}
.enjoy-wine-nature__tech-item .label-wrap {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  width: 100%;
  text-align: left;
  height: 16px;
}
.enjoy-wine-nature__tech-item .label {
  position: absolute;
  top: 0;
  left: 0;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: inline-block;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #fafaf7;
  background-color: #292525;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3px 28px;
}
.enjoy-wine-nature__tech-item .label::before {
  position: absolute;
  top: 0.1px;
  right: -4.7px;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #292525;
  border-left: 1px solid #292525;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  clip-path: polygon(100% 100%, 0 0, 0 100%);
}
.enjoy-wine-nature__methods {
  margin-top: 220px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods {
    margin-top: 100px;
  }
}
.enjoy-wine-nature__methods-list {
  list-style: none;
}
.enjoy-wine-nature__methods-item {
  position: relative;
  padding-top: 138px;
  text-align: left;
  margin-top: 120px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods-item {
    padding: 0;
    margin-top: 40px;
  }
}
.enjoy-wine-nature__methods-item-label {
  position: absolute;
  top: 0;
  left: 32px;
  display: inline-block;
  width: 220px;
  border: 1px solid #42342e;
  padding: 21px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods-item-label {
    position: relative;
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    left: 0;
  }
}
.enjoy-wine-nature__methods-item-label::before {
  position: absolute;
  top: 5px;
  left: -13px;
  content: "";
  width: 84px;
  height: 60px;
  -webkit-transform: rotate(2deg);
          transform: rotate(2deg);
  background: url(./../img/common/enjoy-wine/nature_methods_enjoy.webp) center/contain no-repeat;
}
.enjoy-wine-nature__methods-item-label strong {
  display: block;
  margin-top: 40px;
}
.enjoy-wine-nature__methods-item-label strong span {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
}
.enjoy-wine-nature__methods-item-label p {
  font-family: corporate-a, serif;
  font-style: normal;
  font-weight: 300;
  letter-spacing: -0.02em;
  line-height: 1.3;
  margin-top: 70px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods-item-label p {
    margin-top: 20px;
  }
}
.enjoy-wine-nature__methods-txt-box {
  position: relative;
  width: 59.66%;
  margin-top: 50px;
  margin-left: auto;
  margin-right: 0;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods-txt-box {
    width: 100%;
    margin-top: 20px;
  }
}
.enjoy-wine-nature__methods-txt-box::before {
  position: absolute;
  content: "";
  width: 111.45px;
  height: 42.55px;
  top: -5px;
  left: -24px;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.enjoy-wine-nature__methods-txt-box p {
  margin-top: 50px;
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods-txt-box p {
    margin-top: 20px;
  }
}
@media (max-width: 768px) {
  .enjoy-wine-nature__methods-thumb {
    margin-top: 20px;
  }
}

.enjoy-wine-order {
  margin-top: 290px;
}
@media (max-width: 768px) {
  .enjoy-wine-order {
    margin-top: 100px;
  }
}
.enjoy-wine-order__list {
  list-style: none;
  width: 63.75%;
  margin: 0 auto;
  margin-top: 95px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__list {
    width: 100%;
    margin-top: 100px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.enjoy-wine-order__item {
  border: 1px solid #42342e;
  width: 390px;
  position: relative;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item {
    width: 100%;
  }
}
.enjoy-wine-order__item .label-wrap {
  text-align: left;
  height: 16px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.enjoy-wine-order__item .label {
  position: absolute;
  top: 0;
  left: 0;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: inline-block;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #fafaf7;
  background-color: #292525;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3px 28px;
}
.enjoy-wine-order__item .label::before {
  position: absolute;
  top: 0.1px;
  right: -4.7px;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #292525;
  border-left: 1px solid #292525;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  clip-path: polygon(100% 100%, 0 0, 0 100%);
}
.enjoy-wine-order__item p {
  text-align: center;
  padding: 18px 0 35px 0;
}
.enjoy-wine-order__item:nth-child(n+2) {
  margin-top: 17px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-child(n+2) {
    margin-top: 35px;
  }
}
.enjoy-wine-order__item:nth-child(even) {
  margin-left: auto;
  margin-right: 0;
}
.enjoy-wine-order__item:nth-child(even) .label {
  left: inherit;
  right: 0;
}
.enjoy-wine-order__item:nth-child(even) .label::before {
  left: -4.7px;
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
}
.enjoy-wine-order__item::after {
  position: absolute;
  content: "";
  z-index: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.enjoy-wine-order__item:nth-of-type(1)::after {
  width: 77px;
  height: 174px;
  background-image: url(./../img/common/enjoy-wine/owder_deco01.webp);
  top: -80px;
  left: -80px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-of-type(1)::after {
    top: 0;
    left: 0;
    height: 120px;
  }
}
.enjoy-wine-order__item:nth-of-type(2)::after {
  width: 430px;
  height: 611px;
  background-image: url(./../img/common/enjoy-wine/owder_deco02.webp);
  top: -416px;
  right: -400px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-of-type(2)::after {
    width: 100px;
    height: 150px;
    right: 0;
    top: -20px;
  }
}
.enjoy-wine-order__item:nth-of-type(3)::after {
  width: 282px;
  height: 240px;
  background-image: url(./../img/common/enjoy-wine/owder_deco03.webp);
  top: -60px;
  left: -200px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-of-type(3)::after {
    width: 140px;
    height: 120px;
    top: 0;
    left: 0;
  }
}
.enjoy-wine-order__item:nth-of-type(4)::after {
  width: 243px;
  height: 218px;
  background-image: url(./../img/common/enjoy-wine/owder_deco04.webp);
  top: -50px;
  right: -300px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-of-type(4)::after {
    width: 120px;
    height: 105px;
    top: 0;
    right: 0;
  }
}
.enjoy-wine-order__item:nth-of-type(5)::after {
  width: 260px;
  height: 202px;
  background-image: url(./../img/common/enjoy-wine/owder_deco05.webp);
  top: 65px;
  left: -200px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-of-type(5)::after {
    width: 130px;
    height: 100px;
    top: 0;
    left: -20px;
  }
}
.enjoy-wine-order__item:nth-of-type(6)::after {
  width: 187px;
  height: 120px;
  background-image: url(./../img/common/enjoy-wine/owder_deco06.webp);
  top: 27px;
  right: -128px;
}
@media (max-width: 768px) {
  .enjoy-wine-order__item:nth-of-type(6)::after {
    width: 150px;
    height: 100px;
    top: 0;
    right: 0;
  }
}

.enjoy-wine-glass {
  position: relative;
  margin-top: 280px;
  padding-bottom: 400px;
}
@media (max-width: 768px) {
  .enjoy-wine-glass {
    margin-top: 100px;
    padding-bottom: 180px;
  }
}
.enjoy-wine-glass::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 614px;
  height: 310px;
  background: url(./../img/common/enjoy-wine/glass_txt_bg.webp) center/contain no-repeat;
  z-index: 2;
  mix-blend-mode: multiply;
}
@media (max-width: 768px) {
  .enjoy-wine-glass::before {
    width: 400px;
    height: 200px;
    bottom: 5%;
  }
}
.enjoy-wine-glass__thumb {
  position: relative;
  width: 100%;
  aspect-ratio: 1032/404;
  margin-top: 65px;
}
.enjoy-wine-glass__txt-box {
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  bottom: 0;
  right: 50px;
  -webkit-transform: translateY(calc(100% - 160px));
          transform: translateY(calc(100% - 160px));
  width: 45.15%;
  padding: 140px 70px 0 70px;
  background-color: #fafaf7;
}
@media (max-width: 768px) {
  .enjoy-wine-glass__txt-box {
    position: static;
    padding: 0;
    margin-top: 20px;
    width: 100%;
    -webkit-transform: none;
            transform: none;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.enjoy-wine-glass__txt-box::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: 48.3px;
  left: 70px;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}

.glass-list {
  margin-top: 40px;
  padding-bottom: 230px;
}
@media (max-width: 768px) {
  .glass-list {
    padding-bottom: 100px;
  }
}
.glass-list__title-box, .rec-wine__title-box, .company-business__title-box, .company-profile__title-box {
  position: relative;
  text-align: left;
  padding-left: 30px;
  height: 61px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.glass-list__title-box::before, .rec-wine__title-box::before, .company-business__title-box::before, .company-profile__title-box::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #f6397d;
}
.glass-list__title-box h3, .rec-wine__title-box h3, .company-business__title-box h3, .company-profile__title-box h3 {
  letter-spacing: 0.5em;
  font-size: 17px;
}
.glass-list__title-box span, .rec-wine__title-box span, .company-business__title-box span, .company-profile__title-box span {
  display: block;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  line-height: 1.16;
}
.glass-list ul {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 136px;
  margin-top: 60px;
}
@media (max-width: 768px) {
  .glass-list ul {
    display: block;
    gap: 0;
    margin-top: 20px;
  }
}
.glass-list li {
  padding-bottom: 25px;
  border-bottom: 1px solid #42342E;
}
@media (max-width: 768px) {
  .glass-list li:nth-child(n+2) {
    margin-top: 40px;
  }
}
.glass-list__txt-box {
  text-align: left;
  margin-top: 10px;
}
.glass-list__txt-box strong {
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 24px;
}
.glass-list__txt-box strong span {
  font-size: 13px;
}

.wine-lover-main {
  position: relative;
}
.wine-lover-main::before {
  position: absolute;
  top: -152px;
  right: 76px;
  content: "";
  width: 685px;
  height: 663px;
  background: url(./../img/common/wine-lover/bgi--catch.webp) center/contain no-repeat;
  z-index: 1;
}
@media (max-width: 768px) {
  .wine-lover-main::before {
    content: none;
  }
}
.wine-lover-main .about-wine-main__title::before {
  content: none;
}

.wine-lover__nav-list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 29px;
  padding-bottom: 26px;
}
@media (max-width: 768px) {
  .wine-lover__nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
  }
}
.wine-lover__nav-list li {
  position: relative;
  width: 25%;
  background-color: #fafaf7;
}
@media (max-width: 768px) {
  .wine-lover__nav-list li {
    width: calc(50% - 10px);
  }
}
.wine-lover__nav-list li::before {
  position: absolute;
  bottom: -26px;
  content: "";
  width: 6.47px;
  height: 40.18px;
  background: url(./../img/common/wine-lover/nav_arrow_bottom.svg) center/contain no-repeat;
  z-index: -1;
}
@media (max-width: 768px) {
  .wine-lover__nav-list li::before {
    display: none;
  }
}
.wine-lover__nav-list li::after {
  position: absolute;
  top: -82px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 104px;
  height: 114px;
  background: url(./../img/common/wine-lover/nav_key_alone.webp) center/contain no-repeat;
  z-index: -1;
}
@media (max-width: 768px) {
  .wine-lover__nav-list li::after {
    z-index: 2;
    top: inherit;
    right: 0;
    bottom: 0;
    left: inherit;
  }
}
.wine-lover__nav-list li.--alone::after {
  -webkit-transform: translateX(-50%) rotate(-10deg);
          transform: translateX(-50%) rotate(-10deg);
}
@media (max-width: 768px) {
  .wine-lover__nav-list li.--alone::after {
    width: 50px;
    height: 57px;
    top: inherit;
    right: -10px;
    bottom: -10px;
    left: inherit;
    -webkit-transform: none;
            transform: none;
  }
}
.wine-lover__nav-list li.--love::after {
  width: 51px;
  height: 114px;
  top: -90px;
  background: url(./../img/common/wine-lover/nav_key_love.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine-lover__nav-list li.--love::after {
    width: 25px;
    height: 57px;
    top: inherit;
    right: -10px;
    bottom: -10px;
    left: inherit;
    -webkit-transform: none;
            transform: none;
  }
}
.wine-lover__nav-list li.--camp::after {
  width: 87px;
  height: 114px;
  top: -90px;
  background: url(./../img/common/wine-lover/nav_key_camp.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine-lover__nav-list li.--camp::after {
    width: 43.5px;
    height: 57px;
    top: inherit;
    right: -10px;
    bottom: -10px;
    left: inherit;
    -webkit-transform: none;
            transform: none;
  }
}
.wine-lover__nav-list li.--party::after {
  width: 91.08px;
  height: 104.53px;
  top: -90px;
  background: url(./../img/common/wine-lover/nav_key_party.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .wine-lover__nav-list li.--party::after {
    width: 45px;
    height: 52px;
    top: inherit;
    right: -10px;
    bottom: -10px;
    left: inherit;
    -webkit-transform: none;
            transform: none;
  }
}
.wine-lover__nav-list a {
  display: block;
  text-decoration: none;
  padding: 52px 0;
  border: 1px solid #282525;
  font-size: 17px;
  line-height: 1;
}
@media (max-width: 768px) {
  .wine-lover__nav-list a {
    padding: 30px 0;
  }
}
.wine-lover__rec {
  padding-bottom: 250px;
}

.rec-cont {
  margin-top: 130px;
}
@media (max-width: 768px) {
  .rec-cont {
    margin-top: 100px;
  }
}
.rec-cont__title-box {
  padding-bottom: 45px;
}
.rec-cont__title-box h3 {
  position: relative;
}
.rec-cont__title-box h3::before {
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 0;
  left: 50%;
  content: "";
  width: 154px;
  height: 170px;
}
.rec-cont.--alone h3::before {
  -webkit-transform: translate(-50%, -50%) rotate(-10deg);
          transform: translate(-50%, -50%) rotate(-10deg);
  background: url(./../img/common/wine-lover/nav_key_alone.webp) center/contain no-repeat;
}
.rec-cont.--love h3::before {
  background: url(./../img/common/wine-lover/nav_key_love.webp) center/contain no-repeat;
}
.rec-cont.--camp h3::before {
  background: url(./../img/common/wine-lover/nav_key_camp.webp) center/contain no-repeat;
}
.rec-cont.--party h3::before {
  background: url(./../img/common/wine-lover/nav_key_party.webp) center/contain no-repeat;
}
.rec-cont .label-wrap {
  text-align: left;
  height: 16px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  border-bottom: 1px solid #292525;
  margin-top: 55px;
}
.rec-cont .label {
  position: absolute;
  top: 0;
  left: 0;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: inline-block;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #fafaf7;
  background-color: #292525;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3px 28px;
}
.rec-cont .label::before {
  position: absolute;
  top: 0.1px;
  right: -4.7px;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #292525;
  border-left: 1px solid #292525;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  clip-path: polygon(100% 100%, 0 0, 0 100%);
}
.rec-cont__card-list {
  list-style: none;
  gap: 14px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 14px 1fr 14px 1fr 14px 1fr 14px 1fr;
  grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 768px) {
  .rec-cont__card-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    white-space: nowrap;
    overflow-x: scroll;
    padding-bottom: 20px;
    /* スクロールバーのトラック（背景部分）のスタイル */
    /* スクロールバーのハンドル（動かす部分）のスタイル */
  }
  .rec-cont__card-list::-webkit-scrollbar {
    height: 5px;
  }
  .rec-cont__card-list::-webkit-scrollbar-track {
    border-bottom: 1px solid #000;
  }
  .rec-cont__card-list::-webkit-scrollbar-thumb {
    background: #292525; /* ハンドルの色 */
  }
}
.rec-cont__card {
  position: relative;
  padding-top: 65px;
}
@media (max-width: 768px) {
  .rec-cont__card {
    width: 250px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.rec-cont__card::before {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  mix-blend-mode: multiply;
  top: 10px;
}
@media (max-width: 768px) {
  .rec-cont__card::before {
    top: 0;
  }
}
.rec-cont__card .rec-cont__card-img-cont::after {
  position: absolute;
  right: -6px;
  bottom: 85px;
  content: "";
  width: 25.05px;
  height: 4.93px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.rec-cont__card a {
  text-decoration: none;
}
.rec-cont__card p {
  padding: 0 13px;
}
@media (max-width: 768px) {
  .rec-cont__card p {
    white-space: normal;
  }
}
.rec-cont__card.--red::before {
  width: 114px;
  height: 83px;
  background: url(./../img/common/title_red.webp) center/contain no-repeat;
}
.rec-cont__card.--red .rec-cont__card-img-cont::after {
  background: url(./../img/common/color-baner_red.svg) center/contain no-repeat;
}
.rec-cont__card.--white::before {
  top: -2px;
  width: 148px;
  height: 97px;
  background: url(./../img/common/title_white.webp) center/contain no-repeat;
}
.rec-cont__card.--white .rec-cont__card-img-cont::after {
  background: url(./../img/common/color-baner_white.svg) center/contain no-repeat;
}
.rec-cont__card.--spark::before {
  top: -25px;
  width: 222px;
  height: 152px;
  background: url(./../img/common/title_sparkling.webp) center/contain no-repeat;
}
.rec-cont__card.--spark .rec-cont__card-img-cont::after {
  background: url(./../img/common/color-baner_spark.svg) center/contain no-repeat;
}
.rec-cont__card.--rose::before {
  width: 122px;
  height: 87px;
  background: url(./../img/common/title_rose.webp) center/contain no-repeat;
}
.rec-cont__card.--rose .rec-cont__card-img-cont::after {
  background: url(./../img/common/color-baner_rose.svg) center/contain no-repeat;
}
.rec-cont__card.--orange::before {
  top: -5px;
  width: 152px;
  height: 106px;
  background: url(./../img/common/title_orange.webp) center/contain no-repeat;
}
.rec-cont__card.--orange .rec-cont__card-img-cont::after {
  background: url(./../img/common/color-baner_orange.svg) center/contain no-repeat;
}
.rec-cont__card-img-cont {
  position: relative;
  margin-top: 20px;
  padding: 12px;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 8px #e6e4df;
          box-shadow: 0 0 8px #e6e4df;
  border-radius: 3px;
}
.rec-cont__card-img-cont .rec-cont__card-txt-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 63px;
}
@media (max-width: 768px) {
  .rec-cont__card-img-cont .rec-cont__card-txt-box {
    height: auto;
  }
}
.rec-cont__card-img-cont .rec-cont__card-txt-box::before {
  position: absolute;
  right: 12px;
  bottom: -7px;
  content: "";
  height: 28.58px;
  width: 4.6px;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  background: url(./../img/common/wine-lover/nav_arrow_bottom.svg) center/contain no-repeat;
}
.rec-cont__card-img-cont .rec-cont__card-txt-box strong {
  display: block;
  margin-top: 10px;
  text-align: left;
  font-size: 14px;
  line-height: 1;
  white-space: normal;
}
.rec-cont__card-img-cont .rec-cont__card-txt-box span {
  display: block;
  text-align: left;
  font-size: 14px;
  line-height: 1;
}

.choose-wine-today__inner {
  margin-top: 100px;
}
.choose-wine-today .choose-wine {
  position: relative;
  margin-top: 80px;
}
.choose-wine-today .choose-wine__title-box {
  position: relative;
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  text-align: left;
  margin-bottom: 55px;
}
.choose-wine-today .choose-wine__title-box strong {
  display: block;
  font-weight: 700;
  font-size: 17px;
  letter-spacing: 0.5em;
}
.choose-wine-today .choose-wine__title-box::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: -5px;
  left: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.choose-wine-today .choose-wine__question-list {
  text-align: center;
  margin: auto;
  gap: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.choose-wine-today .choose-wine ul li {
  width: 33.3333%;
  list-style: none;
}
.choose-wine-today h4 {
  width: 50%;
  clear: both;
  margin: auto;
  padding: 20px;
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  color: #fff;
  text-align: center;
  background-color: #c00003;
}
.choose-wine-today #q_06 span,
.choose-wine-today #q_07 span {
  display: block;
  width: 100%;
}
.choose-wine-today #q_06 a,
.choose-wine-today #q_07 a {
  display: block;
  width: 100%;
  text-align: center;
}

/* 初期非表示要素のスタイル */
.hidden {
  display: block; /* 要素をblockとして表示しつつも見えないようにする */
  opacity: 0; /* 完全に透明 */
  margin-top: 30px; /* 画面の下からの位置 */
}

.rec-catch__thumb {
  margin-top: 200px;
}
.rec-catch__media {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 95px;
}
@media (max-width: 768px) {
  .rec-catch__media {
    display: block;
  }
}
.rec-catch__img-box {
  position: absolute;
  left: 19%;
  top: -140px;
  width: 211.77px;
  height: 291.53px;
}
@media (max-width: 768px) {
  .rec-catch__img-box {
    display: none;
  }
}
.rec-catch__txt-box {
  width: 56.62%;
  margin-top: 55px;
  margin-left: 43.38%;
  padding-left: 70px;
  text-align: left;
  border-left: 1px solid #42342e;
}
@media (max-width: 768px) {
  .rec-catch__txt-box {
    width: 100%;
    margin: 0 auto;
    border: none;
    padding: 0;
    margin-top: 20px;
  }
}
.rec-catch__txt-box h3 {
  position: relative;
  font-size: 17px;
  font-weight: 700;
  padding-left: 75px;
}
.rec-catch__txt-box h3::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: 5px;
  left: 0;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.rec-catch__txt-box p {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .rec-catch__txt-box p {
    margin-top: 20px;
  }
}

.rec-wine {
  padding-bottom: 230px;
}
.rec-wine__list {
  position: relative;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 136px;
  margin-top: 180px;
}
@media (max-width: 768px) {
  .rec-wine__list {
    margin-top: 20px;
    gap: 20px;
    white-space: nowrap;
    overflow-x: scroll;
    padding-bottom: 20px;
    /* スクロールバーのトラック（背景部分）のスタイル */
    /* スクロールバーのハンドル（動かす部分）のスタイル */
  }
  .rec-wine__list::-webkit-scrollbar {
    height: 5px;
  }
  .rec-wine__list::-webkit-scrollbar-track {
    border-bottom: 1px solid #000;
  }
  .rec-wine__list::-webkit-scrollbar-thumb {
    background: #292525; /* ハンドルの色 */
  }
}
.rec-wine__list::before {
  position: absolute;
  top: -320px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 100%;
  max-width: 992px;
  aspect-ratio: 992/682;
  background: url(./../img/common/choose-wine/rec-wine_bg.webp) center/contain no-repeat;
  z-index: -1;
}
.rec-wine__item {
  padding-bottom: 25px;
  border-bottom: 1px solid #42342e;
}
@media (max-width: 768px) {
  .rec-wine__item {
    width: 200px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.rec-wine__txt-box {
  text-align: left;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .rec-wine__txt-box {
    white-space: normal;
  }
}
.rec-wine__txt-box strong {
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 24px;
}
.rec-wine__txt-box strong span {
  font-size: 13px;
}

.subs-wine-main {
  position: relative;
}
.subs-wine-main::before {
  position: absolute;
  top: -144px;
  right: -136px;
  content: "";
  width: 814px;
  height: 590px;
  background: url(./../img/common/subs/bgi--catch.webp) center/contain no-repeat;
  z-index: 1;
  mix-blend-mode: multiply;
}
@media (max-width: 768px) {
  .subs-wine-main::before {
    content: none;
  }
}

.subs-catch__thumb {
  aspect-ratio: 1199/500;
  margin-left: 0;
  max-width: 1199px;
}
@media (max-width: 768px) {
  .subs-catch__thumb {
    aspect-ratio: 1199/800;
  }
}
.subs-catch__thumb img {
  height: 100%;
}
@media (max-width: 768px) {
  .subs-catch__thumb img {
    -o-object-position: right;
       object-position: right;
  }
}
.subs-catch__media, .subs-card__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 120px;
}
@media (max-width: 768px) {
  .subs-catch__media, .subs-card__media {
    display: block;
    margin-top: 20px;
  }
}
.subs-catch__txt-box, .subs-card__txt-box {
  text-align: left;
  width: 47.38%;
  padding-left: 46px;
}
@media (max-width: 768px) {
  .subs-catch__txt-box, .subs-card__txt-box {
    padding: 0;
    width: 100%;
  }
}
.subs-catch__txt-box strong, .subs-card__txt-box strong {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  display: block;
  font-size: 17px;
  letter-spacing: 0.5em;
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .subs-catch__txt-box strong, .subs-card__txt-box strong {
    margin-bottom: 20px;
    letter-spacing: 0.1em;
  }
}
.subs-catch__txt-box p:nth-child(n+2), .subs-card__txt-box p:nth-child(n+2) {
  margin-top: 20px;
}
.subs-catch__img-box, .subs-card__img-box {
  position: relative;
  margin-top: 140px;
  width: 42.6%;
  aspect-ratio: 440/496;
  mix-blend-mode: multiply;
}
@media (max-width: 768px) {
  .subs-catch__img-box, .subs-card__img-box {
    margin-top: 50px;
  }
}
.subs-catch__img-box::before, .subs-card__img-box::before {
  position: absolute;
  bottom: -80px;
  right: -150px;
  content: "";
  aspect-ratio: 300.37/843.67;
  min-width: 300.37px;
  -webkit-transform: rotate(27deg);
          transform: rotate(27deg);
  background: url(./../img/common/subs/catch_bottle.webp) center/contain no-repeat;
}
@media (max-width: 768px) {
  .subs-catch__img-box::before, .subs-card__img-box::before {
    min-width: 100px;
    bottom: 0;
  }
}
@media (max-width: 768px) {
  .subs-catch__media:nth-of-type(3), .subs-card__media:nth-of-type(3) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.subs-catch__media:nth-of-type(3) .subs-catch__img-box, .subs-catch__media:nth-of-type(3) .subs-card__img-box, .subs-card__media:nth-of-type(3) .subs-catch__img-box, .subs-card__media:nth-of-type(3) .subs-card__img-box {
  margin-top: 0;
}
@media (max-width: 768px) {
  .subs-catch__media:nth-of-type(3) .subs-catch__img-box, .subs-catch__media:nth-of-type(3) .subs-card__img-box, .subs-card__media:nth-of-type(3) .subs-catch__img-box, .subs-card__media:nth-of-type(3) .subs-card__img-box {
    width: 80%;
    margin: 0 auto;
    margin-top: 20px;
  }
}
.subs-catch__media:nth-of-type(3) .subs-catch__img-box::before, .subs-catch__media:nth-of-type(3) .subs-card__img-box::before, .subs-card__media:nth-of-type(3) .subs-catch__img-box::before, .subs-card__media:nth-of-type(3) .subs-card__img-box::before {
  bottom: inherit;
  right: inherit;
  top: 20px;
  left: -55px;
  -webkit-transform: rotate(-12deg);
          transform: rotate(-12deg);
  width: 174px;
  height: 59px;
  min-width: auto;
  aspect-ratio: inherit;
  background: url(./../img/common/subs/catch_media02_txt.svg) center/contain no-repeat;
}
.subs-catch__media:nth-of-type(3) .subs-catch__txt-box, .subs-catch__media:nth-of-type(3) .subs-card__txt-box, .subs-card__media:nth-of-type(3) .subs-catch__txt-box, .subs-card__media:nth-of-type(3) .subs-card__txt-box {
  margin-top: 90px;
}
.subs-catch__media:nth-of-type(3) .subs-catch__txt-box span, .subs-catch__media:nth-of-type(3) .subs-card__txt-box span, .subs-card__media:nth-of-type(3) .subs-catch__txt-box span, .subs-card__media:nth-of-type(3) .subs-card__txt-box span {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 13px;
}
.subs-catch__media:nth-of-type(3) .subs-catch__txt-box strong, .subs-catch__media:nth-of-type(3) .subs-card__txt-box strong, .subs-card__media:nth-of-type(3) .subs-catch__txt-box strong, .subs-card__media:nth-of-type(3) .subs-card__txt-box strong {
  position: relative;
  margin-bottom: 0px;
}
.subs-catch__media:nth-of-type(3) .subs-catch__txt-box strong::before, .subs-catch__media:nth-of-type(3) .subs-card__txt-box strong::before, .subs-card__media:nth-of-type(3) .subs-catch__txt-box strong::before, .subs-card__media:nth-of-type(3) .subs-card__txt-box strong::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: -30px;
  left: 0;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}
.subs-catch__media:nth-of-type(3) .subs-catch__txt-box p, .subs-catch__media:nth-of-type(3) .subs-card__txt-box p, .subs-card__media:nth-of-type(3) .subs-catch__txt-box p, .subs-card__media:nth-of-type(3) .subs-card__txt-box p {
  margin-top: 70px;
}
@media (max-width: 768px) {
  .subs-catch__media:nth-of-type(3) .subs-catch__txt-box p, .subs-catch__media:nth-of-type(3) .subs-card__txt-box p, .subs-card__media:nth-of-type(3) .subs-catch__txt-box p, .subs-card__media:nth-of-type(3) .subs-card__txt-box p {
    margin-top: 20px;
  }
}
.subs-catch__points {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 35px;
  border-top: 0.5px solid #282525;
  border-bottom: 0.5px solid #282525;
}
@media (max-width: 768px) {
  .subs-catch__points {
    display: block;
  }
}
.subs-catch__points li {
  position: relative;
  padding-left: 45px;
}
.subs-catch__points li::before {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  width: 36.62px;
  height: 13.98px;
  background: url(./../img/common/pen_thick.svg) center/contain no-repeat;
}

.subs-plan {
  margin-top: 120px;
}
.subs-plan__list {
  list-style: none;
  margin-top: 120px;
  display: -ms-grid;
  display: grid;
  gap: 25px;
  -ms-grid-columns: 1fr 25px 1fr 25px 1fr;
  grid-template-columns: 1fr 1fr 1fr;
}
@media (max-width: 768px) {
  .subs-plan__list {
    display: block;
    margin-top: 80px;
  }
}

.subs-card {
  border: 0.5px solid #282525;
}
@media (max-width: 768px) {
  .subs-card:nth-child(n+2) {
    margin-top: 40px;
  }
}
.subs-card .label-wrap {
  text-align: left;
  height: 16px;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.subs-card .label {
  position: absolute;
  top: -1px;
  left: -0.5px;
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  display: inline-block;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: #fafaf7;
  background-color: #292525;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3px 28px;
}
.subs-card .label::before {
  position: absolute;
  top: 0px;
  right: -4.7px;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #292525;
  border-left: 0.5px solid #282525;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  clip-path: polygon(100% 100%, 0 0, 0 100%);
}
.subs-card__title-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 0.5px solid #282525;
  height: 110px;
}
.subs-card__title-box strong {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.subs-card__title-box span {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  line-height: 1;
  display: block;
}
.subs-card__price-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 110px;
  border-bottom: 0.5px solid #282525;
}
.subs-card__price-box strong {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 54px;
  font-weight: 600;
}
.subs-card__price-box strong .--yen {
  font-size: 29px;
}
.subs-card__price-box strong .--month {
  font-size: 19px;
  font-weight: 500;
}
.subs-card__course-desc {
  list-style: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  height: 110px;
  border-bottom: 0.5px solid #282525;
}
.subs-card__course-desc li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
}
.subs-card__course-desc li span {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  font-weight: 500;
  display: block;
}
.subs-card__course-desc li strong {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 40px;
  font-weight: 600;
  line-height: 1.4;
}
.subs-card__course-desc li:first-of-type strong {
  color: #f6397d;
}
.subs-card__course-desc li:nth-child(n+2) {
  border-left: 0.5px solid #282525;
}
.subs-card__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 110px;
}
.subs-card__link::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  content: "";
  height: 5.81px;
  width: 36.13px;
  background: url(./../img/common/subs/plan_card_arrow.svg) center/contain no-repeat;
}
.subs-card__link img {
  height: 100%;
}
.subs-card--large {
  margin-top: 95px;
}
.subs-card__info-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: -16px;
}
@media (max-width: 768px) {
  .subs-card__info-label {
    display: block;
  }
}
.subs-card__info-label .subs-card__title-box {
  width: 28.89%;
}
@media (max-width: 768px) {
  .subs-card__info-label .subs-card__title-box {
    width: 100%;
  }
}
.subs-card__info-label .subs-card__price-box {
  width: 28.87%;
  border-left: 0.5px solid #282525;
}
@media (max-width: 768px) {
  .subs-card__info-label .subs-card__price-box {
    border-left: none;
    width: 100%;
  }
}
.subs-card__info-label .subs-card__course-desc {
  width: 31.68%;
  border-left: 0.5px solid #282525;
}
@media (max-width: 768px) {
  .subs-card__info-label .subs-card__course-desc {
    border-left: none;
    width: 100%;
  }
}
.subs-card__info-label .subs-card__link {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 10.56%;
  border-left: 0.5px solid #282525;
  border-bottom: 0.5px solid #282525;
}
@media (max-width: 768px) {
  .subs-card__info-label .subs-card__link {
    display: none;
  }
}
.subs-card__info-label .subs-card__link::before {
  display: none;
}
.subs-card__info-label .subs-card__link img {
  width: 36.86%;
  aspect-ratio: 40.18/6.47;
  -o-object-fit: contain;
     object-fit: contain;
}
.subs-card__media {
  margin-top: 35px;
  padding: 0 43px;
}
@media (max-width: 768px) {
  .subs-card__media {
    padding: 0 20px;
    margin-top: 20px;
  }
}
.subs-card__img-box {
  width: 44.7%;
  aspect-ratio: auto;
}
.subs-card__img-box::before {
  display: none;
}
.subs-card__txt-box {
  width: 49%;
}
@media (max-width: 768px) {
  .subs-card__txt-box {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.subs-card__txt-box strong::before {
  top: -50px !important;
}
.subs-card__txt-box p {
  margin-top: 45px !important;
}
.subs-card__comp-desc {
  position: relative;
  margin: 47px 43px 43px 43px;
  padding: 40px 30px 30px 30px;
  border-radius: 10px;
  text-align: left;
  background-color: #f1f1ee;
}
@media (max-width: 768px) {
  .subs-card__comp-desc {
    margin: 20px;
    padding: 20px;
  }
}
.subs-card__comp-desc strong {
  display: block;
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 20px;
}
.subs-card__comp-desc .subs-card__comp-note {
  margin-top: 35px;
  padding: 20px 25px;
  font-size: 14px;
  border: 0.5px solid #484341;
}
@media (max-width: 768px) {
  .subs-card__comp-desc .subs-card__comp-note {
    padding: 20px;
  }
}
.subs-card__comp-desc .subs-card__comp-label {
  position: absolute;
  top: -23px;
  right: 55px;
  text-align: center;
  width: 138px;
  height: 138px;
  color: #FAFAF7;
  border-radius: 50%;
  background-color: #484341;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 768px) {
  .subs-card__comp-desc .subs-card__comp-label {
    right: 0;
    -webkit-transform: translate(30px, -60%);
            transform: translate(30px, -60%);
  }
}
.subs-card__comp-desc .subs-card__comp-label .subs-card__comp-label-title {
  position: relative;
  font-size: 14px;
  margin-top: -10px;
  padding-bottom: 3px;
}
.subs-card__comp-desc .subs-card__comp-label .subs-card__comp-label-title::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 10px;
  height: 1px;
  background-color: #FAFAF7;
}
.subs-card__comp-desc .subs-card__comp-label p {
  margin-top: 8px;
  text-align: center;
  font-size: 17px;
  line-height: 1.2;
}
.subs-card__comp-desc .subs-card__comp-label p > span {
  font-size: 13px;
  line-height: 1.2;
}

.subs-friend {
  margin-top: 183px;
}
@media (max-width: 768px) {
  .subs-friend {
    margin-top: 100px;
  }
}
.subs-friend__thumb {
  position: relative;
  margin-top: 30px;
}
@media (max-width: 768px) {
  .subs-friend__thumb {
    aspect-ratio: 1366/800;
  }
}
.subs-friend__thumb img {
  height: 100%;
}
.subs-friend__thumb .subs-friend__thumb-txt {
  position: absolute;
  right: -30px;
  bottom: -100px;
  width: 364px;
  height: 319px;
}
@media (max-width: 768px) {
  .subs-friend__thumb .subs-friend__thumb-txt {
    width: 182px;
    height: 159.5px;
    right: 0;
    bottom: -70px;
  }
}
.subs-friend__txt-box {
  text-align: left;
  padding: 0 58px;
  margin-top: 57px;
}
@media (max-width: 768px) {
  .subs-friend__txt-box {
    padding: 0;
  }
}
.subs-friend__txt-box strong {
  position: relative;
  display: block;
  margin-bottom: 40px;
  padding-top: 55px;
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.5em;
  font-size: 17px;
}
.subs-friend__txt-box strong::before {
  position: absolute;
  content: "";
  width: 74.02px;
  height: 28.26px;
  top: 0;
  left: 0;
  background: url(./../img/common/pen_thin.svg) center/contain no-repeat;
}

.subs-flow {
  margin-top: 300px;
  margin-bottom: 256px;
}
@media (max-width: 768px) {
  .subs-flow {
    margin-top: 100px;
  }
}
.subs-flow__thumb {
  width: 100%;
  aspect-ratio: 1147/504;
  margin-top: 50px;
}
@media (max-width: 768px) {
  .subs-flow__thumb {
    aspect-ratio: 1147/800;
  }
}
.subs-flow__thumb img {
  height: 100%;
}

.concept-main__inner {
  padding-bottom: 50px;
}

.concept-catch__thumb {
  aspect-ratio: 1033/376;
  width: 100%;
}
@media (max-width: 768px) {
  .concept-catch__thumb {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
}
.concept-catch__txt-box {
  position: relative;
  width: 58%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .concept-catch__txt-box {
    width: calc(100% - 40px);
  }
}
.concept-catch__txt-box p {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 17px;
  line-height: 3.52;
  letter-spacing: 0.09em;
}
@media (max-width: 768px) {
  .concept-catch__txt-box p {
    line-height: 2;
  }
}
.concept-catch__txt-box p:nth-child(n+2) {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .concept-catch__txt-box p:nth-child(n+2) {
    margin-top: 30px;
  }
}
.concept-catch__txt-box::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  width: 520px;
  height: 912px;
  -webkit-transform: translate(-50%, calc(-50% + 120px)) rotate(5deg);
          transform: translate(-50%, calc(-50% + 120px)) rotate(5deg);
  background: url(./../img/common/concept/catch_bg_grape.webp) center/contain no-repeat;
  z-index: -1;
}
@media (max-width: 768px) {
  .concept-catch__txt-box::before {
    top: 20%;
    width: 260px;
    height: 456px;
  }
}
.concept-catch__img-box {
  padding: 0 50px;
  margin-top: 140px;
}
@media (max-width: 768px) {
  .concept-catch__img-box {
    padding: 0 20px;
    width: 150%;
    margin-top: 50px;
  }
}

.concept-message {
  margin-top: 150px;
}
@media (max-width: 768px) {
  .concept-message {
    margin-top: 100px;
  }
}
.concept-message__thumb {
  margin-top: 35px;
  aspect-ratio: 1148/527;
}
.concept-message__info-deco-box {
  position: relative;
  width: 27.94%;
  border-left: 0.75px solid #42342e;
}
@media (max-width: 768px) {
  .concept-message__info-deco-box {
    width: 100%;
  }
}
.concept-message__info-deco-box img {
  position: absolute;
  right: -20px;
  bottom: -25px;
  width: 100%;
  -webkit-transform: rotate(-2deg);
          transform: rotate(-2deg);
  aspect-ratio: 227.71/103.14;
}
@media (max-width: 768px) {
  .concept-message__info-deco-box img {
    width: 120px;
    bottom: inherit;
    top: -200px;
  }
}
.concept-message__table {
  width: 100%;
  margin-top: 38px;
  border-bottom: 0.75px solid #42342e;
}
.concept-message__table th {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 15px;
  font-weight: 600;
}
.concept-message__table tr {
  border-top: 0.75px solid #42342e;
}
@media (max-width: 768px) {
  .concept-message__table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.concept-message__table td {
  padding-left: 58px;
  height: 97px;
}
@media (max-width: 768px) {
  .concept-message__table td {
    padding-left: 0;
    height: auto;
    display: block;
  }
}
.concept-message__table td .td-ele {
  height: 50%;
  border-left: 0.75px solid #42342e;
}
@media (max-width: 768px) {
  .concept-message__table td .td-ele {
    width: 100%;
    border-left: none;
    border-top: 0.75px solid #42342e;
    line-height: 1.7;
    padding: 5px 0;
  }
}
.concept-message__table td .td-ele > .concept-message__table-info {
  width: 72.06%;
}
@media (max-width: 768px) {
  .concept-message__table td .td-ele > .concept-message__table-info {
    width: 100%;
    height: 100%;
  }
}
.concept-message__table-title {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 55px;
  font-weight: 600;
}
@media (max-width: 768px) {
  .concept-message__table-title {
    font-size: 38px;
  }
}
.concept-message__table-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 0.75px solid #42342e;
}
@media (max-width: 768px) {
  .concept-message__table-media {
    display: block;
  }
}
.concept-message__table-info {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-weight: 400;
  letter-spacing: 0.02em;
  padding-left: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 15px;
}
@media (max-width: 768px) {
  .concept-message__table-info {
    padding-left: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.concept-message__txt-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  margin-top: 58px;
}
@media (max-width: 768px) {
  .concept-message__txt-cont {
    display: block;
  }
}
@media (max-width: 768px) {
  .concept-message__txt-cont p:nth-child(n+2) {
    margin-top: 20px;
  }
}

.concept-aim {
  margin-top: 220px;
}
@media (max-width: 768px) {
  .concept-aim {
    margin-top: 100px;
  }
}
.concept-aim__media-wrap {
  margin-top: 116px;
  margin-bottom: 224px;
}
@media (max-width: 768px) {
  .concept-aim__media-wrap {
    margin-top: 50px;
  }
}
.concept-aim__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 768px) {
  .concept-aim__media {
    display: block;
  }
}
.concept-aim__media:nth-child(n+2) {
  margin-top: 180px;
}
@media (max-width: 768px) {
  .concept-aim__media:nth-child(n+2) {
    margin-top: 100px;
  }
}
.concept-aim__media:nth-of-type(even) .concept-aim__img-box {
  margin-right: auto;
  margin-left: -60px;
}
@media (max-width: 768px) {
  .concept-aim__media:nth-of-type(even) .concept-aim__img-box {
    margin: 0 auto;
    margin-top: 20px;
  }
}
@media (max-width: 768px) {
  .concept-aim__media:nth-of-type(2) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.concept-aim__media:nth-of-type(2) .concept-aim__txt-box::before {
  width: 278.55px;
  height: 104.55px;
  background: url(./../img/common/concept/aim_media02_label.svg) center/contain no-repeat;
}
.concept-aim__media:nth-of-type(3) .concept-aim__txt-box::before {
  width: 278.55px;
  height: 104.55px;
  background: url(./../img/common/concept/aim_media03_label.svg) center/contain no-repeat;
}
@media (max-width: 768px) {
  .concept-aim__media:nth-of-type(4) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.concept-aim__media:nth-of-type(4) .concept-aim__txt-box::before {
  width: 285.45px;
  height: 104.55px;
  background: url(./../img/common/concept/aim_media04_label.svg) center/contain no-repeat;
}
.concept-aim__media-title {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-weight: 600;
  margin-bottom: 70px;
  padding-top: 50px;
  line-height: 1.81;
  letter-spacing: 0.02em;
  z-index: 1;
  position: relative;
}
@media (max-width: 768px) {
  .concept-aim__media-title {
    margin-bottom: 20px;
  }
}
.concept-aim__txt-box {
  position: relative;
  width: 38.15%;
  text-align: left;
  padding-left: 58px;
}
@media (max-width: 768px) {
  .concept-aim__txt-box {
    width: 100%;
    padding-left: 0;
  }
}
.concept-aim__txt-box p:nth-child(n+2) {
  margin-top: 30px;
}
.concept-aim__txt-box::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 246.6px;
  height: 104.55px;
  background: url(./../img/common/concept/aim_media01_label.svg) center/contain no-repeat;
  z-index: 0;
}
@media (max-width: 768px) {
  .concept-aim__txt-box::before {
    left: inherit;
    right: 0;
  }
}
.concept-aim__img-box {
  width: 55.14%;
  margin-right: -60px;
  aspect-ratio: 633/708;
}
@media (max-width: 768px) {
  .concept-aim__img-box {
    margin-top: 20px;
    width: 100%;
    aspect-ratio: 633/400;
    overflow: hidden;
  }
}

.company-profile {
  margin-top: 138px;
}
@media (max-width: 768px) {
  .company-profile {
    margin-top: 100px;
  }
}
.company-profile__media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 36px;
}
@media (max-width: 768px) {
  .company-profile__media {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.company-profile__img-box {
  width: 23.54%;
  aspect-ratio: 243/339;
}
.company-profile__img-box img {
  height: 100%;
}
@media (max-width: 768px) {
  .company-profile__img-box {
    margin-top: 20px;
    width: 100%;
    aspect-ratio: 243/100;
    overflow: hidden;
  }
}
.company-profile__txt-box {
  width: 71.31%;
}
@media (max-width: 768px) {
  .company-profile__txt-box {
    width: 100%;
  }
}
.company-profile__txt-box table {
  width: 100%;
}
@media (max-width: 768px) {
  .company-profile__txt-box table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.company-profile__txt-box table td {
  text-align: left;
  height: 56.5px;
  padding-left: 39px;
  border-top: 1px solid #E2E2E2;
}
@media (max-width: 768px) {
  .company-profile__txt-box table td {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-left: 20px;
    height: auto;
    padding: 15px 0;
  }
}
.company-profile__txt-box table td:nth-of-type(1) {
  width: 21%;
  border-right: 1px solid #E2E2E2;
}
@media (max-width: 768px) {
  .company-profile__txt-box table td:nth-of-type(1) {
    width: 35%;
    border-right: none;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.company-profile__txt-box table td:nth-of-type(2) {
  width: 79%;
}
@media (max-width: 768px) {
  .company-profile__txt-box table td:nth-of-type(2) {
    width: 60%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.company-business {
  margin-top: 141px;
}
@media (max-width: 768px) {
  .company-business {
    margin-top: 100px;
  }
}
.company-business__inner {
  padding-bottom: 182px;
}
.business-card {
  margin-top: 36px;
  padding: 0px 100px;
}
@media (max-width: 768px) {
  .business-card {
    padding: 0;
  }
}
.business-card:nth-child(n+2) {
  margin-top: 125px;
}
@media (max-width: 768px) {
  .business-card:nth-child(n+2) {
    margin-top: 50px;
  }
}
.business-card__title-box span {
  font-family: futura-pt, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 14px;
  font-weight: 400;
  color: #F6397D;
  line-height: 1;
}
.business-card__title-box h4 {
  font-family: "ff-info-text-web-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
}
.business-card__thumb {
  margin-top: 20px;
}
.business-card__thumb img {
  height: 100%;
}
@media (max-width: 768px) {
  .business-card__thumb {
    aspect-ratio: 243/100;
  }
}
.business-card__txt-box {
  width: 80.8%;
  margin: 0 auto;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .business-card__txt-box {
    width: 100%;
  }
}

/* theme */
/*
	サイト全体で使う色の指定
*/
/*# sourceMappingURL=master.css.map */