@charset "UTF-8";
@import url("https://use.typekit.net/itv7amr.css");
@import url("https://fonts.googleapis.com/css?family=Roboto+Condensed");
/* ==========================================================================
Foundation
========================================================================== */
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 100;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Thin.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Thin.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-Thin.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 200;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Light.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Light.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-Light.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 300;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-DemiLight.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-DemiLight.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-DemiLight.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 400;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Regular.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Regular.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-Regular.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 500;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Medium.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-Medium.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 700;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Bold.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Bold.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-Bold.woff") format("woff");
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 900;
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Black.eot");
  src: url("/common/fonts/YakuHanJP/YakuHanJP-Black.woff2") format("woff2"), url("/common/fonts/YakuHanJP/YakuHanJP-Black.woff") format("woff");
}
/* Reset
----------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
l,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
table,
input,
textarea,
select,
option,
button {
  font-size: 100%;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
main {
  display: block;
}

input,
textarea {
  margin: 0;
  padding: 0;
}

ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th {
  text-align: left;
}

img,
a img {
  border: none;
}

a {
  cursor: pointer;
}

input:not([type=checkbox]) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Base
----------------------------------------------------------------- */
html {
  height: 100%;
  line-height: 1.6;
  overflow-y: scroll;
}

body {
  position: relative;
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
  overflow: hidden;
  color: #222222;
}
@media only screen and (max-width: 47.9375em ) {
  body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 48em ) {
  body {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
    line-height: 1.75;
  }
}

a {
  text-decoration: underline;
  color: #aa8f7b;
  -webkit-transition: color ease 0.1s, -webkit-text-decoration ease 0.1s;
  transition: color ease 0.1s, -webkit-text-decoration ease 0.1s;
  transition: color ease 0.1s, text-decoration ease 0.1s;
  transition: color ease 0.1s, text-decoration ease 0.1s, -webkit-text-decoration ease 0.1s;
}
@media only screen and (max-width: 47.9375em ) {
  a {
    word-break: break-all;
  }
}
@media print, screen and (min-width: 48em ) {
  a {
    word-break: break-all;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover {
    text-decoration: none;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a[href^=tel] {
    pointer-events: none;
    cursor: text;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4;
  font-weight: normal;
}

.l-root-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  height: 100%;
  min-height: 100vh;
  background-color: #fff;
}

.l-header {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2000000002;
  width: 100%;
  position: absolute;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 10;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: fixed;
    background-color: #fff;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  }
}
.l-header.animation {
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.scrolling {
    z-index: 1010;
    background-color: #fff;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
}
.l-header.open {
  z-index: 2000000002;
}
.l-header button {
  outline: none;
}
.l-header.-white {
  background: white;
}

.l-header__button {
  display: block;
  position: fixed;
  z-index: 1010;
  bottom: 40px;
  left: 0;
  width: 66px;
  height: 66px;
  border: none;
  background-color: #aa8f7b;
  outline: none;
  cursor: pointer;
}
@media print, screen and (min-width: 48em ) {
  .l-header__button {
    width: 80px;
    height: 80px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__button {
    display: none;
  }
}
.fixed .l-header__button {
  display: none;
}

.l-header__button-text {
  color: transparent;
  font-size: 9px;
  font-size: 0.5625rem;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  position: absolute;
  bottom: 6px;
  left: 0;
  width: 100%;
  text-indent: -9999px;
}
@media only screen and (max-width: 47.9375em ) {
  .l-header__button-text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header__button-text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.browser-is-edge .l-header__button-text {
  bottom: auto;
}
@media print, screen and (min-width: 48em ) {
  .l-header__button-text {
    bottom: 13px;
  }
  .browser-is-edge .l-header__button-text {
    bottom: 25px;
  }
}
.l-header__button-text:before {
  content: "メニュー";
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  color: #fff;
  text-indent: 0;
}

.l-header__line {
  border: none;
  position: absolute;
  top: 16px;
  left: calc(50% - 12px);
  width: 24px;
  height: 19px;
  padding: 0;
  background-color: transparent;
}
@media print, screen and (min-width: 48em ) {
  .l-header__line {
    top: 23px;
  }
}
.l-header__line span {
  display: block;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  top: 9px;
  left: 0;
  width: 100%;
  height: 1px;
  -webkit-transition: cubic-bezier(0.215, 0.61, 0.355, 1) transform 0.4s;
  transition: cubic-bezier(0.215, 0.61, 0.355, 1) transform 0.4s;
  background-color: #fff;
}
.l-header__line:before, .l-header__line:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  -webkit-transition: cubic-bezier(0.215, 0.61, 0.355, 1) transform 0.15s;
  transition: cubic-bezier(0.215, 0.61, 0.355, 1) transform 0.15s;
  background-color: #fff;
}
.l-header__line:before {
  top: 0;
  left: 0;
}
.l-header__line:after {
  bottom: 0;
  left: 0;
}

.l-header__inner {
  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;
  position: relative;
  z-index: 1020;
  width: 100%;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .l-header__inner {
    background-color: #fff;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header__inner {
    margin: 0 auto;
  }
}
.l-header.open .l-header__inner {
  background-color: #fff;
}

/* ロゴ */
.l-header__logo {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 1030;
  width: 100%;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__logo {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: auto;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header__logo {
    padding-left: 20px;
  }
}
.l-header__logo a {
  display: block;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-right: 18px;
  padding-left: 18px;
}
@media print, screen and (min-width: 48em ) {
  .l-header__logo a {
    padding-top: 31px;
    padding-bottom: 25px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__logo a {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header__logo a {
    padding-right: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .l-header__logo a {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.l-header__logo svg {
  display: block;
  fill: #222222;
  width: 180px;
  height: 27px;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__logo svg {
    width: 150px;
    height: 25px;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header__logo svg {
    width: 200px;
    height: 36px;
  }
}
.open .l-header__logo svg, .scrolling .l-header__logo svg {
  fill: #222222;
}
.l-header__logo.-white {
  background: white;
}

.l-header__nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: fixed;
  overflow: hidden;
  z-index: 1040;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__nav {
    overflow: visible;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    position: static;
    height: auto;
    width: auto;
    padding-left: 0;
    background-color: transparent;
    -webkit-transform: none;
            transform: none;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.l-header__nav:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transform: translate(-25%, 0);
          transform: translate(-25%, 0);
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__nav:after {
    display: none;
  }
}
.l-header__nav.animation {
  -webkit-transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.l-header__nav.animation:after {
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.l-header__nav.active {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.l-header__nav.active.searching:after {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

/* スクロールバー隠し用 */
.l-header__nav-inner {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  position: relative;
  z-index: 1050;
  overflow-y: scroll;
  width: 100%;
  height: 100%;
  padding-right: 17px;
  -webkit-overflow-scrolling: touch;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__nav-inner {
    position: static;
    overflow-y: visible;
    padding-right: 0;
  }
}
.device-is-mobile .l-header__nav-inner {
  padding-right: 0;
}

.l-header__nav-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  position: relative;
  width: calc(100% + 17px);
  height: 100%;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__nav-contents {
    position: static;
    width: auto;
    height: auto;
  }
}
.device-is-mobile .l-header__nav-contents {
  width: 100%;
}

/* 検索 */
.l-header__search {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  z-index: 1030;
  top: 0;
  left: 0;
  width: 100%;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: static;
    z-index: auto;
    top: auto;
    left: auto;
    width: auto;
    padding-right: 22px;
    -webkit-transition: none;
    transition: none;
  }
}
.l-header__search.animation {
  -webkit-transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}

/* 検索フィールド */
.l-header__search-area {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 75%;
  padding-top: 24px;
  padding-bottom: 24px;
  padding-right: 12px;
  padding-left: 12px;
}
@media print, screen and (min-width: 40.0625em ) {
  .l-header__search-area {
    -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, width cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, width cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-area {
    position: absolute;
    overflow: hidden;
    width: 100%;
    height: 0;
    bottom: 0;
    left: 0;
    -webkit-transform: translate(0, 100%);
            transform: translate(0, 100%);
    background-color: #f7f7f7;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
    -webkit-transition: none;
    transition: none;
  }
}
.l-header__search-area.animation {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-area.open-1 {
    height: 120px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .l-header__search-area.open-1 {
    height: 140px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .searching .l-header__search-area {
    width: 85%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .searching .l-header__search-area {
    width: 100%;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .l-header__search-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 32px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .l-header__search-inner {
    padding-top: 35px;
  }
}
.l-header__search-inner input[type=text] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: block;
  width: 100%;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 30px;
  background-color: #eeeeee;
  border: none;
  border-radius: 3px;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  background-repeat: no-repeat;
  background-position: 10px 14px;
  background-image: url(/common/svg/icon_search_gray.svg);
  background-size: 17px 17px;
  /* Google Chrome, Safari, Opera 15+, Android, iOS */
  /* Firefox 18- */
  /* Firefox 19+ */
  /* IE 10+ */
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-inner input[type=text] {
    padding-top: 11px;
    padding-bottom: 13px;
    padding-left: 60px;
    background-position: 23px 24px;
    background-color: #fff;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .l-header__search-inner input[type=text] {
    padding-top: 17px;
    padding-bottom: 19px;
  }
}
.l-header__search-inner input[type=text]:-moz-placeholder-shown {
  color: #aaaaaa;
  -moz-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.l-header__search-inner input[type=text]:-ms-input-placeholder {
  color: #aaaaaa;
  -ms-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.l-header__search-inner input[type=text]:placeholder-shown {
  color: #aaaaaa;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.l-header__search-inner input[type=text]::-webkit-input-placeholder {
  color: #aaaaaa;
}
.l-header__search-inner input[type=text]:-moz-placeholder {
  color: #aaaaaa;
  opacity: 1;
}
.l-header__search-inner input[type=text]::-moz-placeholder {
  color: #aaaaaa;
  opacity: 1;
}
.l-header__search-inner input[type=text]:-ms-input-placeholder {
  color: #aaaaaa;
}
.l-header__search-inner input[type=text]:focus {
  outline: none;
}

.l-header__search-button {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-button {
    display: block;
    width: 200px;
  }
}

.l-header__search-trigger {
  display: none;
  position: relative;
  border: none;
  background: none;
  cursor: pointer;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-trigger {
    display: block;
    top: -1px;
    padding-top: 25px;
    padding-bottom: 5px;
    padding-right: 6px;
    padding-left: 18px;
  }
  .scrolling .l-header__search-trigger {
    padding-top: 18px;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header__search-trigger {
    padding-right: 16px;
    padding-left: 24px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-trigger span {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: inline-block;
    position: relative;
    overflow: hidden;
    padding-bottom: 9px;
    padding-right: 3px;
    padding-left: 1px;
  }
}
.l-header__search-trigger span:after {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #222222;
  -webkit-transform: translate(-110%, 0);
          transform: translate(-110%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-trigger span:after {
    display: block;
  }
}
.open .l-header__search-trigger span:after, .scrolling .l-header__search-trigger span:after {
  background-color: #222222;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__search-trigger:hover span:after, .l-header__search-trigger.open span:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.l-header__search-trigger svg {
  display: block;
  width: 15px;
  height: 15px;
  fill: #222222;
}
.open .l-header__search-trigger svg, .scrolling .l-header__search-trigger svg {
  fill: #222222;
}

.l-header__cancel-button {
  visibility: hidden;
  opacity: 0;
  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;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  height: 100%;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 6px;
  padding-left: 0;
  -webkit-animation: cancel-btn-fade-out 0.5s forwards;
          animation: cancel-btn-fade-out 0.5s forwards;
}
@media only screen and (max-width: 40em ) {
  .l-header__cancel-button {
    width: 25%;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .l-header__cancel-button {
    width: 15%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__cancel-button {
    display: none;
  }
}
.l-header__cancel-button button {
  padding: 0;
  background: none;
  border: none;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-size: 15px;
  font-size: 0.9375rem;
  cursor: pointer;
}
.searching .l-header__cancel-button {
  -webkit-animation: cancel-btn-fade-in 0.5s forwards;
          animation: cancel-btn-fade-in 0.5s forwards;
}

/* キャンセルボタンの表示アニメーション */
@-webkit-keyframes cancel-btn-fade-in {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  30% {
    opacity: 0;
    visibility: hidden;
  }
  90% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes cancel-btn-fade-in {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  30% {
    opacity: 0;
    visibility: hidden;
  }
  90% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}
/* キャンセルボタンの非表示アニメーション */
@-webkit-keyframes cancel-btn-fade-out {
  0% {
    opacity: 1;
    visibility: visible;
  }
  20% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes cancel-btn-fade-out {
  0% {
    opacity: 1;
    visibility: visible;
  }
  20% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
.l-header__main {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  visibility: visible;
  opacity: 1;
  width: 75%;
  padding-top: 98px;
  padding-bottom: 118px;
  -webkit-transition: width cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, visibility cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: width cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, visibility cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: width cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, visibility cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: width cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, visibility cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .l-header__main {
    position: relative;
    z-index: 1020;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
    padding: 0;
    -webkit-transition: none;
    transition: none;
  }
}
.device-is-mobile .l-header__main {
  width: 75%;
}
@media print, screen and (min-width: 61.25em ) {
  .device-is-mobile .l-header__main {
    width: auto;
  }
}
.searching .l-header__main {
  visibility: hidden;
  opacity: 0;
  width: 100%;
  -webkit-filter: blur(2px);
          filter: blur(2px);
  /* PCで値をリセット */
}
@media print, screen and (min-width: 61.25em ) {
  .searching .l-header__main {
    visibility: visible;
    opacity: 1;
    width: auto;
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}

.l-header__main-item {
  opacity: 0;
  -webkit-transform: translate(0, 10px);
          transform: translate(0, 10px);
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .l-header__main-item::after {
    content: "";
    display: block;
    width: 200px;
    height: 1px;
    margin: 0 auto;
    background: #ccc;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    -webkit-transition: none;
    transition: none;
  }
}
.l-header__main-item.active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.l-header__main-item > a, .l-header__main-item > button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  max-width: 200px;
  margin: 0 auto;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-right: 0;
  padding-left: 0;
  color: #222222;
  line-height: 1.4;
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    padding-left: 10px;
    color: #222222;
    line-height: 1.75;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    max-width: 320px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    position: static;
    max-width: inherit;
    margin: 0;
    padding-top: 28px;
    padding-bottom: 16px;
    padding-right: 6px;
    padding-left: 6px;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-weight: bold;
    font-size: 14px;
    font-size: 0.875rem;
    -webkit-transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
}
@media only screen and (min-width: 61.25em ) and (max-width: 47.9375em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 61.25em ) and (min-width: 48em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header__main-item > a, .l-header__main-item > button {
    padding-right: 16px;
    padding-left: 16px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.l-header__main-item > a:after, .l-header__main-item > button:after {
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a:after, .l-header__main-item > button:after {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a span, .l-header__main-item > button span {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: inline-block;
    position: relative;
    overflow: hidden;
    padding-bottom: 6px;
    padding-right: 2px;
    padding-left: 1px;
  }
}
.l-header__main-item > a span:after, .l-header__main-item > button span:after {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #222222;
  -webkit-transform: translate(-110%, 0);
          transform: translate(-110%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a span:after, .l-header__main-item > button span:after {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .-inverted .l-header__main-item > a span:after, .-inverted .l-header__main-item > button span:after {
    background-color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .open .l-header__main-item > a span:after, .scrolling .l-header__main-item > a span:after, .open .l-header__main-item > button span:after, .scrolling .l-header__main-item > button span:after {
    background-color: #222222;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a:hover span:after, .l-header__main-item > a.open span:after, .l-header__main-item > a.current span:after, .l-header__main-item > button:hover span:after, .l-header__main-item > button.open span:after, .l-header__main-item > button.current span:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.open .l-header__main-item > a, .open .l-header__main-item > button {
  color: #222222;
}
.scrolling .l-header__main-item > a, .scrolling .l-header__main-item > button {
  color: #222222;
}
@media print, screen and (min-width: 61.25em ) {
  .scrolling .l-header__main-item > a, .scrolling .l-header__main-item > button {
    padding-top: 15px;
    padding-bottom: 9px;
  }
}
.l-header__main-item > a:after {
  display: block;
  position: absolute;
  right: 3px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 5px;
  height: 10px;
  content: "";
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(/common/svg/arrow_right_darkgray.svg);
  background-size: 5px 10px;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > a:after {
    display: none;
  }
}
.l-header__main-item > button {
  /* <button>のリセット */
  width: 100%;
  border: none;
  background: none;
  text-align: left;
  cursor: pointer;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > button {
    width: auto;
  }
}
.l-header__main-item > button:before, .l-header__main-item > button:after {
  position: absolute;
  display: block;
  top: 50%;
  background-color: #aaaaaa;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > button:before, .l-header__main-item > button:after {
    display: none;
  }
}
.l-header__main-item > button:before {
  width: 11px;
  height: 1px;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.l-header__main-item > button:after {
  width: 1px;
  height: 11px;
  right: 5px;
  -webkit-transform: translate(0, -50%) rotate(0deg);
          transform: translate(0, -50%) rotate(0deg);
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > button span {
    padding-right: 12px;
  }
}
.l-header__main-item > button span:after {
  width: calc(100% - 10px);
}
.l-header__main-item > button span svg {
  display: none;
  position: absolute;
  top: 44%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 8px;
  height: 6px;
  margin-left: 3px;
  fill: #222222;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > button span svg {
    display: inline-block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .open .l-header__main-item > button span svg, .scrolling .l-header__main-item > button span svg {
    fill: #222222;
  }
}
.l-header__main-item > button.open:after {
  -webkit-transform: translate(0, -50%) rotate(90deg);
          transform: translate(0, -50%) rotate(90deg);
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item > button.open:after {
    -webkit-transform: translate(0, -50%) rotate(0deg);
            transform: translate(0, -50%) rotate(0deg);
  }
}
.l-header__main-item > button.open svg {
  -webkit-transform: translate(0, -50%) rotate(-180deg);
          transform: translate(0, -50%) rotate(-180deg);
}
.l-header__main-item > button:focus {
  outline: none;
}
.l-header__main-item.-recruit {
  position: relative;
}
.l-header__main-item.-recruit > a:after {
  position: absolute;
  width: 10px;
  height: 12px;
  top: 40%;
  right: 3px;
  content: url(/common/svg/icon_blank_black.svg);
  background: none;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item.-recruit > a:after {
    display: none;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item.-recruit span {
    padding-right: 18px;
  }
}
.l-header__main-item.-recruit img {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item.-recruit img {
    display: inline-block;
    position: absolute;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    top: calc(50% - 3px);
    right: 0;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header__main-item.-recruit img {
    right: 0;
  }
}
.scrolling .l-header__main-item.-recruit img {
  top: 45%;
}

.l-header.-recruit .l-header__logo {
  width: auto;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__logo {
    width: auto;
  }
}
.l-header.-recruit .l-header__logo a {
  text-decoration: none;
}
.l-header.-recruit .l-header__logo a:hover {
  text-decoration: none;
}
.l-header.-recruit .l-header__logo svg {
  width: 185px;
  height: 18px;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__logo svg {
    width: 180px;
    height: 36px;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header.-recruit .l-header__logo svg {
    width: 256px;
    height: 36px;
  }
}
.l-header.-recruit .l-header__recruit-entry {
  font-size: 10px;
  font-size: 0.625rem;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #fff;
  background-color: #aa8f7b;
  padding-top: 6px;
  padding-bottom: 6px;
  width: 110px;
  text-align: center;
  text-decoration: none;
  margin-right: 5.3333%;
}
@media only screen and (max-width: 47.9375em ) {
  .l-header.-recruit .l-header__recruit-entry {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__recruit-entry {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__recruit-entry {
    display: none;
  }
}
.l-header.-recruit .l-header__main {
  padding-top: 62px;
  padding-bottom: 118px;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__main {
    padding: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__main-item > a {
    padding-right: 10px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__main-item > a {
    padding-right: 10px;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-header.-recruit .l-header__main-item > a {
    padding-right: 22px;
    letter-spacing: 0.1em;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__main-item > a.current {
    color: #aa8f7b;
  }
}
.l-header.-recruit .l-header__main-item > a.current > span:after {
  background-color: #aa8f7b;
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__main-item.-recruit_last {
    position: relative;
  }
  .l-header.-recruit .l-header__main-item.-recruit_last::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    height: 18px;
    width: 1px;
    background-color: #dddddd;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__main-item.-sp_only {
    display: none;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .l-header.-recruit .l-header__entry {
    display: none;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__entry {
    -webkit-transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: padding cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    padding-top: 28px;
    padding-bottom: 16px;
    padding-right: 18px;
    padding-left: 18px;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__entry {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.l-header.-recruit .l-header__entry a {
  color: #222222;
  display: block;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.l-header.-recruit .l-header__entry a:after {
  display: none;
  position: absolute;
  bottom: 6px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #222222;
  -webkit-transform: translate(-110%, 0px);
          transform: translate(-110%, 0px);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__entry a:after {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__entry:hover a:after {
    -webkit-transform: translate(0, 0px);
            transform: translate(0, 0px);
  }
}
.l-header.-recruit .l-header__recruit-link {
  max-width: 200px;
  margin-top: 16px;
  margin-right: auto;
  margin-left: auto;
}
.l-header.-recruit .l-header__recruit-link a {
  color: #222222;
  text-decoration: none;
  font-size: 12px;
  font-size: 0.75rem;
}
.l-header.-recruit .l-header__recruit-link a:after {
  top: -1px;
  width: 13px;
  height: 11px;
  margin-left: 6px;
  content: url(/common/svg/icon_blank_black.svg);
}
@media print, screen and (min-width: 48em ) {
  .l-header.-recruit .l-header__recruit-link {
    max-width: 320px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit .l-header__recruit-link {
    display: none;
  }
}
.l-header.-recruit .l-header__button {
  background-color: #222222;
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit.scrolling .l-header__entry {
    padding-top: 15px;
  }
}
.l-header.-recruit.scrolling .l-header__entry a:after {
  bottom: 6px;
  -webkit-transform: translate(-110%, 6px);
          transform: translate(-110%, 6px);
}
@media print, screen and (min-width: 61.25em ) {
  .l-header.-recruit.scrolling .l-header__entry:hover a:after {
    -webkit-transform: translate(0, 6px);
            transform: translate(0, 6px);
  }
}

@media print, screen and (min-width: 61.25em ) {
  .l-header__search {
    display: none;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .l-header__main-item:nth-of-type(2) {
    display: none;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .l-header__nav-contents {
    padding-right: 20px;
  }
}

.l-footer {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1 auto;
          flex: 1 auto;
  position: relative;
  width: 100%;
  background-color: #222222;
}

.l-footer__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__inner {
    padding-top: 60px;
    padding-bottom: 58px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__inner {
    padding-top: 120px;
    padding-bottom: 170px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}

.l-footer__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__buttons {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 200px;
    margin: 0 auto;
  }
}

.l-footer__btn {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__btn {
    width: 100%;
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__btn {
    margin-left: 20px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__btn:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__btn:first-child {
    margin-left: 0;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer__columns {
    margin-top: 0;
    padding-right: 42px;
    padding-left: 42px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    max-width: 850px;
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__columns:after {
    display: block;
    clear: both;
    content: "";
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer__col {
    display: inline;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__col {
    margin-top: -6px;
  }
}

.l-footer__col-item {
  float: left;
  width: 50%;
  margin-bottom: 14px;
}
@media print, screen and (min-width: 40.0625em ) {
  .l-footer__col-item {
    width: 33.33%;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__col-item {
    float: none;
    width: auto;
    margin-top: 6px;
    margin-bottom: 0;
  }
}
.l-footer__col-item > a {
  display: inline-block;
  color: #aaaaaa;
  text-decoration: none;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__col-item > a {
    font-size: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__col-item > a {
    font-size: 13px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-footer__col-item > a:hover {
    color: #fff;
  }
}
.l-footer__col-item.-blank a:after {
  top: -1px;
  width: 13px;
  height: 11px;
  margin-left: 6px;
  content: url(/common/svg/icon_blank_footer.svg);
}

.l-footer__copyright {
  display: block;
  text-align: center;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 500;
  color: #fff;
  font-size: 11px;
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer__copyright {
    margin-top: 33px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer__copyright {
    margin-top: 76px;
  }
}

.l-breadcrumbs {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
  position: absolute;
  z-index: 1;
  width: 100%;
  margin: 20px 0 0;
  padding-right: 5.3333%;
  padding-left: 40px;
}
@media print, screen and (min-width: 61.25em ) {
  .l-breadcrumbs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.l-breadcrumbs__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
@media print, screen and (min-width: 48em ) {
  .l-breadcrumbs__inner {
    margin-right: auto;
    margin-left: auto;
  }
}

.l-breadcrumbs__item {
  margin-right: 16px;
  padding-right: 20px;
  background-repeat: no-repeat;
  background-position: 100% 0.6em;
  background-image: url(/common/svg/arrow_right_white.svg);
  background-size: 5px 10px;
  font-size: 14px;
  font-size: 0.875rem;
  white-space: nowrap;
}
.browser-is-ie .l-breadcrumbs__item {
  padding-top: 2px;
}
.l-breadcrumbs__item:first-child > a svg {
  position: relative;
  top: 0px;
  width: 13px;
  height: 12px;
  fill: #aa8f7b;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
.browser-is-ie .l-breadcrumbs__item:first-child > a svg {
  top: -2px;
}
.l-breadcrumbs__item:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  background: none;
  color: rgba(255, 255, 255, 0.5);
}
.l-breadcrumbs__item > a {
  display: block;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  color: #fff;
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .l-breadcrumbs__item > a:hover {
    color: #aa8f7b;
  }
}
.l-breadcrumbs__item > span {
  margin-right: 15px;
  margin-left: 10px;
}
.l-breadcrumbs__item.-recruit {
  background-position: 28px 7px;
}

.l-breadcrumbs--product .l-breadcrumbs__item:first-child a svg {
  fill: #cccccc;
}
.l-breadcrumbs--product .l-breadcrumbs__item:first-child a:hover svg {
  fill: #aa8f7b;
}

.l-breadcrumbs--inverted .l-breadcrumbs__item {
  background-image: url(/common/svg/arrow_right_darkgray.svg);
  background-size: 5px 10px;
}
.l-breadcrumbs--inverted .l-breadcrumbs__item:first-child a svg {
  fill: #cccccc;
}
.l-breadcrumbs--inverted .l-breadcrumbs__item:first-child a:hover svg {
  fill: #aa8f7b;
}
.l-breadcrumbs--inverted .l-breadcrumbs__item:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  background: none;
  color: rgba(0, 0, 0, 0.6);
}
.l-breadcrumbs--inverted .l-breadcrumbs__item > a {
  color: #222222;
}

.l-page-top {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 61.1875em ) {
  .l-page-top {
    position: static;
  }
  .l-page-top > a {
    display: block;
    height: 60px;
    border-top: 1px solid #ddd;
    text-align: center;
    color: #222;
    text-decoration: none;
    padding: 15px 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .l-page-top > a svg {
    width: 13px;
    height: 13px;
  }
  .l-page-top > a span {
    display: inline-block;
    margin-right: 5px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .l-page-top {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    right: 40px;
    bottom: 40px;
    width: 50px;
    height: 50px;
    z-index: 10;
    -webkit-transition: opacity 0.8s ease, visibility 0.8s ease;
    transition: opacity 0.8s ease, visibility 0.8s ease;
  }
  .l-page-top.visible {
    visibility: visible;
    opacity: 1;
  }
  .l-page-top > a {
    -webkit-box-sizing: border-box;
            box-sizing: border-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: 100%;
    height: 100%;
    background-color: #000;
    overflow: hidden;
  }
  .l-page-top > a:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    z-index: 30;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #aa8f7b;
    -webkit-transform: translate3d(0, 101%, 0);
            transform: translate3d(0, 101%, 0);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    content: "";
  }
  .l-page-top > a:hover:after {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  .l-page-top > a:hover svg {
    -webkit-transform: translate3d(0, -6px, 0);
            transform: translate3d(0, -6px, 0);
  }
  .l-page-top > a > span {
    display: none;
  }
  .l-page-top svg {
    position: relative;
    z-index: 40;
    width: 11px;
    height: 5px;
    fill: #fff;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}

.l-ec-menu {
  text-decoration: none;
  display: block;
  position: fixed;
  z-index: 1010;
  bottom: 132px;
  left: 0;
  width: 80px;
  height: 80px;
  border: none;
  background-color: #222222;
  outline: none;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .l-ec-menu {
    width: 66px;
    height: 66px;
    bottom: 116px;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-ec-menu {
    display: none;
  }
}

.l-ec-menu__inner {
  padding-top: 12px;
  padding-right: 20px;
  padding-left: 19px;
  padding-bottom: 6px;
}

.l-ec-menu__cart:after {
  content: "";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 27px;
  height: 27px;
  left: 5px;
  position: relative;
  background-image: url(/common/svg/icon_cart.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 47.9375em ) {
  .l-ec-menu__cart:after {
    left: 0;
  }
}

.l-ec-menu__text {
  color: #ffffff;
  text-align: center;
  font-size: 10px;
  font-size: 0.625rem;
  font-weight: bold;
  margin-top: 2px;
  padding-left: 3px;
}

.l-footer-recruit__contents {
  background-color: #f7f7f7;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__contents {
    padding-top: 38px;
    padding-bottom: 44px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__contents {
    padding: 100px 80px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__main {
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__main {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 1200px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__head {
    text-align: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__head {
    padding-right: 55px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__heading {
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__heading {
    margin-top: 12px;
  }
}

.l-footer-recruit__text {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
  margin-top: 20px;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__text {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__text {
    font-size: 21px;
    font-size: 1.3125rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__cta {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__cta {
    width: 400px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__cta .c-button.-size_l a {
    padding-top: 20px;
    padding-bottom: 24px;
  }
}
.l-footer-recruit__cta .c-button.-size_l:last-of-type {
  margin-top: 10px;
}

.l-footer-recruit__en {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  letter-spacing: 0.1em;
  white-space: pre;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__en {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__img {
    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;
    position: relative;
    overflow: hidden;
    z-index: 0;
    height: 50vw;
    max-height: 480px;
  }
}
.l-footer-recruit__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__img img {
    position: relative;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__img img {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
@media print, screen and (min-width: 93.75em ) {
  .l-footer-recruit__img img {
    top: 50%;
    bottom: auto;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__bottom {
    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;
    padding-top: 30px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
    padding-bottom: 26px;
    border-top: 1px solid #dddddd;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__bottom {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    padding-top: 30px;
    padding-right: 80px;
    padding-left: 80px;
    padding-bottom: 20px;
  }
}
@media print, screen and (min-width: 80em ) {
  .l-footer-recruit__bottom {
    width: 1200px;
    padding-right: 0px;
    padding-left: 0px;
  }
}

.l-footer-recruit__copyright {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__copyright {
    font-size: 11px;
    font-size: 0.6875rem;
    text-align: center;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__copyright {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__link {
    text-align: center;
  }
}
.l-footer-recruit__link a {
  color: #222222;
  text-decoration: none;
  font-size: 12px;
  font-size: 0.75rem;
}
.l-footer-recruit__link a:after {
  top: -1px;
  width: 13px;
  height: 11px;
  margin-left: 6px;
  content: url(/common/svg/icon_blank_black.svg);
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__link a {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .l-footer-recruit__link a:last-of-type {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .l-footer-recruit__link a:last-of-type {
    margin-left: 24px;
  }
}
.l-footer-recruit__link a.-normal:after {
  display: none;
}

/* ==========================================================================
Object
========================================================================== */
.c-annotation {
  position: relative;
  margin-top: 4px;
  padding-left: 1em;
  text-align: justify;
}
@media only screen and (max-width: 47.9375em ) {
  .c-annotation {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-annotation {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.c-annotation:first-child {
  margin-top: 0;
}
.c-annotation:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}
.c-annotation span {
  display: block;
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .c-annotation span {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-annotation span {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  * + .c-annotation {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  * + .c-annotation {
    margin-top: 15px;
  }
}
.c-annotation + .c-annotation {
  margin-top: 4px;
}
.c-annotation + .c-annotation:first-child {
  margin-top: 0;
}
.c-annotation.-m {
  padding-left: 14px;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 48em ) {
  .c-annotation.-m {
    padding-left: 16px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.c-annotation.-dib {
  display: inline-block;
}
.c-annotation.-s {
  padding-left: 14px;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 48em ) {
  .c-annotation.-s {
    padding-left: 12px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
.c-annotation.-ss {
  padding-left: 14px;
  font-size: 10px;
  font-size: 0.625rem;
}
@media print, screen and (min-width: 48em ) {
  .c-annotation.-ss {
    padding-left: 12px;
    font-size: 10px;
    font-size: 0.625rem;
  }
}
.c-annotation.-no-icon {
  padding-left: 0;
}
.c-annotation.-no-icon:before {
  display: none;
}

.c-button {
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button {
    display: block;
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button {
    display: block;
  }
}
.c-button > a, .c-button > button, .c-button > input[type=submit], .c-button > div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  background: #222222;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #fff;
  -webkit-transition: color cubic-bezier(0.38, 0.33, 0.23, 0.99) 0.4s;
  transition: color cubic-bezier(0.38, 0.33, 0.23, 0.99) 0.4s;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button > a, .c-button > button, .c-button > input[type=submit], .c-button > div {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button > a, .c-button > button, .c-button > input[type=submit], .c-button > div {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-button > a, .c-button > button, .c-button > input[type=submit], .c-button > div {
    min-height: 50px;
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button > a, .c-button > button, .c-button > input[type=submit], .c-button > div {
    padding-top: 15px;
    padding-bottom: 17px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-button > a, .c-button > button, .c-button > input[type=submit], .c-button > div {
    padding-top: 20px;
    padding-bottom: 22px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .c-button > a, .browser-is-ie .c-button > button, .browser-is-ie .c-button > input[type=submit], .browser-is-ie .c-button > div {
    padding-top: 22px;
    padding-bottom: 20px;
  }
}
.c-button > a:before, .c-button > button:before, .c-button > input[type=submit]:before, .c-button > div:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #aa8f7b;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .c-button > a:hover, .c-button > button:hover, .c-button > input[type=submit]:hover, .c-button > div:hover {
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-button > a:hover:before, .c-button > button:hover:before, .c-button > input[type=submit]:hover:before, .c-button > div:hover:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-button > a:hover span:after, .c-button > button:hover span:after, .c-button > input[type=submit]:hover span:after, .c-button > div:hover span:after {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
  }
}
.c-button > button, .c-button > input[type=submit] {
  border: none;
}
.c-button span {
  display: inline-block;
  position: relative;
  z-index: 30;
}
.c-button span:after {
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 12px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_gray.svg);
}

.c-button--inverted > a, .c-button--inverted > button, .c-button--inverted > input[type=submit], .c-button--inverted > div {
  background: #aa8f7b;
}
.c-button--inverted > a:before, .c-button--inverted > button:before, .c-button--inverted > input[type=submit]:before, .c-button--inverted > div:before {
  background-color: #222222;
}

/* ボーダー */
.c-button--border > a, .c-button--footer > a, .c-button--border > button, .c-button--footer > button, .c-button--border > input[type=submit], .c-button--footer > input[type=submit], .c-button--border > div, .c-button--footer > div {
  background: transparent;
  border: solid 1px #fff;
}
.c-button--border > a:before, .c-button--footer > a:before, .c-button--border > button:before, .c-button--footer > button:before, .c-button--border > input[type=submit]:before, .c-button--footer > input[type=submit]:before, .c-button--border > div:before, .c-button--footer > div:before {
  background-color: #fff;
}
@media print, screen and (min-width: 61.25em ) {
  .c-button--border > a:hover, .c-button--footer > a:hover, .c-button--border > button:hover, .c-button--footer > button:hover, .c-button--border > input[type=submit]:hover, .c-button--footer > input[type=submit]:hover, .c-button--border > div:hover, .c-button--footer > div:hover {
    color: #222222;
  }
}
.c-button--border span:after, .c-button--footer span:after {
  display: none;
}

@media print, screen and (min-width: 61.25em ) {
  .c-button.-mail > a:hover span:after, .c-button.-blank > a:hover span:after, .c-button--download > a:hover span:after, .c-button.-mail > button:hover span:after, .c-button.-blank > button:hover span:after, .c-button--download > button:hover span:after, .c-button.-mail > input[type=submit]:hover span:after, .c-button.-blank > input[type=submit]:hover span:after, .c-button--download > input[type=submit]:hover span:after, .c-button.-mail > div:hover span:after, .c-button.-blank > div:hover span:after, .c-button--download > div:hover span:after {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.c-button.-mail span:after, .c-button.-blank span:after, .c-button--download span:after {
  margin-left: 9px;
}

/* フッター */
.c-button--footer > a, .c-button--footer > button, .c-button--footer > input[type=submit], .c-button--footer > div {
  font-size: 12px;
  font-size: 0.75rem;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button--footer > a, .c-button--footer > button, .c-button--footer > input[type=submit], .c-button--footer > div {
    width: 200px;
    min-height: inherit;
    padding-top: 13px;
    padding-bottom: 13px;
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button--footer > a, .c-button--footer > button, .c-button--footer > input[type=submit], .c-button--footer > div {
    width: 160px;
    padding-top: 8px;
    padding-bottom: 9px;
    padding-right: 0;
    padding-left: 0;
    text-align: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .c-button--footer > a, .browser-is-ie .c-button--footer > button, .browser-is-ie .c-button--footer > input[type=submit], .browser-is-ie .c-button--footer > div {
    padding-top: 9px;
    padding-bottom: 8px;
  }
}

.c-button--download span:after {
  width: 15px;
  height: 13px;
  content: url(/common/svg/icon_download_white.svg);
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .c-button--download > a, a:hover .c-button--download > button, a:hover .c-button--download > input[type=submit], a:hover .c-button--download > div {
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .c-button--download > a:before, a:hover .c-button--download > button:before, a:hover .c-button--download > input[type=submit]:before, a:hover .c-button--download > div:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.c-button--header {
  max-width: 160px;
}
.c-button--header > a {
  font-size: 14px;
  font-size: 0.875rem;
  padding-top: 10px;
  padding-bottom: 10px;
}
@media only screen and (max-width: 69.3125em ) {
  .c-button--header {
    display: none;
  }
}

/* -----------------------------------------------------------------
/* ボタンコンテナー
----------------------------------------------------------------- */
.c-button-container {
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button-container {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button-container.-form {
    margin-top: 80px;
  }
}
.c-button-container.-mt_0 {
  margin-top: 0;
}
.c-button-container.-mt_m {
  margin-top: 56px;
}
.c-button-container.-mt_48 {
  margin-top: 48px;
}
.c-button-container.-align_left {
  display: block;
}
.c-button-container .c-button {
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button-container .c-button {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button-container .c-button {
    max-width: 320px;
    margin-right: 10px;
    margin-left: 10px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-button-container .c-button:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button-container .c-button.-size_l {
    max-width: 400px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button-container .c-button.-size_l span {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}
.c-button-container .c-button--header {
  max-width: 160px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button-container.-product {
    display: none;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.c-button {
  /* 別窓リンク */
  /* メール */
}
.c-button.-submit {
  display: block;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button.-submit {
    width: 60px;
  }
}
.c-button.-submit:after {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #222222;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .c-button.-submit:after {
    display: none;
  }
}
.c-button.-submit:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #aa8f7b;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
.c-button.-submit > input[type=submit] {
  z-index: 20;
  background-color: transparent;
  border-radius: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button.-submit > input[type=submit] {
    width: 60px;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-image: url(/common/svg/icon_search_white.svg);
    background-color: #222222;
    background-size: 17px 17px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-button.-submit:hover:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.c-button.-disabled > a, .c-button.-disabled > button, .c-button.-disabled > input[type=submit], .c-button.-disabled > div {
  background-color: rgba(34, 34, 34, 0.2);
  pointer-events: none;
}
.c-button.-disabled > a:hover:before, .c-button.-disabled > button:hover:before, .c-button.-disabled > input[type=submit]:hover:before, .c-button.-disabled > div:hover:before {
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
}
.c-button.-header_search {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .c-button.-header_search {
    display: block;
    width: 200px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button.-search_list {
    display: block;
    width: 200px;
  }
}
.c-button.-zero_class > a, .c-button.-zero_class > button, .c-button.-zero_class > input[type=submit], .c-button.-zero_class > div {
  background: #22303a;
}
.c-button.-zero_chilled > a, .c-button.-zero_chilled > button, .c-button.-zero_chilled > input[type=submit], .c-button.-zero_chilled > div {
  background: #325046;
}
.c-button.-zero_advance > a, .c-button.-zero_advance > button, .c-button.-zero_advance > input[type=submit], .c-button.-zero_advance > div {
  background: #a7333c;
}
.c-button.-furniel > a, .c-button.-furniel > button, .c-button.-furniel > input[type=submit], .c-button.-furniel > div {
  background: #8d5a50;
}
.c-button.-sakura_japan > a, .c-button.-sakura_japan > button, .c-button.-sakura_japan > input[type=submit], .c-button.-sakura_japan > div {
  background: #57233a;
}
.c-button.-pro_class > a, .c-button.-pro_class > button, .c-button.-pro_class > input[type=submit], .c-button.-pro_class > div {
  background: #b98d72;
}
.c-button.-hyo_on_m2 > a, .c-button.-hyo_on_m2 > button, .c-button.-hyo_on_m2 > input[type=submit], .c-button.-hyo_on_m2 > div {
  background: #4d4548;
}
.c-button.-hyo_on_m5 > a, .c-button.-hyo_on_m5 > button, .c-button.-hyo_on_m5 > input[type=submit], .c-button.-hyo_on_m5 > div {
  background: #383442;
}
.c-button.-frosty > a, .c-button.-frosty > button, .c-button.-frosty > input[type=submit], .c-button.-frosty > div {
  background: #a18a84;
}
.c-button.-blank span:after {
  position: relative;
  top: -1px;
  width: 13px;
  height: 11px;
  content: url(/common/svg/icon_blank_white.svg);
}
@media print, screen and (min-width: 48em ) {
  .c-button.-size_l > a, .c-button.-size_l > button, .c-button.-size_l > input[type=submit], .c-button.-size_l > div {
    font-size: 18px;
    font-size: 1.125rem;
    padding-top: 17px;
    padding-bottom: 17px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button.-size_l > a span:after, .c-button.-size_l > button span:after, .c-button.-size_l > input[type=submit] span:after, .c-button.-size_l > div span:after {
    position: relative;
    top: -2px;
  }
}
.c-button.-mail span:after {
  position: relative;
  top: -1px;
  width: 13px;
  height: 11px;
  content: url(/common/svg/icon_mail.svg);
}
.c-button.-mail.-top_0 span:after {
  top: 1px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button.-mail.-top_0 span:after {
    top: 1px;
  }
}
.c-button.-ec-top a {
  background: transparent;
  border: 1px solid #fff;
}
.c-button.-ec-top a:before {
  background-color: #222222;
}
@media (hover: hover) {
  .c-button.-ec-top a:hover {
    border-color: #222222;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button.-ec-feature {
    max-width: 392px;
  }
}

.c-button.-sp_recruit {
  max-width: 200px;
  margin-top: 30px;
  margin-right: auto;
  margin-left: auto;
}
@media print, screen and (min-width: 48em ) {
  .c-button.-sp_recruit {
    max-width: 320px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-button.-sp_recruit {
    display: none;
  }
}

.c-button.-recruit_top {
  max-width: 270px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-button.-recruit_top > a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-button.-recruit_top > a {
    padding-top: 15px;
    padding-bottom: 16px;
    font-size: 17px;
    font-size: 1.0625rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-button.-recruit_top > a {
    padding-top: 15px;
    padding-bottom: 16px;
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.c-checkbox {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  /* label */
  /* input */
  /* ブロック */
}
.c-checkbox > label {
  white-space: nowrap;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  padding-left: 25px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  cursor: pointer;
}
.device-is-mobile.browser-is-safari .c-checkbox > label {
  padding-left: 22px;
}
.c-checkbox > label:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  left: 0;
  width: 16px;
  height: 16px;
  border-style: solid;
  border-color: #ccc;
  border-width: 1px;
  border-radius: 0;
  color: green;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .c-checkbox > label:before {
    top: 1px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-checkbox > label:before {
    top: 2px;
  }
}
.c-checkbox > label:after {
  display: block;
  position: absolute;
  left: 4px;
  width: 6px;
  height: 11px;
  border-style: solid;
  border-width: 2px;
  border-color: currentColor;
  border-left: 0;
  border-top: 0;
  color: transparent;
  -webkit-transform: translateY(-40%) rotate(30deg);
          transform: translateY(-40%) rotate(30deg);
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .c-checkbox > label:after {
    top: 7px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-checkbox > label:after {
    top: 8px;
  }
}
.c-checkbox > label span {
  color: red;
}
@media print, screen and (min-width: 61.25em ) {
  .c-checkbox > label:hover:before {
    border-color: #aa8f7b;
  }
}
.-error .c-checkbox > label:before {
  background-color: rgba(209, 0, 0, 0.06);
  border-color: #d10000;
}
.c-checkbox > input {
  display: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  overflow: hidden;
  top: auto;
  left: auto;
  width: 0;
  height: 0;
  vertical-align: middle;
}
@media print, screen and (min-width: 61.25em ) {
  .c-checkbox > input {
    display: block;
  }
}
.c-checkbox > input:checked + label {
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .c-checkbox > input:checked + label {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-checkbox > input:checked + label {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.c-checkbox > input:checked + label:before {
  background-color: #aa8f7b;
  border-color: #aa8f7b;
}
.c-checkbox > input:checked + label:after {
  color: #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.c-checkbox > input:focus + label:before {
  border-color: #aa8f7b;
}
.device-is-mobile.browser-is-safari .c-checkbox > input {
  top: 1px;
  left: 1px;
}
.c-checkbox.-block > label {
  padding-top: 4px;
  padding-bottom: 6px;
  padding-left: 32px;
}
.browser-is-ie .c-checkbox.-block > label {
  padding-top: 8px;
  padding-bottom: 4px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-checkbox.-block > label {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-checkbox.-block > label {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c-checkbox.-block > label:before {
  top: 6px;
  left: 4px;
  width: 20px;
  height: 20px;
}
.c-checkbox.-block > label:after {
  top: 14px;
  left: 10px;
  width: 6px;
  height: 11px;
}
.device-is-mobile .c-checkbox.-block > label {
  padding-top: 6px;
  padding-left: 28px;
}
.device-is-mobile .c-checkbox.-block > label:before {
  left: 0;
}
.device-is-mobile .c-checkbox.-block > label:after {
  left: 6px;
}
@media print, screen and (min-width: 61.25em ) {
  .c-checkbox.-block > label:hover {
    background-color: rgba(170, 143, 123, 0.2);
  }
}

.p-filters .c-checkbox > label {
  padding-top: 2px;
  padding-bottom: 3px;
  padding-left: 29px;
  padding-right: 4px;
  -webkit-transition: none;
  transition: none;
}
@media only screen and (max-width: 40em ) {
  .p-filters .c-checkbox > label {
    padding-top: 6px;
    padding-bottom: 7px;
    padding-left: 28px;
  }
}
.browser-is-ie .p-filters .c-checkbox > label {
  padding-top: 5px;
  padding-bottom: 0;
}
.device-is-mobile.browser-is-safari .p-filters .c-checkbox > label {
  padding-left: 30px;
}
.p-filters .c-checkbox > label:before {
  top: 4px;
  left: 4px;
}
@media only screen and (max-width: 40em ) {
  .p-filters .c-checkbox > label:before {
    top: 8px;
    left: 4px;
  }
}
.p-filters .c-checkbox > label:after {
  top: 10px;
  left: 8px;
}
@media only screen and (max-width: 40em ) {
  .p-filters .c-checkbox > label:after {
    top: 14px;
    left: 8px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-filters .c-checkbox > label:hover {
    background-color: rgba(170, 143, 123, 0.2);
  }
}
.p-filters .c-checkbox > input:checked + label {
  background-color: rgba(170, 143, 123, 0.2);
}

.c-checkbox--inline {
  display: inline-block;
}

.c-content-block {
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
.c-content-block.-option .c-content-block__inner {
  padding-top: 0;
}

.c-content-block__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 1400px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-content-block__inner {
    padding-top: 38px;
    padding-bottom: 75px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block__inner {
    margin-right: auto;
    margin-left: auto;
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.c-content-block__section {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}

/*****************************************
* モディファイア
*****************************************/
.c-content-block.-form .c-content-block__inner {
  max-width: 820px;
}

.c-content-block.-other_support .c-content-block__inner, .c-content-block.-content .c-content-block__inner {
  max-width: 920px;
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-other_support .c-content-block__inner, .c-content-block.-content .c-content-block__inner {
    width: 77%;
  }
}

.c-content-block.-reading .c-content-block__inner {
  max-width: 960px;
}
@media print, screen and (min-width: 61.25em ) {
  .c-content-block.-reading .c-content-block__inner {
    width: 77%;
  }
}

.c-content-block.-width_s .c-content-block__inner {
  max-width: 1240px;
}

.c-content-block.-home_top .c-content-block__inner, .c-content-block.-width_m .c-content-block__inner {
  max-width: 1320px;
}

.c-content-block.-home_mid .c-content-block__inner {
  max-width: 1400px;
}

.c-content-block.-home_top .c-content-block__inner, .c-content-block.-padding_0 .c-content-block__inner {
  padding-top: 0;
  padding-bottom: 0;
}

.c-content-block.-home_top, .c-content-block.-gray {
  background-color: #f7f7f7;
}

.c-content-block {
  /* 背景：グレー */
  /* 背景：濃いグレー（ホームのHISTORYブロック） */
  /* サイズ系 */
  /* 読み物系 */
  /* 通常のコンテンツ系 */
  /* サポート下層の同一回遊モジュール部分 */
  /* フォーム系 */
  /* margin系 */
  /* padding系 */
  /* 下罫線つき */
  /* ホーム */
  /* シリーズカラー */
  /* 強み POINT 縦長の画像 */
  /* 強み POINT 縦長の画像の上 */
}
.c-content-block.-darkgray {
  background-color: #ededed;
}
.c-content-block.-full {
  padding-right: 0;
  padding-left: 0;
}
.c-content-block.-full .c-content-block__inner {
  max-width: inherit;
}
@media print, screen and (min-width: 61.25em ) {
  .c-content-block.-reading {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-content {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-other_support {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-content-block.-other_support {
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-content-block.-other_support .c-content-block__inner {
    width: 100%;
    max-width: 1400px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-content-block.-mtop_m {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-mtop_m {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block.-mtop_m {
    margin-top: 80px;
  }
}
.c-content-block.-mtop_0 {
  margin-top: 0;
}
.c-content-block.-ptop_0 .c-content-block__inner {
  padding-top: 0;
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-ptop_s .c-content-block__inner {
    padding-top: 54px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-content-block.-ptop_0_sp .c-content-block__inner {
    padding-top: 0;
  }
}
.c-content-block.-pbottom_0 .c-content-block__inner {
  padding-bottom: 0;
}
.c-content-block.-pbottom_sp-s .c-content-block__inner {
  padding-bottom: 44px;
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-pbottom_l .c-content-block__inner {
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block.-pbottom_l .c-content-block__inner {
    padding-bottom: 175px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-pbottom_l-2 .c-content-block__inner {
    padding-bottom: 125px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block.-pbottom_l-2 .c-content-block__inner {
    padding-bottom: 175px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-p_l .c-content-block__inner {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}
.c-content-block.-border {
  border-bottom: solid 1px #dddddd;
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-border-top_s {
    border-top: solid 1px #dddddd;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-content-block.-padding-top-zero_xs .c-content-block__inner {
    padding-top: 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-content-block.-home_mid .c-content-block__inner {
    padding-top: 46px;
    padding-bottom: 54px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-home_mid .c-content-block__inner {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block.-home_mid .c-content-block__inner {
    padding-right: 100px;
    padding-left: 100px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .-home_mid + .c-content-block.-home_mid {
    margin-top: -10px;
  }
}
.-home_mid + .c-content-block.-home_mid .c-content-block__inner {
  padding-top: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel + .c-content-block.-home_mid {
    margin-top: -42px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel + .c-content-block.-home_mid {
    margin-top: -80px;
  }
}
.c-content-block.-zero_class {
  color: #fff;
  background-color: #22303a;
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-strength-point-v .c-content-block__inner {
    padding-top: 80px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block.-strength-point-v .c-content-block__inner {
    padding-top: 100px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-content-block.-strength-point-h .c-content-block__inner {
    padding-bottom: 120px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block.-strength-point-h .c-content-block__inner {
    padding-bottom: 160px;
  }
}

.c-content-block__inner.-case {
  padding-top: 50px;
}
@media only screen and (max-width: 40em ) {
  .c-content-block__inner.-case {
    padding-top: 30px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-content-block__inner.-case {
    padding-top: 70px;
  }
}

.c-content-block__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-content-block.-size_m .c-content-block__inner {
  max-width: 1200px;
}

.c-definition-list {
  width: 100%;
}
.c-definition-list dt {
  position: relative;
  line-height: 1.4;
}
.c-definition-list dt:after {
  margin-right: 5px;
  margin-left: 5px;
  content: ":";
}
.c-definition-list dd {
  line-height: 1.4;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.c-definition-list.-store, .c-definition-list.-block {
  margin-top: -6px;
}
.c-definition-list.-store:after, .c-definition-list.-block:after {
  display: block;
  clear: both;
  content: "";
}
.c-definition-list.-store dt, .c-definition-list.-block dt {
  display: block;
  clear: left;
  float: left;
}
.c-definition-list.-store dd, .c-definition-list.-block dd {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  float: left;
}

.c-definition-list.-inline dt {
  display: inline;
  margin-left: 1px;
}
.c-definition-list.-inline dt:first-child {
  margin-left: 0;
}
.c-definition-list.-inline dd {
  display: inline;
  margin-left: -3px;
}
.c-definition-list.-inline dd:after {
  margin-right: 4px;
  margin-left: 4px;
  content: ",";
}
.c-definition-list.-inline dd:last-child:after {
  display: none;
}
.c-definition-list.-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-definition-list.-flex dt {
  display: block;
  white-space: nowrap;
}
.c-definition-list.-flex dd {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .c-definition-list.-store {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-definition-list.-store {
    margin-top: 10px;
  }
  .c-definition-list.-store dd {
    max-width: calc(100% - 100px);
  }
}
.c-definition-list.-store dt, .c-definition-list.-store dd {
  line-height: 1.75;
}
@media only screen and (max-width: 47.9375em ) {
  .c-definition-list.-store dt, .c-definition-list.-store dd {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-definition-list.-store dt, .c-definition-list.-store dd {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c-definition-list.-store dt {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .c-definition-list.-store dt {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-definition-list.-store dt {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-definition-list.-store dt {
    width: 92px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-definition-list.-store dt {
    width: 92px;
    padding-left: 5px;
  }
}
.c-definition-list.-store dt:after {
  display: none;
}

.c-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/*****************************************
* モディファイア
*****************************************/
.c-flex {
  /* ホームのピックアップと閲覧履歴 */
}
.c-flex.-img_width_m {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.c-flex.-img_width_m .c-flex__item.-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media print, screen and (min-width: 48em ) {
  .c-flex.-img_width_m .c-flex__item.-img {
    margin-left: 40px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-flex.-home_2col .c-flex__item {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-flex.-home_2col .c-flex__item:first-child {
    width: 21%;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-flex.-home_2col .c-flex__item:last-child {
    width: 79%;
  }
}

/* -----------------------------------------------------------------
/* H2相当
----------------------------------------------------------------- */
.c-heading-2, .p-product-edit-area > h3 {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-2, .p-product-edit-area > h3 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-2, .p-product-edit-area > h3 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-2, .p-product-edit-area > h3 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-2, .p-product-edit-area > h3 {
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-heading-2, .p-product-edit-area > h3 {
    font-size: 34px;
    font-size: 2.125rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-2 br, .p-product-edit-area > h3 br {
    display: none;
  }
}
.c-heading-2 > span, .p-product-edit-area > h3 > span {
  display: block;
  margin-bottom: 13px;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.1em;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-2 > span, .p-product-edit-area > h3 > span {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-2 > span, .p-product-edit-area > h3 > span {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-heading-2 > span, .p-product-edit-area > h3 > span {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

/* -----------------------------------------------------------------
/* H3相当
----------------------------------------------------------------- */
.c-heading-3, .p-product-edit-area > h4 {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-3, .p-product-edit-area > h4 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-3, .p-product-edit-area > h4 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-3, .p-product-edit-area > h4 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-3, .p-product-edit-area > h4 {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-heading-3, .p-product-edit-area > h4 {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
.c-heading-3.-center, .p-product-edit-area > h4.-center {
  text-align: center;
}
.c-heading-3.-staff span.-position, .p-product-edit-area > h4.-staff span.-position {
  font-size: 16px;
  font-size: 1rem;
  margin-left: 20px;
}
.c-heading-3.-staff span.-entry, .p-product-edit-area > h4.-staff span.-entry {
  font-size: 14px;
  font-size: 0.875rem;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-3.-staff span.-entry, .p-product-edit-area > h4.-staff span.-entry {
    display: block;
    font-weight: normal;
    margin-top: 4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-3.-staff span.-entry, .p-product-edit-area > h4.-staff span.-entry {
    margin-left: 12px;
  }
}

/* -----------------------------------------------------------------
/* H4相当
----------------------------------------------------------------- */
.c-heading-4, .p-section-column__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-4, .p-section-column__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-4, .p-section-column__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-4, .p-section-column__head {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-4, .p-section-column__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-heading-4, .p-section-column__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

/* -----------------------------------------------------------------
/* H5相当
----------------------------------------------------------------- */
.c-heading-5 {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-5 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-5 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-5 {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-5 {
    font-size: 16px;
    font-size: 1rem;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.c-heading-1.-center,
.c-heading-2.-center,
.p-product-edit-area > h3.-center,
.c-heading-3.-center,
.p-product-edit-area > h4.-center,
.c-heading-4.-center,
.-center.p-section-column__head,
.c-heading-5.-center {
  text-align: center;
}

.c-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  overflow: hidden;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .c-image {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-image {
    margin-top: 54px;
  }
}
.c-image img {
  display: block;
  max-width: 100%;
}
.browser-is-ie .c-image img {
  width: 100%;
}
.c-image:first-child {
  margin-top: 0;
}
.c-image.-height_auto img {
  height: auto;
}

.c-image__caption {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 0.8125rem;
  text-align: center;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em ) {
  .c-image.-align_right {
    float: right;
    width: auto;
    margin-top: 15px;
    margin-left: 40px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-image.-sp_small img {
    max-width: 200px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-image.-mt_s-s {
    margin-top: 28px;
  }
}

.c-image.-environment {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .c-image.-environment {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-image.-environment {
    margin-top: 10px;
  }
}
.c-image.-environment .c-image__flex {
  margin-right: -10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-image.-environment .c-image__flex-item {
  max-width: calc(50% - 10px);
  margin-right: 10px;
}
.c-image.-environment .c-image__flex-item img {
  -o-object-fit: contain;
     object-fit: contain;
}

/* ==========================================================================
* Arrow
========================================================================== */
.c-link-arrow, .p-faq__link {
  text-decoration: none;
}
.c-link-arrow:after, .p-faq__link:after {
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 12px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_darkgray.svg);
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .c-link-arrow:after, a:hover .p-faq__link:after, .c-link-arrow:hover:after, .p-faq__link:hover:after {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
  }
}
.c-link-arrow.-reverse:before, .-reverse.p-faq__link:before {
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-right: 12px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_darkgray_reverse.svg);
}
.c-link-arrow.-reverse:after, .-reverse.p-faq__link:after {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .c-link-arrow.-reverse:before, a:hover .-reverse.p-faq__link:before, .c-link-arrow.-reverse:hover:before, .-reverse.p-faq__link:hover:before {
    -webkit-transform: translate(-4px, 0);
            transform: translate(-4px, 0);
  }
}

@media print, screen and (min-width: 61.25em ) {
  a:hover .c-link-arrow--invert:after, .c-link-arrow--invert:hover:after {
    content: url(/common/svg/arrow_right_white.svg);
  }
}

.c-link-arrow--bold {
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .c-link-arrow--bold {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-link-arrow--bold {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}

/* -----------------------------------------------------------------
/* Blank
----------------------------------------------------------------- */
.c-link-blank {
  margin-right: 4px;
}
.c-link-blank:after {
  display: inline-block;
  position: relative;
  top: -0.1em;
  width: 13px;
  height: 11px;
  margin-left: 5px;
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: url(/common/svg/icon_blank.svg);
}
.c-link-blank:hover {
  text-decoration: none;
}
p .c-link-blank {
  text-decoration: underline;
}

/* -----------------------------------------------------------------
/* Anchor
----------------------------------------------------------------- */
.c-link-anchor {
  margin-right: 7px;
  text-decoration: none;
}
.c-link-anchor:after {
  display: inline-block;
  position: relative;
  top: -0.3em;
  width: 11px;
  height: 5px;
  margin-left: 4px;
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: url(/common/svg/arrow_bottom_down_gold.svg);
}
@media print, screen and (min-width: 61.25em ) {
  .c-link-anchor:hover:after {
    -webkit-transform: translate(0, 2px);
            transform: translate(0, 2px);
    content: url(/common/svg/arrow_bottom_down_gold.svg);
  }
}
p .c-link-anchor {
  font-weight: normal;
  text-decoration: underline;
}

/* -----------------------------------------------------------------
/* Header
----------------------------------------------------------------- */
.c-link.c-link--header {
  width: 100%;
  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;
}
.c-link.c-link--header a {
  color: #222;
  font-weight: 700;
  letter-spacing: 0.03em;
}

.c-list {
  margin-top: 16px;
}
.c-list:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .c-list > li {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list > li {
    margin-top: 8px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.c-list > li:first-child {
  margin-top: 0;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .c-list.-sp_large > li {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c-list.-disc > li {
  position: relative;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-weight: normal;
}
@media only screen and (max-width: 47.9375em ) {
  .c-list.-disc > li {
    padding-left: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-disc > li {
    padding-left: 16px;
    background-position: 0 0.6em;
  }
}
.c-list.-disc > li:before {
  content: "";
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #c3c0bc;
}
.browser-is-ie .c-list.-disc > li:before {
  top: 0.5em;
}
.c-list.-disc > li > a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .c-list.-disc > li > a:hover {
    text-decoration: underline;
  }
}
.c-list.-decimal {
  counter-reset: number;
}
@media only screen and (max-width: 47.9375em ) {
  .c-list.-decimal {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-decimal {
    margin-top: 20px;
  }
}
.c-list.-decimal:first-child {
  margin-top: 0;
}
.c-list.-decimal > li {
  position: relative;
  padding-left: 30px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-list.-decimal > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-decimal > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list.-decimal > li {
    margin-top: 8px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.c-list.-decimal > li:before {
  display: block;
  position: absolute;
  left: 0;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  line-height: 1.23;
  counter-increment: number;
  content: counter(number) ".";
}
@media only screen and (max-width: 47.9375em ) {
  .c-list.-decimal > li:before {
    top: 2px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-decimal > li:before {
    top: 0;
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list.-decimal > li:before {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
.c-list.-decimal > li > a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .c-list.-decimal > li > a:hover {
    text-decoration: underline;
  }
}
.c-list.-decimal > li:first-child {
  margin-top: 0;
}
.c-list.-decimal.-font_normal > li:before {
  top: 0;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-weight: normal;
  line-height: 1.75;
}
@media only screen and (max-width: 47.9375em ) {
  .c-list.-decimal.-font_normal > li:before {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-decimal.-font_normal > li:before {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list.-decimal.-font_normal > li:before {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-size_l > li {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list.-size_l > li {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-size_m > li {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list.-size_m > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-list.-size_s > li {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-list.-size_s > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}

.c-overlay {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  z-index: 2000000001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.c-overlay.visible {
  visibility: visible;
  opacity: 1;
}

/* セクション Lv.1（上100） */
.c-section-1 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-1 {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-1 {
    margin-top: 102px;
  }
}
.c-section-1:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-1.-border {
    padding-top: 57px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-1.-border {
    padding-top: 95px;
  }
}

/* セクション Lv.2（上80） */
.c-section-2 {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-2 {
    margin-top: 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-2 {
    margin-top: 75px;
  }
}
.c-section-2:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-2.-border {
    padding-top: 43px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-2.-border {
    padding-top: 72px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-2.-mt_l-sp {
    margin-top: 85px;
  }
}

/* セクション Lv.3（上60） */
.c-section-3 {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-3 {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-3 {
    margin-top: 43px;
  }
}
.c-section-3:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-3 + .c-section-3, .p-product-edit-area > h4 + .c-section-3 {
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-3 + .c-section-3, .p-product-edit-area > h4 + .c-section-3 {
    margin-top: 53px;
  }
}

/* セクション Lv.4 */
.c-section-4 {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-4 {
    margin-top: 23px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-4 {
    margin-top: 38px;
  }
}
.c-section-4:first-child {
  margin-top: 0;
}

/* セクション Lv.5 */
.c-section-5 {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-5 {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-5 {
    margin-top: 28px;
  }
}
.c-section-5:first-child {
  margin-top: 0;
}

.c-section-6 {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .c-section-6 {
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-section-6 {
    margin-top: 56px;
  }
}
.c-section-6:first-child {
  margin-top: 0;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.c-section-1.-border,
.c-section-2.-border,
.c-section-3.-border,
.c-section-4.-border {
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #dddddd;
}
.c-section-1.-mtop_0,
.c-section-2.-mtop_0,
.c-section-3.-mtop_0,
.c-section-4.-mtop_0 {
  margin-top: 0;
}

.c-sentence, .p-link-panel__desc, .p-product-edit-area > p {
  text-align: justify;
}
@media only screen and (max-width: 47.9375em ) {
  .c-sentence, .p-link-panel__desc, .p-product-edit-area > p {
    margin-top: 10px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence, .p-link-panel__desc, .p-product-edit-area > p {
    margin-top: 16px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 2;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence, .p-link-panel__desc, .p-product-edit-area > p {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
  }
}
.browser-is-ie .c-sentence, .browser-is-ie .p-link-panel__desc, .browser-is-ie .p-product-edit-area > p {
  text-justify: inter-ideograph;
}
.c-sentence:first-child, .p-link-panel__desc:first-child, .p-product-edit-area > p:first-child {
  margin-top: 0;
}

.c-sentence.-head, .-head.p-link-panel__desc, .p-product-edit-area > p.-head, .c-sentence.-center, .-center.p-link-panel__desc, .p-product-edit-area > p.-center {
  text-align: center;
}

/* -----------------------------------------------------------------
/* 例外
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .c-heading-3 + .c-sentence, .c-heading-3 + .p-link-panel__desc, .p-product-edit-area > .c-heading-3 + p, .p-product-edit-area > h4 + .c-sentence, .p-product-edit-area > h4 + .p-link-panel__desc, .p-product-edit-area > h4 + p {
    margin-top: 19px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-3 + .c-sentence, .c-heading-3 + .p-link-panel__desc, .p-product-edit-area > .c-heading-3 + p, .p-product-edit-area > h4 + .c-sentence, .p-product-edit-area > h4 + .p-link-panel__desc, .p-product-edit-area > h4 + p {
    margin-top: 31px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-heading-4 + .c-sentence, .c-heading-4 + .p-link-panel__desc, .p-section-column__head + .c-sentence, .p-section-column__head + .p-link-panel__desc, .p-product-edit-area > .c-heading-4 + p, .p-product-edit-area > .p-section-column__head + p {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-heading-4 + .c-sentence, .c-heading-4 + .p-link-panel__desc, .p-section-column__head + .c-sentence, .p-section-column__head + .p-link-panel__desc, .p-product-edit-area > .c-heading-4 + p, .p-product-edit-area > .p-section-column__head + p {
    margin-top: 22px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .c-sentence.-sp_large, .-sp_large.p-link-panel__desc, .p-product-edit-area > p.-sp_large {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-sentence.-xs, .-xs.p-link-panel__desc, .p-product-edit-area > p.-xs {
    margin-top: 6px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-xs, .-xs.p-link-panel__desc, .p-product-edit-area > p.-xs {
    margin-top: 6px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence.-xs, .-xs.p-link-panel__desc, .p-product-edit-area > p.-xs {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-sentence.-small, .-small.p-link-panel__desc, .p-product-edit-area > p.-small {
    margin-top: 6px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-small, .-small.p-link-panel__desc, .p-product-edit-area > p.-small {
    margin-top: 6px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence.-small, .-small.p-link-panel__desc, .p-product-edit-area > p.-small {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-sentence.-medium, .-medium.p-link-panel__desc, .p-product-edit-area > p.-medium {
    margin-top: 6px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-medium, .-medium.p-link-panel__desc, .p-product-edit-area > p.-medium {
    margin-top: 6px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-large, .-large.p-link-panel__desc, .p-product-edit-area > p.-large {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence.-large, .-large.p-link-panel__desc, .p-product-edit-area > p.-large {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence.-margin_l, .-margin_l.p-link-panel__desc, .p-product-edit-area > p.-margin_l {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-pc_center, .-pc_center.p-link-panel__desc, .p-product-edit-area > p.-pc_center {
    text-align: center;
  }
}
.c-sentence.-head, .-head.p-link-panel__desc, .p-product-edit-area > p.-head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .c-sentence.-head, .-head.p-link-panel__desc, .p-product-edit-area > p.-head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-head, .-head.p-link-panel__desc, .p-product-edit-area > p.-head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-lh_inherit, .-lh_inherit.p-link-panel__desc, .p-product-edit-area > p.-lh_inherit {
    line-height: inherit;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence.-lh_inherit, .-lh_inherit.p-link-panel__desc, .p-product-edit-area > p.-lh_inherit {
    line-height: inherit;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .c-sentence.-size_m-xl, .-size_m-xl.p-link-panel__desc, .p-product-edit-area > p.-size_m-xl {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-mt_pc-0, .-mt_pc-0.p-link-panel__desc, .p-product-edit-area > p.-mt_pc-0 {
    margin-top: 0;
  }
}
.c-sentence.-mt_-0, .-mt_-0.p-link-panel__desc, .p-product-edit-area > p.-mt_-0 {
  margin-top: 0;
}
.c-sentence.-work br, .-work.p-link-panel__desc br, .p-product-edit-area > p.-work br {
  display: none;
}
@media print, screen and (min-width: 48em ) {
  .c-sentence.-work br, .-work.p-link-panel__desc br, .p-product-edit-area > p.-work br {
    display: block;
  }
}
@media print, screen and (min-width: 80em ) {
  .c-sentence.-work br, .-work.p-link-panel__desc br, .p-product-edit-area > p.-work br {
    display: none;
  }
}

.c-strong {
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .c-strong {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-strong {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}

.c-free-dial::before {
  content: "";
  width: 2rem;
  height: 2rem;
  background-image: url(/support/img/icon_free-dial.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  position: relative;
  top: 0.625rem;
  margin-right: 0.25rem;
}

.c-table {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
.c-table th,
.c-table td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  border-collapse: collapse;
  border-style: solid;
  border-width: 1px;
  border-color: #dddddd;
  vertical-align: top;
}
@media only screen and (max-width: 47.9375em ) {
  .c-table th,
  .c-table td {
    padding-right: 14px;
    padding-left: 14px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-table th,
  .c-table td {
    padding-right: 40px;
    padding-left: 40px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.c-table th {
  background-color: #f7f7f7;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .c-table th {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-table th {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-table th {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-table th {
    padding-top: 13px;
    padding-bottom: 15px;
  }
}
.c-table td {
  background-color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .c-table td {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-table td {
    padding-top: 21px;
    padding-bottom: 21px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em ) {
  .c-table.-padding_s th,
  .c-table.-padding_s td {
    padding-right: 30px;
    padding-left: 30px;
  }
}
.c-table.-center th,
.c-table.-center td {
  text-align: center;
}
.c-table th.-center,
.c-table td.-center {
  text-align: center;
}
@media print, screen and (min-width: 48em ) {
  .c-table th.-nowrap,
  .c-table td.-nowrap {
    white-space: nowrap;
  }
}

/* -----------------------------------------------------------------
/* 横スクロール版
----------------------------------------------------------------- */
.c-table-scroll-container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.c-table-scroll-container::-webkit-scrollbar {
  height: 6px;
}
.c-table-scroll-container::-webkit-scrollbar-track {
  border-radius: 3px;
}
.c-table-scroll-container::-webkit-scrollbar-thumb {
  border-radius: 3px;
  background: rgba(0, 0, 0, 0.5);
}
.c-table-scroll-container .c-table {
  min-width: 600px;
}
@media only screen and (max-width: 47.9375em ) {
  .c-table-scroll-container.-scroll_icon {
    position: relative;
  }
  .c-table-scroll-container.-scroll_icon::before {
    content: "横にスクロールできます";
    position: sticky;
    display: block;
    -webkit-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out;
    font-size: 14px;
    font-size: 0.875rem;
    top: 1px;
    right: 3px;
    width: 180px;
    height: 25px;
    margin-bottom: 5px;
    background: right;
    background-image: url(/common/svg/icon_scroll.svg);
    background-repeat: no-repeat;
    background-size: contain;
  }
}

.browser-is-ff .c-table td {
  background-color: transparent;
}

.c-full-img {
  display: block;
  width: 100%;
  height: auto;
}
.c-full-img.-sakecellar {
  aspect-ratio: 375/245;
}
@media print, screen and (min-width: 48em ) {
  .c-full-img.-sakecellar {
    aspect-ratio: 1600/640;
  }
}
@media (min-width: 2000px) {
  .c-full-img.-sakecellar {
    height: 800px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.c-scrollable {
  position: relative;
}

.c-scrollable__content {
  max-width: 100%;
  overflow: auto;
}

.c-scrollable__label {
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
  opacity: 0;
  font-size: 14px;
  font-size: 0.875rem;
  position: absolute;
  top: -22px;
  width: 100%;
  text-align: right;
}
.-overflow .c-scrollable__label {
  opacity: 1;
}
.-overflow.-scroll .c-scrollable__label {
  opacity: 0;
}

.c-scrollable__blur {
  display: block;
  position: absolute;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
  right: 0;
  bottom: 0;
  width: 6.25rem;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(247, 247, 247, 0)), color-stop(34.61%, rgba(247, 247, 247, 0.3)), to(#f7f7f7));
  background: linear-gradient(to right, rgba(247, 247, 247, 0) 0, rgba(247, 247, 247, 0.3) 34.61%, #f7f7f7 100%);
  opacity: 0;
}
.-overflow .c-scrollable__blur {
  opacity: 1;
}
.-overflow.-scroll .c-scrollable__blur {
  opacity: 0;
}

.c-sup {
  vertical-align: super;
}
.c-sup.-product-head {
  font-size: 55.5555555556%;
}
.c-sup.-series-block {
  font-size: 61.7647058824%;
}

.c-ec-button {
  width: 100%;
  background-color: #aa8f7b;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  border: none;
  color: #fff;
  cursor: pointer;
  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;
  -webkit-transition: color cubic-bezier(0.38, 0.33, 0.23, 0.99) 0.4s;
  transition: color cubic-bezier(0.38, 0.33, 0.23, 0.99) 0.4s;
  overflow: hidden;
  position: relative;
  font-weight: 600;
}
@media only screen and (max-width: 47.9375em ) {
  .c-ec-button {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .c-ec-button {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .c-ec-button {
    min-height: 48px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-ec-button {
    font-size: 16px;
    font-size: 1rem;
    min-height: 48px;
  }
}
.c-ec-button.-product {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  max-width: calc(100% - 50px);
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em ) {
  .c-ec-button.-product {
    min-height: 50px;
    font-size: 14px;
    font-size: 0.875rem;
    bottom: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .c-ec-button.-product {
    font-size: 16px;
    font-size: 1rem;
    min-height: 56px;
    bottom: 24px;
  }
}
.c-ec-button:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  background: #222222;
  content: "";
}
.c-ec-button::after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  margin-left: 6px;
  position: relative;
  top: 0.02em;
  background-image: url(/common/svg/icon_cart.svg);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 11;
}
@media print, screen and (min-width: 61.25em ) {
  .c-ec-button:hover {
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .c-ec-button:hover:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.c-ec-button span {
  position: relative;
  z-index: 10;
}

.p-accordion-container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #eeeeee;
  /* 階層共通 */
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-container {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    -webkit-transform: translate(0, 100%);
            transform: translate(0, 100%);
  }
}
.p-accordion-container.animation {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.p-accordion-container a, .p-accordion-container button {
  display: block;
  position: relative;
  padding-top: 12px;
  padding-bottom: 13px;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  text-decoration: none;
  color: #222222;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 48em ) {
  .p-accordion-container a, .p-accordion-container button {
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-weight: bold;
  }
}
@media only screen and (min-width: 48em ) and (max-width: 47.9375em ) {
  .p-accordion-container a, .p-accordion-container button {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) and (min-width: 48em ) {
  .p-accordion-container a, .p-accordion-container button {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-accordion-container a:after {
  display: block;
  position: absolute;
  right: 3px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 5px;
  height: 10px;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(/common/svg/arrow_right_darkgray.svg);
  background-size: 5px 10px;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-container a:after {
    display: none;
  }
}
.p-accordion-container button {
  /* <button>のリセット */
  position: relative;
  line-height: 1.75;
}
.p-accordion-container button:before, .p-accordion-container button:after {
  position: absolute;
  display: block;
  top: 50%;
  background-color: #aaaaaa;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
}
.p-accordion-container button:before {
  width: 11px;
  height: 1px;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.p-accordion-container button:after {
  width: 1px;
  height: 11px;
  right: 5px;
  -webkit-transform: translate(0, -50%) rotate(0deg);
          transform: translate(0, -50%) rotate(0deg);
}
.p-accordion-container button.open:after {
  -webkit-transform: translate(0, -50%) rotate(90deg);
          transform: translate(0, -50%) rotate(90deg);
}
.p-accordion-container button.p-accordion-close {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-container button.p-accordion-close {
    display: block;
  }
}
.close .p-accordion-container {
  height: 0;
}

.p-accordion-list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 22px;
  padding-bottom: 22px;
  /* 第2階層 */
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.p-accordion-list > li {
  width: 100%;
  max-width: 180px;
  margin: 0 auto;
  border-bottom: solid 1px #dddddd;
  /* 第3階層 */
}
@media print, screen and (min-width: 48em ) {
  .p-accordion-list > li {
    max-width: 320px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-list > li {
    width: auto;
    max-width: inherit;
    margin: 0;
    border-bottom: none;
  }
}
.p-accordion-list > li:last-child {
  border-bottom: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-list > li:last-child > a:after, .p-accordion-list > li:last-child > button:after {
    display: none;
  }
}
.p-accordion-list > li > a, .p-accordion-list > li > button {
  padding-left: 10px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-list > li > a, .p-accordion-list > li > button {
    position: relative;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-accordion-list > li > a, .p-accordion-list > li > button {
    padding-right: 36px;
    padding-left: 36px;
  }
}
.p-accordion-list > li > a:after, .p-accordion-list > li > button:after {
  display: none;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  height: 14px;
  width: 1px;
  background-color: #dddddd;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion-list > li > a:after, .p-accordion-list > li > button:after {
    display: block;
  }
}
.p-accordion-list > li > .p-accordion-container > .p-accordion-list {
  padding-top: 0px;
  padding-bottom: 18px;
}
.p-accordion-list > li > .p-accordion-container > .p-accordion-list > li {
  border-bottom: none;
}
.p-accordion-list > li > .p-accordion-container > .p-accordion-list > li > a, .p-accordion-list > li > .p-accordion-container > .p-accordion-list > li > button {
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 24px;
}

.p-accordion__trigger {
  display: inline-block;
  position: relative;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion__trigger:hover {
    color: #aa8f7b;
  }
}
.p-accordion__trigger.is-hide {
  display: none;
}

.p-accordion__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1;
  position: absolute;
  top: 50%;
  right: 0;
  margin: 0;
  padding: 0;
  border: none;
  background-color: transparent;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: color ease 0.4s;
  transition: color ease 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion__button {
    cursor: pointer;
  }
}
.p-accordion__trigger--inline .p-accordion__button {
  position: relative;
  top: auto;
  right: auto;
  -webkit-transform: none;
  transform: none;
}
.p-accordion__trigger--inline .p-accordion__button:after {
  content: "閉じる";
}
.is-close .p-accordion__trigger--inline .p-accordion__button:after {
  content: "絞り込みオプションを開く";
}
.p-accordion__trigger--inline .p-accordion__button span {
  margin-right: 8px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion__button:hover {
    color: #aa8f7b;
  }
}
.p-accordion__button span {
  display: inline-block;
  position: relative;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  border-style: solid;
  border-width: 1px;
  border-color: #333;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion__trigger:hover .p-accordion__button span {
    border-color: #aa8f7b;
  }
}
.p-accordion__button span:before, .p-accordion__button span:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 2px;
  background-color: #333;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-accordion__trigger:hover .p-accordion__button span:before, .p-accordion__trigger:hover .p-accordion__button span:after {
    background-color: #aa8f7b;
  }
}
.is-close .p-accordion__button span:after {
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
  transform: translate(-50%, -50%) rotate(-90deg);
}

.p-header-accordion-1__container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  height: 0;
  background-color: #f7f7f7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__container {
    position: absolute;
    width: 100%;
    left: 0;
  }
}
.p-header-accordion-1__container.animation {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__container.open-1 {
    height: 120px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-1__container.open-1 {
    height: 140px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__container.open-1.-product {
    height: 202px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-1__container.open-1.-product {
    height: 202px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__container.open-2 {
    height: 590px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-1__container.open-2 {
    height: 655px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__container.open-2.-product {
    height: 692px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-1__container.open-2.-product {
    height: 747px;
  }
}

.p-header-accordion-1__list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 22px;
  padding-bottom: 22px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list.-product {
    padding-top: 17px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding-top: 34px;
    padding-bottom: 37px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-1__list {
    padding-top: 44px;
    padding-bottom: 47px;
  }
}
.p-header-accordion-1__list > li {
  width: 100%;
  max-width: 200px;
  margin: 0 auto;
  border-bottom: solid 1px #dddddd;
}
@media print, screen and (min-width: 48em ) {
  .p-header-accordion-1__list > li {
    max-width: 320px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li {
    width: auto;
    max-width: inherit;
    margin: 0;
    border-bottom: none;
  }
}
.p-header-accordion-1__list > li:last-child {
  border-bottom: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li:last-child > a:after, .p-header-accordion-1__list > li:last-child > button:after {
    display: none;
  }
}
.p-header-accordion-1__list > li > a, .p-header-accordion-1__list > li > button {
  display: block;
  position: relative;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-right: 15px;
  padding-left: 0;
  text-decoration: none;
  color: #222222;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.4;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > a, .p-header-accordion-1__list > li > button {
    position: relative;
    padding-bottom: 7px;
    padding-right: 11px;
    padding-left: 11px;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-weight: bold;
    line-height: 1.75;
  }
}
@media only screen and (min-width: 61.25em ) and (max-width: 47.9375em ) {
  .p-header-accordion-1__list > li > a, .p-header-accordion-1__list > li > button {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 61.25em ) and (min-width: 48em ) {
  .p-header-accordion-1__list > li > a, .p-header-accordion-1__list > li > button {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-1__list > li > a, .p-header-accordion-1__list > li > button {
    font-size: 14px;
    font-size: 0.875rem;
    padding-right: 24px;
    padding-left: 24px;
  }
}
.p-header-accordion-1__list > li > a:after, .p-header-accordion-1__list > li > button:after {
  display: none;
  position: absolute;
  top: 20px;
  right: 0;
  height: 14px;
  width: 1px;
  background-color: #dddddd;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > a:after, .p-header-accordion-1__list > li > button:after {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > a span, .p-header-accordion-1__list > li > button span {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: inline-block;
    position: relative;
    overflow: hidden;
    padding-bottom: 6px;
    padding-right: 2px;
    padding-left: 1px;
  }
}
.p-header-accordion-1__list > li > a span:after, .p-header-accordion-1__list > li > button span:after {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > a span:after, .p-header-accordion-1__list > li > button span:after {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #222222;
    -webkit-transform: translate(-110%, 0);
            transform: translate(-110%, 0);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    content: "";
  }
}
.p-header-accordion-1__list > li > a > span {
  display: block;
}
.p-header-accordion-1__list > li > a > span:after {
  display: block;
  position: absolute;
  right: 3px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 5px;
  height: 10px;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(/common/svg/arrow_right_darkgray.svg);
  background-size: 5px 10px;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > a > span:after {
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
    width: 100%;
    height: 2px;
    background-image: none;
    background-color: #222222;
    background-size: auto auto;
    -webkit-transform: translate(-110%, 0);
            transform: translate(-110%, 0);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > a:hover > span:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.p-header-accordion-1__list > li > button {
  /* <button>のリセット */
  width: 100%;
  border: none;
  background: none;
  text-align: left;
  cursor: pointer;
  position: relative;
  line-height: 1.75;
  /* アコーディオン展開時 */
  /* シリーズカラー */
}
.p-header-accordion-1__list > li > button > span {
  padding-right: 14px;
}
.p-header-accordion-1__list > li > button > span:before, .p-header-accordion-1__list > li > button > span:after {
  position: absolute;
  display: block;
  top: 50%;
  background-color: #aaaaaa;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
}
.p-header-accordion-1__list > li > button > span:before {
  width: 11px;
  height: 1px;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button > span:before {
    display: none;
  }
}
.p-header-accordion-1__list > li > button > span:after {
  width: 1px;
  height: 11px;
  right: 5px;
  -webkit-transform: translate(0, -50%) rotate(0deg);
          transform: translate(0, -50%) rotate(0deg);
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button > span:after {
    top: auto;
    bottom: 0;
    left: 0;
    width: calc(100% - 10px);
    height: 2px;
    background-color: #222222;
    -webkit-transform: translate(-110%, 0);
            transform: translate(-110%, 0);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
.p-header-accordion-1__list > li > button > span svg {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button > span svg {
    display: inline-block;
    position: absolute;
    top: 44%;
    right: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 8px;
    height: 6px;
    margin-left: 3px;
    fill: #222222;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
.p-header-accordion-1__list > li > button.open > span:after {
  -webkit-transform: translate(0, -50%) rotate(90deg);
          transform: translate(0, -50%) rotate(90deg);
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open > span:after {
    -webkit-transform: translate(0, 0) rotate(0deg);
            transform: translate(0, 0) rotate(0deg);
  }
}
.p-header-accordion-1__list > li > button.open > span svg {
  -webkit-transform: translate(0, -50%) rotate(-180deg);
          transform: translate(0, -50%) rotate(-180deg);
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-zero_chilled > span:after {
    background-color: #325046;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-zero_class > span:after {
    background-color: #22303a;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-zero_advance > span:after {
    background-color: #a7333c;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-furniel > span:after {
    background-color: #8d5a50;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-sakura_japan > span:after {
    background-color: #57233a;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-pro_class > span:after {
    background-color: #b98d72;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-wine_suit > span:after {
    background-color: #afaaa7;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-wine_suit > span:after {
    background-color: #4d4548;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.-frosty > span:after {
    background-color: #a18a84;
  }
}
.p-header-accordion-1__list > li > button.open, .p-header-accordion-1__list > li > button:hover {
  /* hover時のシリーズカラー */
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-zero_advance > span, .p-header-accordion-1__list > li > button:hover.-zero_advance > span {
    color: #a7333c;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-zero_advance > span svg, .p-header-accordion-1__list > li > button:hover.-zero_advance > span svg {
    fill: #a7333c;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-zero_class > span, .p-header-accordion-1__list > li > button:hover.-zero_class > span {
    color: #22303a;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-zero_class > span svg, .p-header-accordion-1__list > li > button:hover.-zero_class > span svg {
    fill: #22303a;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-furniel > span, .p-header-accordion-1__list > li > button:hover.-furniel > span {
    color: #8d5a50;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-furniel > span svg, .p-header-accordion-1__list > li > button:hover.-furniel > span svg {
    fill: #8d5a50;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-sakura_japan > span, .p-header-accordion-1__list > li > button:hover.-sakura_japan > span {
    color: #57233a;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-sakura_japan > span svg, .p-header-accordion-1__list > li > button:hover.-sakura_japan > span svg {
    fill: #57233a;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-pro_class > span, .p-header-accordion-1__list > li > button:hover.-pro_class > span {
    color: #b98d72;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-pro_class > span svg, .p-header-accordion-1__list > li > button:hover.-pro_class > span svg {
    fill: #b98d72;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-wine_suit > span, .p-header-accordion-1__list > li > button:hover.-wine_suit > span {
    color: #afaaa7;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-wine_suit > span svg, .p-header-accordion-1__list > li > button:hover.-wine_suit > span svg {
    fill: #afaaa7;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-hyo_on_m2 > span, .p-header-accordion-1__list > li > button:hover.-hyo_on_m2 > span {
    color: #4d4548;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-hyo_on_m2 > span svg, .p-header-accordion-1__list > li > button:hover.-hyo_on_m2 > span svg {
    fill: #4d4548;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-hyo_on_m5 > span, .p-header-accordion-1__list > li > button:hover.-hyo_on_m5 > span {
    color: #383442;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-hyo_on_m5 > span svg, .p-header-accordion-1__list > li > button:hover.-hyo_on_m5 > span svg {
    fill: #383442;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open > span:after, .p-header-accordion-1__list > li > button:hover > span:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-frosty > span, .p-header-accordion-1__list > li > button:hover.-frosty > span {
    color: #a18a84;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open.-frosty > span svg, .p-header-accordion-1__list > li > button:hover.-frosty > span svg {
    fill: #a18a84;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.open > span:after, .p-header-accordion-1__list > li > button:hover > span:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.p-header-accordion-1__list > li > button:focus {
  outline: none;
}
.p-header-accordion-1__list > li > button.p-accordion-close {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list > li > button.p-accordion-close {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-1__list.-lang {
    padding-right: 65px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-header-accordion-1__list.-lang {
    padding-right: 80px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

.p-header-accordion-2__container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  height: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container {
    position: absolute;
    overflow: visible;
    z-index: 0;
    width: 100%;
    height: auto;
    bottom: 0;
    left: 0;
    background-color: #f7f7f7;
    -webkit-transform: translate(0, 100%);
            transform: translate(0, 100%);
  }
}
.p-header-accordion-2__container.animation {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.p-header-accordion-2__container.visible {
  z-index: 10;
}

.p-header-accordion-2__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 0;
  padding-bottom: 18px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__inner {
    position: relative;
    overflow: hidden;
    height: 481px;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-2__inner {
    height: 530px;
  }
}

.p-header-accordion-2__list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__list {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    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;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    position: absolute;
    bottom: 115px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 100%;
    max-width: 1400px;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-2__list {
    bottom: 140px;
  }
}

.browser-is-ie .p-header-accordion-2__item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 20%;
          flex: 1 1 20%;
  max-width: 363px;
}
.p-header-accordion-2__item > a {
  display: block;
  position: relative;
  padding-top: 13px;
  padding-bottom: 13px;
  padding-right: 15px;
  padding-left: 14px;
  text-decoration: none;
  color: #222222;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__item > a {
    height: 100%;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 5px;
    padding-left: 5px;
    line-height: 1.75;
  }
}
.p-header-accordion-2__item > a:after {
  display: block;
  position: absolute;
  right: 3px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 5px;
  height: 10px;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-image: url(/common/svg/arrow_right_darkgray.svg);
  background-size: 5px 10px;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__item > a:after {
    display: none;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__item > a span {
    display: block;
    text-align: center;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__item.-is_six {
    width: 16.66666666%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__item.-hide_pc {
    display: none;
  }
}

.p-header-accordion-2__img {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.p-header-accordion-2__img img {
  display: block;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__img img {
    width: 10vw;
    max-width: 120px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-header-accordion-2__img img {
    -webkit-transform: scale(1.075);
            transform: scale(1.075);
  }
}
.p-header-accordion-2__img .p-header-accordion-2__fade-img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 1;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-header-accordion-2__img .p-header-accordion-2__fade-img {
    opacity: 1;
  }
}

.p-header-accordion-2__img-outer {
  position: relative;
}

@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 13px;
  }
}

.p-header-accordion-2__title {
  position: relative;
  overflow: hidden;
  width: auto;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__title {
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-weight: bold;
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media only screen and (min-width: 61.25em ) and (max-width: 47.9375em ) {
  .p-header-accordion-2__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 61.25em ) and (min-width: 48em ) {
  .p-header-accordion-2__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-2__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-header-accordion-2__title:before, .p-header-accordion-2__title:after {
  display: none;
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 100%;
  height: 1px;
  background-color: #fff;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__title:before, .p-header-accordion-2__title:after {
    display: block;
  }
}
.p-header-accordion-2__title:before {
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
}
.p-header-accordion-2__title:after {
  -webkit-transform: translate(-300%, 0);
          transform: translate(-300%, 0);
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-header-accordion-2__title:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.p-header-accordion-2__info {
  display: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: -2px;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-2__info {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-header-accordion-2__desc {
  display: none;
  width: 100%;
  margin-top: -3px;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__desc {
    display: inline;
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-header-accordion-2__desc {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-header-accordion-2__buttons {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #ededed;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-header-accordion-2__buttons > li {
  width: 100%;
  max-width: 280px;
  margin-left: 20px;
}
.p-header-accordion-2__buttons > li:first-child {
  margin-left: 0;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-zero_chilled .p-header-accordion-2__title {
    color: #325046;
  }
}
.p-header-accordion-2__container.-zero_chilled .p-header-accordion-2__title:before, .p-header-accordion-2__container.-zero_chilled .p-header-accordion-2__title:after {
  background-color: #325046;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-zero_advance .p-header-accordion-2__title {
    color: #a7333c;
  }
}
.p-header-accordion-2__container.-zero_advance .p-header-accordion-2__title:before, .p-header-accordion-2__container.-zero_advance .p-header-accordion-2__title:after {
  background-color: #a7333c;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-zero_class .p-header-accordion-2__title {
    color: #22303a;
  }
}
.p-header-accordion-2__container.-zero_class .p-header-accordion-2__title:before, .p-header-accordion-2__container.-zero_class .p-header-accordion-2__title:after {
  background-color: #22303a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-furniel .p-header-accordion-2__title {
    color: #8d5a50;
  }
}
.p-header-accordion-2__container.-furniel .p-header-accordion-2__title:before, .p-header-accordion-2__container.-furniel .p-header-accordion-2__title:after {
  background-color: #8d5a50;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-sakura_japan .p-header-accordion-2__title {
    color: #57233a;
  }
}
.p-header-accordion-2__container.-sakura_japan .p-header-accordion-2__title:before, .p-header-accordion-2__container.-sakura_japan .p-header-accordion-2__title:after {
  background-color: #57233a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-pro_class .p-header-accordion-2__title {
    color: #b98d72;
  }
}
.p-header-accordion-2__container.-pro_class .p-header-accordion-2__title:before, .p-header-accordion-2__container.-pro_class .p-header-accordion-2__title:after {
  background-color: #b98d72;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-wine_suit .p-header-accordion-2__title {
    color: #afaaa7;
  }
}
.p-header-accordion-2__container.-wine_suit .p-header-accordion-2__title:before, .p-header-accordion-2__container.-wine_suit .p-header-accordion-2__title:after {
  background-color: #afaaa7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-hyo_on_m2 .p-header-accordion-2__title {
    color: #4d4548;
  }
}
.p-header-accordion-2__container.-hyo_on_m2 .p-header-accordion-2__title:before, .p-header-accordion-2__container.-hyo_on_m2 .p-header-accordion-2__title:after {
  background-color: #4d4548;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-hyo_on_m5 .p-header-accordion-2__title {
    color: #383442;
  }
}
.p-header-accordion-2__container.-hyo_on_m5 .p-header-accordion-2__title:before, .p-header-accordion-2__container.-hyo_on_m5 .p-header-accordion-2__title:after {
  background-color: #383442;
}
@media print, screen and (min-width: 61.25em ) {
  .p-header-accordion-2__container.-frosty .p-header-accordion-2__title {
    color: #a18a84;
  }
}
.p-header-accordion-2__container.-frosty .p-header-accordion-2__title:before, .p-header-accordion-2__container.-frosty .p-header-accordion-2__title:after {
  background-color: #a18a84;
}

.p-home-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 0;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual {
    height: 100vw;
    max-height: 500px;
    margin-top: 55px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual {
    height: 84.3vh;
    min-height: 720px;
    max-height: 60.5vw;
    margin-top: 80px;
    background-color: #000;
  }
}

.p-home-visual__carousel {
  position: absolute;
  overflow: hidden;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  /* SPのグラデーション背景 */
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__carousel {
    height: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__carousel {
    height: 100%;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__carousel:after {
    display: block;
    position: absolute;
    z-index: 10;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 37.33vw;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.3)));
    background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.3));
    content: "";
  }
}

.p-home-visual__list {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-home-visual__list:before {
  display: block;
  position: absolute;
  z-index: 40;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgb(2, 0, 36);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(2, 0, 36)), color-stop(0%, rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgb(2, 0, 36) 0%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__list:before {
    height: 30%;
    max-height: 90px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__list:before {
    height: 40%;
    max-height: 360px;
  }
}

.p-home-visual__bg {
  display: block;
  opacity: 0;
  position: absolute;
  z-index: 20;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: top 50% left 50%;
  background-size: cover;
  -webkit-transform: scale(1.075, 1.075);
          transform: scale(1.075, 1.075);
  -webkit-transition: opacity linear 0.85s;
  transition: opacity linear 0.85s;
}
.p-home-visual__bg.-active {
  z-index: 30;
}
.p-home-visual__bg.-visible {
  opacity: 1;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transition: opacity linear 0.85s, -webkit-transform linear 7s;
  transition: opacity linear 0.85s, -webkit-transform linear 7s;
  transition: opacity linear 0.85s, transform linear 7s;
  transition: opacity linear 0.85s, transform linear 7s, -webkit-transform linear 7s;
}

.p-home-visual__nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  z-index: 20;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__nav {
    top: 50%;
    right: 24px;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__nav {
    width: 100%;
    height: calc(100% - 80px);
    top: 0;
    padding-right: 30px;
  }
}

/* パルスアニメーション
----------------------------------------------------------------- */
@-webkit-keyframes pulseMotion {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1, 1);
            transform: translate(-50%, -50%) scale(1, 1);
    background-color: rgba(170, 143, 123, 0.4);
  }
  40% {
    background-color: rgba(170, 143, 123, 0.4);
  }
  90% {
    -webkit-transform: translate(-50%, -50%) scale(6.5, 6.5);
            transform: translate(-50%, -50%) scale(6.5, 6.5);
    background-color: rgba(170, 143, 123, 0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(6.5, 6.5);
            transform: translate(-50%, -50%) scale(6.5, 6.5);
    background-color: rgba(170, 143, 123, 0);
  }
}
@keyframes pulseMotion {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1, 1);
            transform: translate(-50%, -50%) scale(1, 1);
    background-color: rgba(170, 143, 123, 0.4);
  }
  40% {
    background-color: rgba(170, 143, 123, 0.4);
  }
  90% {
    -webkit-transform: translate(-50%, -50%) scale(6.5, 6.5);
            transform: translate(-50%, -50%) scale(6.5, 6.5);
    background-color: rgba(170, 143, 123, 0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(6.5, 6.5);
            transform: translate(-50%, -50%) scale(6.5, 6.5);
    background-color: rgba(170, 143, 123, 0);
  }
}
.p-home-visual__nav-item {
  display: block;
  position: relative;
  overflow: visible;
  width: 6px;
  height: 6px;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 0;
  background-color: transparent;
  border: none;
  border-radius: 50%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-visual__nav-item {
    cursor: pointer;
    outline: none;
  }
}
.p-home-visual__nav-item:before, .p-home-visual__nav-item:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  content: "";
}
.p-home-visual__nav-item:before {
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
.p-home-visual__nav-item:after {
  opacity: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: pulseMotion 1.4s linear infinite;
          animation: pulseMotion 1.4s linear infinite;
  -webkit-transition: opacity linear 0.4s;
  transition: opacity linear 0.4s;
  content: "";
}
.browser-is-ie .p-home-visual__nav-item:after {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-visual__nav-item:hover:before {
    -webkit-transform: translate(-50%, -50%) scale(1.67, 1.67);
            transform: translate(-50%, -50%) scale(1.67, 1.67);
  }
}
.p-home-visual__nav-item:focus {
  outline: none;
}
.p-home-visual__nav-item.-active:before {
  background-color: #aa8f7b;
  -webkit-transform: translate(-50%, -50%) scale(1.67, 1.67);
          transform: translate(-50%, -50%) scale(1.67, 1.67);
}
.p-home-visual__nav-item.-active:after {
  opacity: 1;
}

.p-home-visual__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__inner {
    margin-bottom: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__inner {
    margin-bottom: 130px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-visual__inner {
    margin-bottom: 150px;
  }
}

.p-home-visual__msg {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__msg {
    padding-top: 29px;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__msg {
    margin-top: -20px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__main {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vw;
    max-height: 60vh;
  }
}
.p-home-visual__main svg {
  position: absolute;
  z-index: 10;
  bottom: 40px;
  fill: #fff;
  left: 5.3333%;
}
@media only screen and (max-width: 40em ) {
  .p-home-visual__main svg {
    width: 240px;
    height: 50px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-home-visual__main svg {
    width: 270px;
    height: 57px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__main svg {
    position: relative;
    bottom: auto;
    left: auto;
    width: 438px;
    height: 92px;
    -webkit-transition: fill linear 0.4s;
    transition: fill linear 0.4s;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-visual__main svg {
    width: 438px;
    height: 92px;
  }
}

.p-home-visual__sub {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  -webkit-transition: color linear 0.4s;
  transition: color linear 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__sub {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__sub {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__sub {
    color: #222222;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__sub {
    margin-top: 18px;
    font-size: 14px;
    font-size: 0.875rem;
    color: #fff;
    line-height: 2;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-visual__sub {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__button {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual__button {
    width: 240px;
    margin-top: 29px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-visual__button {
    width: 280px;
  }
}
.p-home-visual__button li {
  margin-top: 8px;
}
.p-home-visual__button li:first-child {
  margin-top: 0;
}

/* ==========================================================================
* モディファイア
========================================================================= */
@media print, screen and (min-width: 48em ) {
  .p-home-visual.-inverted .p-home-visual__sub {
    color: #222222;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-visual.-inverted .p-home-visual__main svg {
    fill: #222222;
  }
}

/* PC */
@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num1 {
    background-image: url("/img/img_main1.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num1 {
    background-image: url("/img/img_main1@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num1, .browser-is-safari .p-home-visual__bg.-num1 {
    background-image: url("/img/img_main1.jpg");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num1, .browser-is-safari .p-home-visual__bg.-num1 {
    background-image: url("/img/img_main1@2x.jpg");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num2 {
    background-image: url("/img/img_main2.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num2 {
    background-image: url("/img/img_main2@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num2, .browser-is-safari .p-home-visual__bg.-num2 {
    background-image: url("/img/img_main2.jpg");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num2, .browser-is-safari .p-home-visual__bg.-num2 {
    background-image: url("/img/img_main2@2x.jpg");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num3 {
    background-image: url("/img/img_main3.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num3 {
    background-image: url("/img/img_main3@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num3, .browser-is-safari .p-home-visual__bg.-num3 {
    background-image: url("/img/img_main3.jpg");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num3, .browser-is-safari .p-home-visual__bg.-num3 {
    background-image: url("/img/img_main3@2x.jpg");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num4 {
    background-image: url("/img/img_main4.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num4 {
    background-image: url("/img/img_main4@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num4, .browser-is-safari .p-home-visual__bg.-num4 {
    background-image: url("/img/img_main4.jpg");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num4, .browser-is-safari .p-home-visual__bg.-num4 {
    background-image: url("/img/img_main4@2x.jpg");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num5 {
    background-image: url("/img/img_main5.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num5 {
    background-image: url("/img/img_main5@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num5, .browser-is-safari .p-home-visual__bg.-num5 {
    background-image: url("/img/img_main5.jpg");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num5, .browser-is-safari .p-home-visual__bg.-num5 {
    background-image: url("/img/img_main5@2x.jpg");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num6 {
    background-image: url("/img/img_main6.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num6 {
    background-image: url("/img/img_main6@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num6, .browser-is-safari .p-home-visual__bg.-num6 {
    background-image: url("/img/img_main6.jpg");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num6, .browser-is-safari .p-home-visual__bg.-num6 {
    background-image: url("/img/img_main6@2x.jpg");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num7 {
    background-image: url("/img/img_main7.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num7 {
    background-image: url("/img/img_main7@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num7, .browser-is-safari .p-home-visual__bg.-num7 {
    background-image: url("/img/img_main7.png");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num7, .browser-is-safari .p-home-visual__bg.-num7 {
    background-image: url("/img/img_main7@2x.png");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num8 {
    background-image: url("/img/img_main8.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num8 {
    background-image: url("/img/img_main8@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num8, .browser-is-safari .p-home-visual__bg.-num8 {
    background-image: url("/img/img_main8.png");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num8, .browser-is-safari .p-home-visual__bg.-num8 {
    background-image: url("/img/img_main8@2x.png");
  }
}

@media print, screen and (min-width: 48em ) {
  .p-home-visual__bg.-num9 {
    background-image: url("/img/img_main9.webp");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .p-home-visual__bg.-num9 {
    background-image: url("/img/img_main9@2x.webp");
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-home-visual__bg.-num9, .browser-is-safari .p-home-visual__bg.-num9 {
    background-image: url("/img/img_main9.png");
  }
}
@media print and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em ) and (-moz-min-device-pixel-ratio: 2) {
  .browser-is-ie .p-home-visual__bg.-num9, .browser-is-safari .p-home-visual__bg.-num9 {
    background-image: url("/img/img_main9@2x.png");
  }
}

/* SP */
@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num1 {
    background-image: url(/img/img_main1_sp@3x.jpg);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num2 {
    background-image: url(/img/img_main2_sp@3x.jpg);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num3 {
    background-image: url(/img/img_main3_sp@3x.jpg);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num4 {
    background-image: url(/img/img_main4_sp@3x.jpg);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num5 {
    background-image: url(/img/img_main5_sp@3x.jpg);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num6 {
    background-image: url(/img/img_main6_sp@3x.png);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num7 {
    background-image: url(/img/img_main7_sp@3x.png);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num8 {
    background-image: url(/img/img_main8_sp@3x.png);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-visual__bg.-num9 {
    background-image: url(/img/img_main9_sp@3x.png);
  }
}

.p-main-visual {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 0;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-main-visual {
    height: 40vh;
    max-height: 280px;
    margin-top: 63px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 93vh;
    min-height: 720px;
    max-height: 60.5vw;
  }
}
.p-main-visual:before {
  display: block;
  position: absolute;
  z-index: 20;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgb(2, 0, 36);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(2, 0, 36)), color-stop(0%, rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgb(2, 0, 36) 0%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-main-visual:before {
    height: 30%;
    max-height: 90px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual:before {
    height: 40%;
    max-height: 360px;
  }
}
.p-main-visual:after {
  display: block;
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-main-visual:after {
    background-position: 0 0;
    background-image: url(/img/img_main_sp.jpg);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual:after {
    min-width: 1380px;
    background-position: 50% 100%;
    background-image: url(/img/img_main.jpg);
  }
}
@media print, screen and (min-width: 80em ) {
  .p-main-visual:after {
    background-position: 50% 50%;
  }
}
.p-main-visual > * {
  display: block;
}

@media print, screen and (min-width: 48em ) {
  .p-main-visual.-choice::after {
    background-image: url(/choice/img/img_main@2x.jpg);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual.-strength::after {
    background-image: url(/strength/img/img_main@2x.jpg);
  }
}

.p-main-visual__inner {
  width: 100%;
  position: relative;
  z-index: 30;
}
@media only screen and (max-width: 47.9375em ) {
  .p-main-visual__inner {
    margin-bottom: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual__inner {
    margin-bottom: 151px;
  }
}
.p-main-visual__inner > * {
  display: block;
}

.p-main-visual__main {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
}
@media only screen and (max-width: 47.9375em ) {
  .p-main-visual__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual__main {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 20em ) {
  .p-main-visual__main {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media only screen and (min-width: 22.5625em ) {
  .p-main-visual__main {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-main-visual__main {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-main-visual__main {
    font-size: 42px;
    font-size: 2.625rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-main-visual__main.-sp-tal {
    text-align: left;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
/* 下層ページ */
@media print, screen and (min-width: 48em ) {
  .-child .p-main-visual__inner {
    padding-bottom: 74px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .-child .p-main-visual__inner {
    padding-bottom: 94px;
  }
}
@media print, screen and (min-width: 48em ) {
  .-child {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    height: 70vh;
  }
}
.-child .p-main-visual__main {
  margin-top: 0;
}

.p-home-panel {
  position: relative;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
  background-color: #f7f6f5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel {
    padding-top: 20px;
    padding-bottom: 42px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel {
    padding-bottom: 80px;
  }
}

.p-home-panel__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto;
  background-color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__block {
    margin-top: -80px;
  }
}

.p-home-panel__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-color: #eeeeee;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__item {
    width: 100%;
    padding-top: 33px;
    padding-bottom: 40px;
    padding-right: 20px;
    padding-left: 20px;
    border-width: 1px 0 0 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__item {
    width: 50%;
    padding-top: 52px;
    padding-bottom: 56px;
    padding-right: 40px;
    padding-left: 40px;
    border-width: 0 0 0 1px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-panel__item {
    padding-right: 70px;
    padding-left: 70px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-panel__item {
    padding-top: 75px;
    padding-bottom: 80px;
    padding-right: 100px;
    padding-left: 100px;
  }
}
.p-home-panel__item:first-child {
  border-width: 0;
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__item:first-child {
    padding-right: 35px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-panel__item:first-child {
    padding-right: 60px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-panel__item:first-child {
    padding-right: 87px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__item:last-child {
    padding-left: 35px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-home-panel__item:last-child {
    padding-left: 60px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-panel__item:last-child {
    padding-left: 87px;
  }
}

/* -----------------------------------------------------------------
/* コピーに関する部分
----------------------------------------------------------------- */
.p-home-panel__main {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__main {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__main {
    margin-top: 6px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__main {
    margin-top: 1px;
    font-size: 28px;
    font-size: 1.75rem;
  }
}

.p-home-panel__sub {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__sub {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__sub {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__desc {
    margin-top: 22px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__desc {
    margin-top: 20px;
    font-size: 16px;
    font-size: 1rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-home-panel__link {
    margin-top: 23px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel__link {
    max-width: 300px;
    margin-top: 33px;
  }
}

/* 以下採用で使用
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit {
    background-color: transparent;
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel.-recruit {
    padding-bottom: 0;
  }
}
.p-home-panel.-recruit .p-home-panel__block {
  max-width: 1200px;
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel.-recruit .p-home-panel__block {
    top: -80px;
    position: relative;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit .p-home-panel__item {
    position: relative;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit .p-home-panel__item:last-of-type {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit .p-home-panel__item:last-of-type .p-home-panel__eng {
    top: 40px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit .p-home-panel__sub {
    position: relative;
    z-index: 20;
    bottom: -8px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit .p-home-panel__eng {
    position: absolute;
    z-index: 10;
    left: 5.3333%;
    width: 100%;
    top: 10px;
    line-height: 1;
    font-size: 60px;
    font-size: 3.75rem;
    font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
    font-style: normal;
    font-weight: 700;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    color: #f7f7f7;
    white-space: nowrap;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel.-recruit .p-home-panel__eng {
    display: none;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-panel.-recruit .p-home-panel__main {
    position: relative;
    z-index: 20;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-panel.-recruit .p-home-panel__main {
    font-size: 34px;
    font-size: 2.125rem;
  }
}

.p-special-section {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-section {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-section {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.p-special-section__img {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section__img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: relative;
    overflow: hidden;
    width: 30%;
    margin-top: -7vh;
    margin-bottom: 72px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-section__img {
    margin-bottom: 100px;
  }
}
.p-special-section__img:before {
  position: absolute;
  z-index: 0;
  width: 120%;
  left: -10%;
  height: 50%;
  background-color: #fff;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-section__img:before {
    display: block;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-section__img:before {
    display: none;
  }
}
.p-special-section__img img {
  position: relative;
  z-index: 10;
  display: block;
  width: 100%;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
          box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
}
.browser-is-ie .p-special-section__img img {
  max-height: 529px;
}

/* テキスト */
.p-special-section__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-section__text {
    width: 100%;
    margin-top: 44px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-section__text {
    width: 100%;
    padding-top: 73px;
    padding-bottom: 73px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section__text {
    width: 62.5%;
    margin-left: 7.5%;
    padding-top: 72px;
    padding-bottom: 72px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-special-section {
  /* 強み>メッセージ など */
}
.p-special-section.-white .p-special-section__img:before {
  background-color: #f7f7f7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-large .p-special-section__img {
    width: 38.5%;
    margin-top: -6vh;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-large .p-special-section__text {
    width: 54.5%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-section.-large .p-special-section__text {
    padding-top: 125px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-section.-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-reverse .p-special-section__text {
    padding-right: 70px;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-section.-reverse .p-special-section__text {
    padding-right: 100px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-wide {
    margin-top: 120px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-wide:first-child {
    margin-top: 0;
  }
}
.p-special-section.-wide .p-special-section__img {
  margin-top: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-wide .p-special-section__img {
    width: 54%;
    padding-bottom: 0;
  }
}
.p-special-section.-wide .p-special-section__img img {
  -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-wide .p-special-section__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 41.8%;
    margin-left: 4.2%;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-section.-wide.-reverse .p-special-section__text {
    margin-right: 4.2%;
    margin-left: 0;
    padding-right: 0;
  }
}

.p-home-heading > * {
  display: block;
  width: 100%;
  text-align: center;
}

.p-home-heading__title {
  position: relative;
  z-index: 10;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.03em;
  color: rgb(255, 255, 255);
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-heading__title {
    font-size: 29px;
    font-size: 1.8125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-heading__title {
    font-size: 57px;
    font-size: 3.5625rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-heading__title {
    font-size: 64px;
    font-size: 4rem;
  }
}
.p-home-heading__title .small {
  font-size: 84.375%;
}
.p-home-heading__title .sup {
  font-size: 46.875%;
}

.p-home-heading__bg {
  position: absolute;
  z-index: 0;
  top: 35%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: -0.04em;
  color: rgba(255, 255, 255, 0.05);
  white-space: nowrap;
  -ms-user-select: none;
  /* IE 10+ */
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  user-select: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-heading__bg {
    font-size: 78px;
    font-size: 4.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-heading__bg {
    font-size: 135px;
    font-size: 8.4375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-heading__bg {
    font-size: 150px;
    font-size: 9.375rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-heading__bg > span {
    display: none;
  }
}

.p-home-heading__desc {
  position: relative;
  z-index: 10;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: rgba(255, 255, 255, 0.8);
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-heading__desc {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-heading__desc {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-home-heading__desc {
    margin-top: 10px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-heading__desc {
    margin-top: -7px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-home-heading__desc {
    margin-top: -11px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-home-heading__desc br {
    display: none;
  }
}

.p-series-block {
  position: relative;
  overflow: hidden;
  z-index: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 5.3333%;
}
.p-series-block:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(0, 100%);
          transform: translate(0, 100%);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  content: "";
}
.p-series-block.-from_right:before {
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
}
.p-series-block.-active:before {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
@media print, screen and (min-width: 48em ) {
  .p-series-block.-pt_s .p-series-block__inner {
    padding-top: 64px;
    padding-bottom: 66px;
  }
}

.p-series-block__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%;
  max-width: 1470px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-block__inner {
    padding-top: 38px;
    padding-bottom: 75px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-block__inner {
    margin-right: auto;
    margin-left: auto;
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/*　2カラム分割用 */
.p-series-block-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.p-series-block-container .p-series-block {
  width: 100%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-series-block-container .p-series-block {
    width: 50%;
  }
}

/*****************************************
* モディファイア
*****************************************/
/* 下罫線つき */
.p-series-block--border {
  border-bottom: solid 1px #dddddd;
}

.p-series-block--zero_advance {
  color: #fff;
}
.p-series-block--zero_advance:before {
  background-color: #a33e46;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ae4951), to(#a33e46));
  background-image: linear-gradient(to bottom, #ae4951, #a33e46);
}

.p-series-block--zero_chilled {
  color: #fff;
}
.p-series-block--zero_chilled:before {
  background-color: #24342e;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#2b4038), to(#24342e));
  background-image: linear-gradient(to bottom, #2b4038, #24342e);
}

.p-series-block--zero_chilled_ib {
  color: #fff;
}
.p-series-block--zero_chilled_ib:before {
  background-color: #24342e;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#314263), to(#314263));
  background-image: linear-gradient(to bottom, #314263, #314263);
}

.p-series-block--zero_chilled_kh {
  color: #fff;
}
.p-series-block--zero_chilled_kh:before {
  background-color: #24342e;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#6b6531), to(#6b6531));
  background-image: linear-gradient(to bottom, #6b6531, #6b6531);
}

.p-series-block--zero_class {
  color: #fff;
}
.p-series-block--zero_class:before {
  background-color: #1f2e38;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#23313b), to(#1f2e38));
  background-image: linear-gradient(to bottom, #23313b, #1f2e38);
}

.p-series-block--furniel {
  color: #fff;
}
.p-series-block--furniel:before {
  background-color: #5c4440;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#68504c), to(#5c4440));
  background-image: linear-gradient(to bottom, #68504c, #5c4440);
}

.p-series-block--sakura_japan {
  color: #fff;
}
.p-series-block--sakura_japan:before {
  background-color: #5a223a;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#57233a), to(#5a223a));
  background-image: linear-gradient(to bottom, #57233a, #5a223a);
}

.p-series-block--sv,
.p-series-block--pro_class {
  color: #fff;
}
.p-series-block--sv:before,
.p-series-block--pro_class:before {
  background-color: #aa7e62;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#b98d72), to(#aa7e62));
  background-image: linear-gradient(to bottom, #b98d72, #aa7e62);
}

.p-series-block--wine_suit {
  color: #fff;
}
.p-series-block--wine_suit:before {
  background-color: #a7a19d;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#afaaa7), to(#a7a19d));
  background-image: linear-gradient(to bottom, #afaaa7, #a7a19d);
}

.p-series-block--hyo_on_m2 {
  color: #fff;
}
.p-series-block--hyo_on_m2:before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5b5b5f), to(#4d4548));
  background-image: linear-gradient(#5b5b5f 0%, #4d4548 100%);
}

.p-series-block--hyo_on_m5 {
  color: #fff;
}
.p-series-block--hyo_on_m5:before {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#383442), to(#383442));
  background-image: linear-gradient(#383442 0%, #383442 100%);
}

.p-series-block--frosty {
  color: #fff;
}
.p-series-block--frosty:before {
  background-color: #a18a84;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#a18a84), to(#a18a84));
  background-image: linear-gradient(to bottom, #a18a84, #a18a84);
}

.p-panel-menu {
  border-top: solid 1px #dddddd;
}

.p-panel-menu__inner {
  background-color: #f7f7f7;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-panel-menu__inner {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.p-panel-menu__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1～2個目 */
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__item {
    border-bottom: solid 1px #dddddd;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__item {
    width: 50%;
    border-style: solid;
    border-width: 1px 1px 0 0;
    border-color: #dddddd;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-panel-menu__item {
    width: 100%;
    border-width: 0 1px 0 0;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__item:nth-child(-n+2) {
    border-width: 0 1px 0 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-panel-menu__item:last-child {
    border-bottom: none;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-panel-menu__item:last-child {
    border-right: none;
  }
}
.p-panel-menu__item > a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #222222;
  background-color: #fff;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__item > a {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__item > a {
    height: 100%;
    padding-top: 50px;
    padding-bottom: 50px;
    padding-right: 10px;
    padding-left: 10px;
    text-align: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-panel-menu__item > a {
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-panel-menu__item > a {
    padding-top: 90px;
    padding-bottom: 96px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-panel-menu__item > a:hover {
    background-color: #aa8f7b;
  }
}

.p-panel-menu__en {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #aa8f7b;
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__en {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__en {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-panel-menu__en {
    color: #fff;
  }
}

.p-panel-menu__title {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-panel-menu__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-panel-menu__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__title {
    margin-top: 4px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-panel-menu__title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-panel-menu__title {
    color: #fff;
  }
}

.p-panel-menu__desc {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__desc {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__desc {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-panel-menu__desc {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-panel-menu__desc {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__desc:after {
    display: inline-block;
    width: 5px;
    height: 10px;
    margin-left: 8px;
    content: url(/common/svg/arrow_right_black.svg);
  }
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__desc span {
    display: none;
  }
}
.p-panel-menu__desc br {
  display: none;
}
@media print, screen and (min-width: 80em ) {
  .p-panel-menu__desc br {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-panel-menu__desc {
    color: #fff;
  }
}

.p-panel-menu__link {
  color: #aa8f7b;
}
@media only screen and (max-width: 40em ) {
  .p-panel-menu__link {
    display: none;
    margin-top: 8px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu__link {
    display: block;
    margin-top: 12px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-panel-menu__link {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-panel-menu__link {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-panel-menu__link {
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-panel-menu__link:after {
    content: url(/common/svg/arrow_right_white.svg);
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 40.0625em ) {
  .p-panel-menu.-max3 .p-panel-menu__item {
    width: 33.33%;
    border-width: 0 1px 0 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-panel-menu.-max3 .p-panel-menu__item {
    width: 33.33%;
  }
}

.p-visual-copy {
  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;
  height: 80vh;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-image: url(/img/img_main.jpg);
  background-size: cover;
}

.p-visual-copy__inner > * {
  display: block;
}

.p-visual-copy__sub {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 47.9375em ) {
  .p-visual-copy__sub {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-visual-copy__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-visual-copy__sub {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-visual-copy__main {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-visual-copy__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-visual-copy__main {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-visual-copy__main {
    margin-top: 6px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-visual-copy__main {
    margin-top: 18px;
    font-size: 30px;
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-visual-copy__main {
    font-size: 34px;
    font-size: 2.125rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-visual-copy__desc {
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-visual-copy__desc {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-visual-copy__link {
    margin-top: 23px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-visual-copy__link {
    max-width: 300px;
    margin-top: 33px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-pickup-list {
    margin-top: 18px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-pickup-list__item {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pickup-list__item {
    margin-top: 24px;
  }
}
.p-pickup-list__item:first-child {
  margin-top: 0;
}
.p-pickup-list__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #222222;
  text-decoration: none;
}

.p-pickup-list__img {
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em ) {
  .p-pickup-list__img {
    width: 90px;
    margin-right: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pickup-list__img {
    width: 120px;
    margin-right: 30px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-pickup-list__img {
    margin-right: 60px;
  }
}
.p-pickup-list__img img {
  display: block;
  width: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-pickup-list__img img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.p-pickup-list__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-pickup-list__date {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-pickup-list__date {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pickup-list__date {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-pickup-list__date {
    margin-top: -5px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pickup-list__date {
    margin-top: -9px;
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-pickup-list__title {
  margin-top: 4px;
  color: #222222;
}
@media only screen and (max-width: 47.9375em ) {
  .p-pickup-list__title {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pickup-list__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-pickup-list__title {
    text-decoration: underline;
  }
}
.p-pickup-list__title:after {
  display: inline-block;
  position: relative;
  width: 5px;
  height: 10px;
  margin-left: 9px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_black.svg);
}
@media print, screen and (min-width: 48em ) {
  .p-pickup-list__title:after {
    top: -1px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-pickup-list__title:after {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-eng-heading {
    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;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-eng-heading {
    margin-top: -15px;
  }
}

.p-eng-heading__body {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-eng-heading__body {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-eng-heading__body {
    font-size: 30px;
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-eng-heading__body {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.p-eng-heading__body span {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-eng-heading__body span {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-eng-heading__body span {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-eng-heading__body span {
    display: inline-block;
    margin-left: 14px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-eng-heading__body span {
    display: block;
    margin-top: 7px;
    margin-left: 2px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-eng-heading__body span {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-eng-heading__link {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-eng-heading__link {
    margin-top: 10px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-eng-heading__link {
    margin-top: 14px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-eng-heading__link {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-series-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list {
    margin-top: 36px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-series-list__item {
    width: 50%;
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__item {
    margin-top: 30px;
  }
  .p-series-list--max4 .p-series-list__item {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-series-list__item {
    margin-top: 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__item:nth-child(-n+2) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__item:nth-child(-n+3) {
    margin-top: 0;
  }
}
.p-series-list__item > a {
  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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: 100%;
  padding-right: 12px;
  padding-left: 12px;
  text-decoration: none;
  color: #fff;
}
.p-series-list__item > a span {
  display: block;
  text-align: center;
}

.p-series-list__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
.p-series-list__img img {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__img img {
    width: 75px;
    margin-bottom: 3px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__img img {
    width: 15vw;
    max-width: 178px;
    margin-bottom: 14px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-series-list__img img {
    width: 12vw;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-series-list__img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.p-series-list__img .p-series-list__fade-img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 1;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-series-list__img .p-series-list__fade-img {
    opacity: 1;
  }
}

.p-series-list__img-outer {
  position: relative;
}

.p-series-list__text {
  display: block;
}
body:not(.browser-is-ie) .p-series-list__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.browser-is-ie .p-series-list__text {
  max-width: 100%;
}

.p-series-list__series {
  position: relative;
  overflow: hidden;
  width: 100%;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__series {
    margin-top: 3px;
    margin-bottom: -4px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__series {
    margin-top: 14px;
    margin-bottom: -4px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-series-list__series {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-series-list__new-icon {
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__new-icon {
    margin-top: 12px;
    margin-bottom: 11px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__new-icon {
    margin-top: 15px;
    margin-bottom: 12px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-series-list__new-icon {
    margin-top: 21px;
    margin-bottom: 18px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-series-list__title {
  position: relative;
  width: auto;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-series-list__title {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-series-list__title:after {
  display: inline-block;
  position: relative;
  top: -1px;
  width: 5px;
  height: 10px;
  margin-left: 8px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_white.svg);
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-series-list__title:after {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
  }
}

.p-series-list__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: 2px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__info {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__info {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-series-list__info {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-series-list__info li {
  display: block;
  position: relative;
  padding-right: 16px;
  padding-left: 16px;
}
.p-series-list__info li:before {
  display: block;
  position: absolute;
  left: 0;
  top: 55%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1px;
  height: 15px;
  background-color: #ccc;
  content: "";
}
.p-series-list__info li:first-child {
  padding-left: 0;
}
.p-series-list__info li:first-child:before {
  display: none;
}
.p-series-list__info li:last-child {
  padding-right: 0;
}

.p-series-list__desc {
  width: 100%;
  margin-top: 4px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__desc {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list__desc {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-series-list__desc {
    font-size: 16px;
    font-size: 1rem;
  }
}

/* モディファイア ************************************************/
/* シリーズカラー（文字色） */
.p-series-list__item.zero_advance .p-series-list__series,
.p-series-list__item.zero_advance .p-series-list__title {
  color: #a7333c;
}
.p-series-list__item.zero_advance .p-series-list__series:before,
.p-series-list__item.zero_advance .p-series-list__title:before {
  background-color: #a7333c;
}
.p-series-list__item.zero_class .p-series-list__series,
.p-series-list__item.zero_class .p-series-list__title {
  color: #22303a;
}
.p-series-list__item.zero_class .p-series-list__series:before,
.p-series-list__item.zero_class .p-series-list__title:before {
  background-color: #22303a;
}
.p-series-list__item.furniel .p-series-list__series,
.p-series-list__item.furniel .p-series-list__title {
  color: #8d5a50;
}
.p-series-list__item.furniel .p-series-list__series:before,
.p-series-list__item.furniel .p-series-list__title:before {
  background-color: #8d5a50;
}

/* 背景が白の場合 */
.p-series-list--inverted .p-series-list__item > a {
  color: #222222;
}
.p-series-list--inverted .p-series-list__title:before, .p-series-list--inverted .p-series-list__title:after {
  background-color: #222222;
}

@media print, screen and (min-width: 61.25em ) {
  .p-series-list__img--fixed_height_1 {
    height: 370px;
  }
}

/* 1カラム・2カラム */
.p-series-list--max1,
.p-series-list--max2 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 48em ) {
  .p-series-list--max1 .p-series-list__item,
  .p-series-list--max2 .p-series-list__item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    width: 100%;
    max-width: 400px;
  }
  .browser-is-ie .p-series-list--max1 .p-series-list__item,
  .browser-is-ie .p-series-list--max2 .p-series-list__item {
    max-width: none;
  }
}

/* 3カラム */
@media print, screen and (min-width: 48em ) {
  .p-series-list--max3 {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list--max3 .p-series-list__item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    width: 100%;
    max-width: 400px;
  }
  .browser-is-ie .p-series-list--max3 .p-series-list__item {
    max-width: none;
  }
}

/* 4カラム */
@media print, screen and (min-width: 48em ) {
  .p-series-list--max4 .p-series-list__item {
    width: 25%;
  }
}

/* 5カラム */
@media print, screen and (min-width: 48em ) {
  .p-series-list--max5 .p-series-list__item {
    width: 33.33%;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-series-list--max5 .p-series-list__item {
    width: 20%;
  }
}

/* 6カラム */
.p-series-list--max6 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 48em ) {
  .p-series-list--max6 .p-series-list__item {
    width: 25%;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-series-list--max6 .p-series-list__item {
    width: 25%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list--max6 .p-series-list__item:nth-last-of-type(-n + 2) {
    margin-top: 30px;
  }
}

/* 6カラム */
.p-series-list--max6alt {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 30px 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list--max6alt .p-series-list__item {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-series-list--max6alt .p-series-list__item {
    width: 33.333333%;
    margin-top: 0;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-series-list--max6alt .p-series-list__item {
    width: 16.6666666667%;
  }
}

.p-series-list--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-series-list__new-icon {
  margin-bottom: 11px;
  color: #fff;
  text-align: center;
}

.p-series-list__door-both-side {
  margin: 8px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-series-list__limited {
  position: absolute;
  z-index: -1;
  top: -44px;
  right: -60px;
}
@media only screen and (max-width: 69.3125em ) {
  .p-series-list__limited {
    width: 90px;
    height: 90px;
    right: -30px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-series-list__limited {
    right: 44px;
  }
}
@media only screen and (max-width: 40em ) {
  .p-series-list__limited {
    right: -24px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-series-list__limited {
    top: -44px;
    right: -70px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-series-list__limited {
    right: -72px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-series-list__limited {
    right: -63px;
  }
}

.p-history-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-history-list {
    margin-top: -20px;
    margin-left: -20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-history-list {
    margin-left: -40px;
  }
}

.p-history-list__item {
  width: 100%;
  margin-top: 20px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-history-list__item {
    width: calc(50% - 20px);
    margin-top: 20px;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-history-list__item {
    width: calc(50% - 40px);
    margin-left: 40px;
  }
}
.p-history-list__item:first-child {
  margin-top: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-history-list__item:first-child {
    margin-top: 20px;
  }
}
.p-history-list__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  background-color: #fff;
  color: #222222;
  text-decoration: none;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-history-list__item a:hover {
    background-color: #aa8f7b;
    color: #fff;
  }
}

.p-history-list__img {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__img {
    width: 90px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__img {
    width: 120px;
  }
}

.p-history-list__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  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 only screen and (max-width: 47.9375em ) {
  .p-history-list__inner {
    width: 100%;
    height: 90px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__inner {
    width: 100%;
    height: 120px;
    padding: 5px;
  }
}
.p-history-list__inner img {
  display: block;
  height: 100%;
  max-height: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-history-list__inner img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.p-history-list__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__text {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 5px;
    padding-left: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__text {
    padding-top: 13px;
    padding-bottom: 16px;
    padding-right: 30px;
    padding-left: 30px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-history-list__time {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__time {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.p-history-list__time svg {
  position: relative;
  width: 16px;
  height: 14px;
  fill: #222222;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__time svg {
    top: 2px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__time svg {
    top: 1px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-history-list__time svg {
    fill: #fff;
  }
}
.p-history-list__time span {
  margin-left: 5px;
}

.p-history-list__name {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__name {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__name {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__name {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__name {
    margin-top: 2px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-history-list__name svg {
  display: inline-block;
  width: 6px;
  height: 11px;
  margin-left: 3px;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  fill: #222222;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-history-list__name svg {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
    fill: #fff;
  }
}

.p-history-list__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__info {
    margin-top: 3px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__info {
    margin-top: 5px;
  }
}
.p-history-list__info > li {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__info > li {
    margin-right: 10px;
    padding-right: 11px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__info > li {
    margin-right: 10px;
    padding-right: 11px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-history-list__info > li {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-history-list__info > li:after {
  display: block;
  position: absolute;
  right: 0;
  -webkit-transform: tranlsate(0, -50%);
          transform: tranlsate(0, -50%);
  width: 1px;
  background-color: #222222;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-history-list__info > li:after {
    top: 22%;
    height: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-history-list__info > li:after {
    top: 30%;
    height: 15px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-history-list__info > li:after {
    background-color: #fff;
  }
}
.p-history-list__info > li:last-child {
  margin-right: 0;
  padding-right: 0;
}
.p-history-list__info > li:last-child:after {
  display: none;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-history-list__item.-zero_class .p-history-list__img {
  background-color: #22303a;
}
.p-history-list__item.-zero_chilled .p-history-list__img {
  background-color: #325046;
}
.p-history-list__item.-zero_advance .p-history-list__img {
  background-color: #a7333c;
}
.p-history-list__item.-furniel .p-history-list__img {
  background-color: #8d5a50;
}
.p-history-list__item.-sakura_japan .p-history-list__img {
  background-color: #57233a;
}
.p-history-list__item.-pro_class .p-history-list__img {
  background-color: #b98d72;
}
.p-history-list__item.-wine_suit .p-history-list__img {
  background-color: #afaaa7;
}
.p-history-list__item.-hyo_on_m2 .p-history-list__img {
  background-color: #4d4548;
}
.p-history-list__item.-hyo_on_m5 .p-history-list__img {
  background-color: #383442;
}
.p-history-list__item.-frosty .p-history-list__img {
  background-color: #a18a84;
}

.p-local-nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  overflow: hidden;
  width: 100%;
  background-color: #f7f7f7;
}

.p-local-nav__slider {
  position: relative;
  overflow-x: auto;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
}
.p-local-nav__slider::-webkit-scrollbar {
  height: 3px;
}
.p-local-nav__slider::-webkit-scrollbar-track {
  border-radius: 3px;
}
.p-local-nav__slider::-webkit-scrollbar-thumb {
  border-radius: 3px;
  background: rgba(0, 0, 0, 0.5);
}

.p-local-nav__inner {
  width: 100%;
  max-width: 1400px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__inner {
    min-width: 1000px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-local-nav__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-width: 1000px;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-local-nav__item {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__item {
    float: left;
    width: 110px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-local-nav__item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 22%;
  }
  .browser-is-ie .p-local-nav__item {
    max-width: none;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 20%;
            flex: 0 1 20%;
  }
}
.p-local-nav__item a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  padding-right: 8px;
  padding-left: 8px;
  color: #222222;
  text-decoration: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__item a {
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-local-nav__item a {
    padding-top: 27px;
    padding-bottom: 27px;
  }
}

.p-local-nav__img img {
  display: block;
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__img img {
    max-width: 36px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-local-nav__img img {
    max-width: 46px;
  }
}

.p-local-nav__title,
.p-local-nav__capacity,
.p-local-nav__desc {
  display: block;
  line-height: 1.4;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__title,
  .p-local-nav__capacity,
  .p-local-nav__desc {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-local-nav__title,
  .p-local-nav__capacity,
  .p-local-nav__desc {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-local-nav__title,
  .p-local-nav__capacity,
  .p-local-nav__desc {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-local-nav__title {
  margin-top: 1px;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-local-nav__title {
    color: #aa8f7b;
  }
}
.p-local-nav__title:after {
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 7px;
  content: url(/common/svg/arrow_right_black.svg);
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, content cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, content cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-local-nav__title:after {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
    content: url(/common/svg/arrow_right_gold.svg);
  }
}

.p-local-nav__capacity {
  margin-top: 3px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__capacity {
    display: none;
  }
}

.p-local-nav__desc {
  margin-top: 3px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-local-nav__desc {
    display: none;
  }
}

.p-page-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual {
    padding: 0 0 43px 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual {
    height: 300px;
    min-height: 268px;
    max-height: 30vh;
    margin: 80px 0 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual.-height_auto {
    height: auto;
    min-height: auto;
    max-height: inherit;
  }
}

.p-page-visual__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__inner {
    height: 100%;
    padding-right: 0;
    padding-left: 0;
  }
}
.p-page-visual__inner > * {
  display: block;
}

.p-page-visual__block {
  position: relative;
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__block {
    top: 28.5%;
  }
}

.p-page-visual__en {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: pre;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__en {
    padding-top: 88px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__en {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-page-visual__en {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__en.-sp_s {
    padding-top: 88px;
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

.p-page-visual__heading {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__heading {
    margin-top: 4px;
    font-size: 26px;
    font-size: 1.625rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__heading {
    margin-top: 4px;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-page-visual__heading {
    margin-top: 7px;
    font-size: 42px;
    font-size: 2.625rem;
  }
}

.p-page-visual__description {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
  text-align: center;
  margin: 8px 0 0;
  font-size: 16px;
  font-size: 1rem;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__description {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__description {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__description {
    margin: 18px 0 0;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-page-visual__description {
    font-size: 18px;
    font-size: 1.125rem;
    margin: 24px 0 0;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-page-visual.-zero_chilled {
  background-color: #325046;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-zero_chilled.-ib {
  background-color: #314263;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-zero_chilled.-kh {
  background-color: #6b6531;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-zero_class {
  background-color: #22303a;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-zero_advance {
  background-color: #a7333c;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-furniel {
  background-color: #8d5a50;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-sakura_japan {
  background-color: #57233a;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-pro_class {
  background-color: #b98d72;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-wine_suit {
  background-color: #afaaa7;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-hyo_on_m2 {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5b5b5f), to(#4d4548));
  background-image: linear-gradient(#5b5b5f 0%, #4d4548 100%);
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-hyo_on_m5 {
  background-color: #383442;
  color: #fff;
  padding-bottom: 0;
}
.p-page-visual.-frosty {
  background-color: #a18a84;
  color: #fff;
  padding-bottom: 0;
}

/* 以下採用で使用
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual.-recruit {
    padding: 0 0 48px 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual.-recruit .p-page-visual__inner {
    height: 100%;
    max-width: 1160px;
    margin: 0 auto;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
    padding-bottom: 72px;
  }
}
@media print, screen and (min-width: 64em ) {
  .p-page-visual.-recruit .p-page-visual__inner {
    display: -ms-grid;
    display: grid;
    grid: "head head" 200px "text button" 1fr/1fr 1fr;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-page-visual.-recruit .p-page-visual__inner {
    padding-right: 0;
    padding-left: 0;
  }
}
.p-page-visual.-recruit .p-page-visual__text {
  text-align: center;
  margin-top: 16px;
}
@media print, screen and (min-width: 64em ) {
  .p-page-visual.-recruit .p-page-visual__text {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    grid-area: text;
    text-align: left;
    margin-top: 58px;
  }
}
.p-page-visual.-recruit .p-page-visual__text br {
  display: block;
}
@media print, screen and (min-width: 1024px) and (max-width: 1040px) {
  .p-page-visual.-recruit .p-page-visual__text br {
    display: none;
  }
}

@media print, screen and (min-width: 80em ) {
  .p-page-visual.-recruit_detail {
    height: 310px;
    min-height: 310px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual.-recruit_detail .p-page-visual__block {
    top: 35.5%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-page-visual.-recruit_detail .p-page-visual__block {
    top: 28%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-page-visual.-recruit_detail .p-page-visual__block {
    top: 21.5%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual.-recruit_detail .p-page-visual__heading {
    margin-top: 4px;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-page-visual.-recruit_detail .p-page-visual__heading {
    margin-top: 7px;
    font-size: 42px;
    font-size: 2.625rem;
  }
}

.p-page-visual__heading.-recruit {
  text-align: left;
  font-size: 40px;
  font-size: 2.5rem;
  text-align: center;
  padding-top: 40px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__heading.-recruit {
    padding-top: 100px;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 64em ) {
  .p-page-visual__heading.-recruit {
    text-align: left;
    padding-top: 0;
    margin-top: 46px;
    font-size: 66px;
    font-size: 4.125rem;
  }
}
.p-page-visual__heading.-recruit span {
  color: #aa8f7b;
}
.p-page-visual__heading.-recruit .p-page-visual__sub {
  letter-spacing: 0;
  color: #222222;
  text-align: left;
  position: relative;
  top: -2px;
}
@media print, screen and (min-width: 64em ) {
  .p-page-visual__heading.-recruit .p-page-visual__sub {
    top: -10px;
  }
}

@media print, screen and (min-width: 64em ) {
  .p-page-visual__recruit-head {
    grid-area: head;
  }
}

@media print, screen and (min-width: 64em ) {
  .p-page-visual__recruit-cta {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-area: button;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.p-page-visual__recruit-cta .p-page-visual__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 38px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__recruit-cta .p-page-visual__buttons {
    display: block;
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 64em ) {
  .p-page-visual__recruit-cta .p-page-visual__buttons {
    margin-top: 0;
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
    position: relative;
    bottom: 8px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media print, screen and (min-width: 64em ) {
  .browser-is-safari .p-page-visual__recruit-cta {
    display: -webkit-inline-box;
  }
}

.p-page-visual__text {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
  font-size: 21px;
  font-size: 1.3125rem;
  padding-right: 20px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__text {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: center;
    line-height: 2;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__buttons {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-page-visual__buttons {
    margin-top: 0;
  }
}

.p-page-visual__button {
  width: 240px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__button {
    margin: 0 auto;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-page-visual__button:first-of-type {
    margin-bottom: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-page-visual__button:first-of-type {
    margin-right: 16px;
  }
}

.p-section-heading {
  display: block;
  width: 100%;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-section-heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-heading {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-section-heading {
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-heading {
    font-size: 34px;
    font-size: 2.125rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-heading br {
    display: none;
  }
}

.p-section-heading__sub {
  display: block;
  margin-bottom: 14px;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.1em;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-heading__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-section-heading__sub {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-heading__sub {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-section-heading.-inverted {
  color: #fff;
}
.p-section-heading.-inverted .p-section-heading__sub {
  color: #fff;
}
.p-section-heading.-left {
  text-align: left;
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-heading.-sp-padding {
    padding: 0 5.3333%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.p-feature-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .browser-is-ie .p-feature-visual {
    max-height: 400px;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-feature-visual__img {
    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;
    position: relative;
    overflow: hidden;
    z-index: 0;
    height: 49vw;
    max-height: 90vh;
  }
}
.p-feature-visual__img img {
  display: block;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 47.9375em ) {
  .p-feature-visual__img img {
    position: relative;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-feature-visual__img img {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-feature-visual__img img {
    top: 50%;
    bottom: auto;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

@media print, screen and (min-width: 48em ) {
  .p-feature-visual__img.-recruit {
    height: 38vw;
    max-height: 90vh;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-feature-visual.-recruit-top .p-feature-visual__img {
    height: 46vw;
    max-height: 90vh;
  }
}

.p-product-head {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  height: 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;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head {
    padding-top: 100px;
    padding-bottom: 50px;
  }
}

.p-product-head__bg {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: -0.04em;
  color: rgba(255, 255, 255, 0.05);
  white-space: nowrap;
  line-height: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__bg {
    font-size: 50px;
    font-size: 3.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__bg {
    font-size: 125px;
    font-size: 7.8125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-head__bg {
    font-size: 140px;
    font-size: 8.75rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__bg > span {
    display: none;
  }
}

.p-product-head__en {
  display: block;
  z-index: 10;
  width: 100%;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #fff;
  letter-spacing: 0.1em;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__en {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__en {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-head__en {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-product-head__main {
  position: relative;
  z-index: 10;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__main {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__main {
    font-size: 42px;
    font-size: 2.625rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-head__main {
    font-size: 54px;
    font-size: 3.375rem;
  }
}

.p-product-head__jp {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__jp {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__jp {
    top: -0.07em;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-head__jp {
    top: -0.07em;
    font-size: 42px;
    font-size: 2.625rem;
  }
}

.p-product-head__desc {
  position: relative;
  z-index: 10;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__desc {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__desc {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-head__desc {
    margin-top: 4px;
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__desc {
    margin-top: 5px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-head__desc {
    margin-top: 9px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-head__desc br {
    display: none;
  }
}

.p-product-head__info-block {
  margin-bottom: 14px;
}

.p-product-head__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* -----------------------------------------------------------------
/* 全体のコンテナ
----------------------------------------------------------------- */
.p-product-table__container {
  margin-top: 40px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__container {
    padding-bottom: 75px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__container {
    margin-top: 65px;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-table__container {
    padding-bottom: 100px;
  }
}
.p-product-table__container.-unselectable {
  /* IE 10+ */
  -ms-user-select: none;
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  user-select: none;
}

.p-product-table__block {
  position: relative;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}

.p-product-table__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  width: 100%;
  max-width: 1400px;
  /* 該当なしのときにエリアを非表示にする */
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__inner {
    margin-right: auto;
    margin-left: auto;
  }
}
.p-product-table__inner.-hide {
  display: none;
}

/* -----------------------------------------------------------------
/* メッセージエリア
----------------------------------------------------------------- */
.p-product-table__msg {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  width: 100%;
  max-width: 1400px;
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__msg {
    margin-right: auto;
    margin-left: auto;
  }
}

/* -----------------------------------------------------------------
/* 上部エリア
----------------------------------------------------------------- */
.p-product-table__top_area {
  /* 行を上に固定 */
  /* 行をテーブル下端に固定 */
}
.p-product-table__top_area .p-product-table__top_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 10;
  overflow: hidden;
}
.p-product-table__top_area.-fixed .p-product-table__top_inner {
  position: fixed;
  left: 0;
  top: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__top_area.-fixed .p-product-table__top_inner {
    top: 60px;
  }
}
.p-product-table__top_area.-bottom .p-product-table__top_inner {
  position: absolute;
  bottom: 0;
  left: 0;
}

/* -----------------------------------------------------------------
/* 下部エリア
----------------------------------------------------------------- */
.p-product-table__bottom_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

/* -----------------------------------------------------------------
/* 右側エリア
----------------------------------------------------------------- */
/* 右上エリア */
.p-product-table__top_right {
  overflow-x: scroll;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-bottom: -17px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_right {
    -webkit-overflow-scrolling: touch;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .device-is-mobile .p-product-table__top_right {
    margin-bottom: 0;
  }
}

/* 右下エリア */
.p-product-table__bottom_right {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  overflow-x: scroll;
  margin-bottom: -17px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__bottom_right {
    -webkit-overflow-scrolling: touch;
  }
}

.p-product-table__scrollbar {
  position: absolute;
  z-index: 20;
  top: 0;
  width: 70%;
  height: 10px;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
}
.p-product-table__scrollbar.-bottom {
  position: absolute;
  top: auto;
  bottom: 0;
}
.p-product-table__scrollbar.-fixed {
  position: fixed;
  top: auto;
  bottom: 0;
}
.p-product-table__scrollbar.-hide {
  visibility: hidden;
}

/* -----------------------------------------------------------------
/* 左側エリア
----------------------------------------------------------------- */
/* 左上エリア */
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_left {
    width: 100px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__top_left {
    width: 192px;
  }
}

/* 左下エリア */
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__bottom_left {
    width: 100px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__bottom_left {
    width: 192px;
  }
}

/* -----------------------------------------------------------------
/* テーブル 共通スタイル
----------------------------------------------------------------- */
.p-product-table__table {
  table-layout: fixed;
  background-color: #fff;
  /* 左側ヘッドのテーブル */
  /* 右側コンテンツのテーブル */
}
.p-product-table__table th,
.p-product-table__table td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  border-style: solid;
  border-width: 1px;
  border-color: #dddddd;
  vertical-align: top;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__table th,
  .p-product-table__table td {
    padding-top: 10px;
    padding-bottom: 12px;
    padding-left: 10px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__table th,
  .p-product-table__table td {
    padding-top: 24px;
    padding-bottom: 27px;
    padding-left: 20px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .device-is-mobile .p-product-table__table th,
  .device-is-mobile .p-product-table__table td {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.p-product-table__table th {
  padding-right: 10px;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__table th {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__table th {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-product-table__table td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 20px;
  text-align: center;
}
.p-product-table__table.-head {
  table-layout: fixed;
  width: 100%;
  background-color: #f7f7f7;
}
.p-product-table__table.-content td {
  /* 表示製品x1 で幅2列分を使う指定 */
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__table.-content td {
    width: 140px;
    min-width: 140px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__table.-content td {
    width: 210px;
    min-width: 210px;
  }
}
.p-product-table__table.-content td:first-child {
  border-width: 1px 1px 1px 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__table.-content td.-col1 {
    width: 280px;
    min-width: 280px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__table.-content td.-col1 {
    width: 420px;
    min-width: 420px;
  }
}
.p-product-table__table.-content td.p-product-table__name {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
  padding-left: 0;
}
.p-product-table__table.-content td.p-product-table__name a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  text-decoration: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__table.-content td.p-product-table__name a {
    padding-top: 10px;
    padding-bottom: 12px;
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__table.-content td.p-product-table__name a {
    padding-top: 24px;
    padding-bottom: 27px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .device-is-mobile .p-product-table__table.-content td.p-product-table__name a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name a:hover svg {
    -webkit-transform: translate(3px, 0);
            transform: translate(3px, 0);
  }
}
.p-product-table__table.-content td.p-product-table__name img {
  display: block;
  width: 100%;
  max-width: 100px;
  margin-right: auto;
  margin-left: auto;
}
.p-product-table__table.-content td.p-product-table__name svg {
  position: relative;
  top: 1px;
  width: 6px;
  height: 11px;
  margin-left: 6px;
  fill: #ccc;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
.p-product-table__table.-content td.p-product-table__name.-zero_chilled a {
  color: #325046;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-zero_chilled a:hover svg {
    fill: #325046;
  }
}
.p-product-table__table.-content td.p-product-table__name.-zero_advance a {
  color: #a7333c;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-zero_advance a:hover svg {
    fill: #a7333c;
  }
}
.p-product-table__table.-content td.p-product-table__name.-zero_advance a {
  color: #a7333c;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-zero_advance a:hover svg {
    fill: #a7333c;
  }
}
.p-product-table__table.-content td.p-product-table__name.-zero_class a {
  color: #22303a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-zero_class a:hover svg {
    fill: #22303a;
  }
}
.p-product-table__table.-content td.p-product-table__name.-furniel a {
  color: #8d5a50;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-furniel a:hover svg {
    fill: #8d5a50;
  }
}
.p-product-table__table.-content td.p-product-table__name.-sakura_japan a {
  color: #57233a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-sakura_japan a:hover svg {
    fill: #57233a;
  }
}
.p-product-table__table.-content td.p-product-table__name.-pro_class a {
  color: #b98d72;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-pro_class a:hover svg {
    fill: #b98d72;
  }
}
.p-product-table__table.-content td.p-product-table__name.-hyo_on_m2 a {
  color: #4d4548;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-hyo_on_m2 a:hover svg {
    fill: #4d4548;
  }
}
.p-product-table__table.-content td.p-product-table__name.-hyo_on_m5 a {
  color: #383442;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-hyo_on_m5 a:hover svg {
    fill: #383442;
  }
}
.p-product-table__table.-content td.p-product-table__name.-frosty a {
  color: #a18a84;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__table.-content td.p-product-table__name.-frosty a:hover svg {
    fill: #a18a84;
  }
}
.p-product-table__bottom_left .p-product-table__table tr:first-child th {
  border-width: 0 1px 1px 1px;
}
.p-product-table__bottom_right .p-product-table__table tr:first-child td {
  border-width: 0 1px 1px 1px;
}
.p-product-table__bottom_right .p-product-table__table tr:first-child td:first-child {
  border-width: 0 1px 1px 0;
}

/* -----------------------------------------------------------------
/* シリーズ名
----------------------------------------------------------------- */
/* 見出し列 */
.p-product-table__head {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}

.p-product-table__series_name {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__series_name {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__series_name {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__series_name {
    font-size: 14px;
    font-size: 0.875rem;
    -webkit-transition: font-size cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: font-size cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__series_name {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-table__series_name {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-product-table__desc {
  display: block;
  padding-top: 8px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__desc {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__desc {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-product-table__link {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__link {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__link {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__link {
    margin-top: 4px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__link {
    margin-top: 8px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.p-product-table__link a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__link a:hover svg {
    -webkit-transform: translate(3px, 0);
            transform: translate(3px, 0);
  }
}
.p-product-table__link svg {
  position: relative;
  top: 1px;
  width: 6px;
  height: 11px;
  margin-left: 6px;
  fill: #cccccc;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}

.p-product-table__series {
  /* ZERO CHILLED */
  /* ZERO ADVANCE */
  /* ZERO CLASS */
  /* FURNIEL */
  /* SAKURA JAPAN */
  /* PRO CLASS */
  /* WINE SUIT */
  /* 氷温M2 */
  /* 氷温M5 */
  /* Frosty */
}
.p-product-table__series.-zero_chilled .p-product-table__series_name {
  color: #325046;
}
.p-product-table__series.-zero_chilled .p-product-table__link a {
  color: #325046;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-zero_chilled .p-product-table__link a:hover svg {
    fill: #325046;
  }
}
.p-product-table__series.-zero_advance .p-product-table__series_name {
  color: #a7333c;
}
.p-product-table__series.-zero_advance .p-product-table__link a {
  color: #a7333c;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-zero_advance .p-product-table__link a:hover svg {
    fill: #a7333c;
  }
}
.p-product-table__series.-zero_class .p-product-table__series_name {
  color: #22303a;
}
.p-product-table__series.-zero_class .p-product-table__link a {
  color: #22303a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-zero_class .p-product-table__link a:hover svg {
    fill: #22303a;
  }
}
.p-product-table__series.-furniel .p-product-table__series_name {
  color: #8d5a50;
}
.p-product-table__series.-furniel .p-product-table__link a {
  color: #8d5a50;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-furniel .p-product-table__link a:hover svg {
    fill: #8d5a50;
  }
}
.p-product-table__series.-sakura_japan .p-product-table__series_name {
  color: #57233a;
}
.p-product-table__series.-sakura_japan .p-product-table__link a {
  color: #57233a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-sakura_japan .p-product-table__link a:hover svg {
    fill: #57233a;
  }
}
.p-product-table__series.-pro_class .p-product-table__series_name {
  color: #b98d72;
}
.p-product-table__series.-pro_class .p-product-table__link a {
  color: #b98d72;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-pro_class .p-product-table__link a:hover svg {
    fill: #b98d72;
  }
}
.p-product-table__series.-wineSuit .p-product-table__series_name {
  color: #afaaa7;
}
.p-product-table__series.-wineSuit .p-product-table__link a {
  color: #afaaa7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-wineSuit .p-product-table__link a:hover svg {
    fill: #afaaa7;
  }
}
.p-product-table__series.-hyo_on_m2 .p-product-table__series_name {
  color: #4d4548;
}
.p-product-table__series.-hyo_on_m2 .p-product-table__link a {
  color: #4d4548;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-hyo_on_m2 .p-product-table__link a:hover svg {
    fill: #4d4548;
  }
}
.p-product-table__series.-hyo_on_m5 .p-product-table__series_name {
  color: #4d4548;
}
.p-product-table__series.-hyo_on_m5 .p-product-table__link a {
  color: #383442;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-hyo_on_m5 .p-product-table__link a:hover svg {
    fill: #383442;
  }
}
.p-product-table__series.-frosty .p-product-table__series_name {
  color: #a18a84;
}
.p-product-table__series.-frosty .p-product-table__link a {
  color: #a18a84;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-table__series.-frosty .p-product-table__link a:hover svg {
    fill: #a18a84;
  }
}

/* -----------------------------------------------------------------
/* 製品名
----------------------------------------------------------------- */
.p-product-table__product_img {
  display: block;
  position: relative;
  overflow: hidden;
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}

.p-product-table__product_name {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__product_name {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__product_name {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__product_name {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__product_name {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

/* -----------------------------------------------------------------
/* fixed時のスタイル
----------------------------------------------------------------- */
.p-product-table__top_area {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_area {
    height: 389px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__top_area {
    height: 464px;
  }
}
.p-product-table__top_area.-fixed, .p-product-table__top_area.-bottom {
  height: 160px;
}
.p-product-table__top_area .p-product-table__series_head,
.p-product-table__top_area .p-product-table__series {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__top_area .p-product-table__series_head,
  .p-product-table__top_area .p-product-table__series {
    height: 171px;
  }
}
.p-product-table__top_area .p-product-table__text {
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_area .p-product-table__text {
    height: 75px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__top_area .p-product-table__text {
    height: 88px;
  }
}
.p-product-table__top_area .p-product-table__name_head,
.p-product-table__top_area .p-product-table__name {
  height: 266px;
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_area.-fixed .p-product-table__series_head,
  .p-product-table__top_area.-fixed .p-product-table__series, .p-product-table__top_area.-bottom .p-product-table__series_head,
  .p-product-table__top_area.-bottom .p-product-table__series {
    height: 44px !important;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__top_area.-fixed .p-product-table__series_head,
  .p-product-table__top_area.-fixed .p-product-table__series, .p-product-table__top_area.-bottom .p-product-table__series_head,
  .p-product-table__top_area.-bottom .p-product-table__series {
    height: 83px !important;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_area.-fixed .p-product-table__series_name, .p-product-table__top_area.-bottom .p-product-table__series_name {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
.p-product-table__top_area.-fixed .p-product-table__text, .p-product-table__top_area.-bottom .p-product-table__text {
  height: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-table__top_area.-fixed .p-product-table__name_head,
  .p-product-table__top_area.-fixed .p-product-table__name, .p-product-table__top_area.-bottom .p-product-table__name_head,
  .p-product-table__top_area.-bottom .p-product-table__name {
    height: 44px !important;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__top_area.-fixed .p-product-table__name_head,
  .p-product-table__top_area.-fixed .p-product-table__name, .p-product-table__top_area.-bottom .p-product-table__name_head,
  .p-product-table__top_area.-bottom .p-product-table__name {
    height: 75px !important;
  }
}
.p-product-table__top_area.-fixed .p-product-table__product_img, .p-product-table__top_area.-bottom .p-product-table__product_img {
  height: 0;
}
.p-product-table__top_area.-fixed .-zero_chilled .p-product-table__series_name {
  color: #325046;
}
.p-product-table__top_area.-fixed .-zero_chilled .p-product-table__link a {
  color: #325046;
}
.p-product-table__top_area.-fixed .-zero_advance .p-product-table__series_name {
  color: #a7333c;
}
.p-product-table__top_area.-fixed .-zero_advance .p-product-table__link a {
  color: #a7333c;
}
.p-product-table__top_area.-fixed .-zero_class .p-product-table__series_name {
  color: #22303a;
}
.p-product-table__top_area.-fixed .-zero_class .p-product-table__link a {
  color: #22303a;
}
.p-product-table__top_area.-fixed .-furniel .p-product-table__series_name {
  color: #8d5a50;
}
.p-product-table__top_area.-fixed .-furniel .p-product-table__link a {
  color: #8d5a50;
}
.p-product-table__top_area.-fixed .-sakura_japan .p-product-table__series_name {
  color: #57233a;
}
.p-product-table__top_area.-fixed .-sakura_japan .p-product-table__link a {
  color: #57233a;
}
.p-product-table__top_area.-fixed .-pro_class .p-product-table__series_name {
  color: #b98d72;
}
.p-product-table__top_area.-fixed .-pro_class .p-product-table__link a {
  color: #b98d72;
}
.p-product-table__top_area.-fixed .-hyo_on_m2 .p-product-table__series_name {
  color: #4d4548;
}
.p-product-table__top_area.-fixed .-hyo_on_m2 .p-product-table__link a {
  color: #4d4548;
}
.p-product-table__top_area.-fixed .-frosty .p-product-table__series_name {
  color: #a18a84;
}
.p-product-table__top_area.-fixed .-frosty .p-product-table__link a {
  color: #a18a84;
}
.p-product-table__top_area.-fixed .p-product-table__product_img {
  height: 0;
}

@media only screen and (max-width: 47.9375em ) {
  .p-product-table__buy {
    height: 70px !important;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-table__buy {
    height: 100px !important;
  }
}

.p-carousel {
  position: relative;
}
.p-carousel button:focus {
  outline: none;
}

.p-carousel__viewer {
  position: relative;
  width: 100%;
  width: 400px;
  height: 400px;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 40em ) {
  .p-carousel__viewer {
    width: 89vw;
    height: 89vw;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__viewer {
    width: 500px;
    height: 500px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-carousel__viewer {
    width: 800px;
    height: 800px;
  }
}

.p-carousel__slider {
  width: 100%;
  height: 100%;
}

.p-carousel__item {
  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;
  position: absolute;
  opacity: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform linear 0.25s, -webkit-filter linear 0.25s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform linear 0.25s, -webkit-filter linear 0.25s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, transform linear 0.25s, filter linear 0.25s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, transform linear 0.25s, filter linear 0.25s, -webkit-transform linear 0.25s, -webkit-filter linear 0.25s;
  -webkit-filter: blur(2px);
          filter: blur(2px);
}
.p-carousel__item img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.browser-is-ie .p-carousel__item img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.p-carousel__item video {
  display: block;
  max-width: 100%;
  max-height: 100%;
}
.p-carousel__item.active {
  z-index: 20;
  opacity: 1;
  -webkit-filter: blur(0);
          filter: blur(0);
}
.p-carousel__item.left {
  -webkit-transform: translate(-15%, 0);
          transform: translate(-15%, 0);
}
.p-carousel__item.right {
  -webkit-transform: translate(15%, 0);
          transform: translate(15%, 0);
}

/* -----------------------------------------------------------------
/* ナビゲーション
----------------------------------------------------------------- */
.p-carousel__nav {
  position: absolute;
  z-index: 30;
  top: 50%;
  width: 100%;
}
.p-carousel__nav button {
  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;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.65);
  border-style: solid;
  border-width: 1px;
  border-color: #dddddd;
  border-radius: 50%;
  line-height: 1.75;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__nav button {
    width: 40px;
    height: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__nav button {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-carousel__nav button {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel__nav button:hover {
    background-color: #aa8f7b;
    border-color: #aa8f7b;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel__nav button:hover svg {
    fill: #fff;
  }
}
.p-carousel__nav svg {
  display: block;
  width: 6px;
  height: 12px;
  fill: #222222;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}

.p-carousel__back {
  left: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__back {
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__back {
    -webkit-transform: translate(-150%, -50%);
            transform: translate(-150%, -50%);
  }
}
.p-carousel__back svg {
  -webkit-transform: translate(-20%, 0);
          transform: translate(-20%, 0);
}

.p-carousel__next {
  right: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__next {
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__next {
    -webkit-transform: translate(150%, -50%);
            transform: translate(150%, -50%);
  }
}
.p-carousel__next svg {
  -webkit-transform: translate(20%, 0);
          transform: translate(20%, 0);
}

.p-carousel__indicator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__indicator {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__indicator {
    margin-top: 40px;
  }
}
.p-carousel__indicator button {
  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;
  position: relative;
  overflow: hidden;
  opacity: 0;
  padding: 0;
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
  background: none;
  border: none;
  line-height: 1.75;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__indicator button {
    width: 60px;
    height: 60px;
    margin-right: 3px;
    margin-left: 3px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__indicator button {
    width: 85px;
    height: 85px;
  }
}
.p-carousel__indicator button:after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  height: 2px;
  background-color: #dddddd;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__indicator button:after {
    width: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__indicator button:after {
    width: 54px;
  }
}
.p-carousel__indicator button img {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__indicator button img {
    max-width: 50px;
    max-height: 50px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__indicator button img {
    max-width: 72px;
    max-height: 72px;
  }
}
.p-carousel__indicator button video {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel__indicator button video {
    max-width: 50px;
    max-height: 50px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel__indicator button video {
    max-width: 72px;
    max-height: 72px;
  }
}
.p-carousel__indicator button.visible {
  opacity: 0.3;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.p-carousel__indicator button.visible.active {
  opacity: 1;
}
.p-carousel__indicator button.visible.active:after {
  background-color: #222222;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
.p-carousel__indicator button:hover {
  opacity: 1;
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel__indicator button:hover:after {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media only screen and (max-width: 40em ) {
  .p-carousel.-small .p-carousel__viewer {
    width: 89vw;
    height: 89vw;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-carousel.-small .p-carousel__viewer {
    width: 400px;
    height: 400px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel.-small .p-carousel__viewer {
    width: 300px;
    height: 300px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-carousel.-small .p-carousel__viewer {
    width: 450px;
    height: 450px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel.-small .p-carousel__nav button {
    width: 50px;
    height: 50px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel.-small .p-carousel__back {
    -webkit-transform: translate(-110%, -50%);
            transform: translate(-110%, -50%);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel.-small .p-carousel__next {
    -webkit-transform: translate(110%, -50%);
            transform: translate(110%, -50%);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-carousel.-small .p-carousel__indicator button img {
    max-width: 60px;
    max-height: 60px;
  }
}
.p-carousel.-option .p-carousel__viewer {
  width: 348px;
  height: 261px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel.-option .p-carousel__viewer {
    width: 100%;
    height: 64vw;
  }
  .p-carousel.-option .p-carousel__viewer .p-carousel__item img {
    width: 70%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel.-option .p-carousel__viewer {
    width: 440px;
    height: 330px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-carousel.-option .p-carousel__viewer {
    width: 625px;
    height: 469px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel.-option .p-carousel__nav .p-carousel__back {
    left: 8px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel.-option .p-carousel__nav .p-carousel__next {
    right: 8px;
  }
}
.p-carousel.-option .p-carousel__nav button {
  background-color: #fff;
}
@media (hover: hover) {
  .p-carousel.-option .p-carousel__nav button:hover {
    background-color: #aa8f7b;
    border-color: #aa8f7b;
  }
}
.p-carousel.-option .p-carousel__indicator {
  margin-top: 23px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0 20px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel.-option .p-carousel__indicator {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[5];
    grid-template-columns: repeat(5, 1fr);
    gap: 6px 4px;
    margin-top: 0;
    padding: 10px 0;
    width: 100%;
    background-color: #000;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel.-option .p-carousel__indicator {
    width: 440px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-carousel.-option .p-carousel__indicator {
    width: 625px;
  }
}
.p-carousel.-option .p-carousel__indicator button {
  width: 72px;
  height: 74px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel.-option .p-carousel__indicator button {
    margin: 0 auto;
  }
}
@media only screen and (max-width: 40em ) {
  .p-carousel.-option .p-carousel__indicator button {
    width: 52px;
    height: 54px;
  }
}
.p-carousel.-option .p-carousel__indicator button::after {
  background-color: #dddddd;
}
.p-carousel.-option .p-carousel__indicator button img {
  width: 72px;
  height: 54px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-carousel.-option .p-carousel__indicator button img {
    max-width: none;
    max-height: none;
  }
}
@media only screen and (max-width: 40em ) {
  .p-carousel.-option .p-carousel__indicator button img {
    width: 52px;
    height: 39px;
  }
}

.p-product-block {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
@media print, screen and (min-width: 48em ) {
  .p-product-block {
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}

.p-product-block__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1400px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__inner {
    margin-right: auto;
    margin-left: auto;
  }
}

.p-product-block__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__img {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%;
    max-height: 400px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__img {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: absolute;
    overflow: hidden;
    top: 0;
    right: 0;
    width: 37.5%;
    height: 100%;
  }
}
.p-product-block__img img {
  display: block;
  max-width: 100%;
}
.p-product-block__img.-height_auto img {
  height: auto;
}

.p-product-block__section {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__section {
    width: 100%;
    padding-top: 40px;
    padding-bottom: 20px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__section {
    width: 57%;
    padding-top: 80px;
    padding-bottom: 90px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block__section {
    padding-top: 147px;
    padding-bottom: 156px;
  }
}

.p-product-block__sub {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.1em;
  color: #aa8f7b;
}
@media only screen and (max-width: 40em ) {
  .p-product-block__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block__sub {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-product-block__main {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__main {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__main {
    margin-top: 2px;
    font-size: 22px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__main {
    margin-top: 8px;
    font-size: 28px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block__main {
    font-size: 32px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__main br {
    display: none;
  }
}

.p-product-block__desc {
  text-align: justify;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__desc {
    margin-top: 15px;
    font-size: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__desc {
    margin-top: 15px;
    font-size: 16px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block__desc {
    margin-top: 25px;
    font-size: 18px;
    line-height: 2;
  }
}

.p-product-block__button {
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block__button {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block__button {
    max-width: 320px;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block__button {
    margin-top: 28px;
  }
}

/*****************************************
* モディファイア
*****************************************/
.p-product-block--gray {
  color: #222;
  background-color: #f7f7f7;
}

.p-product-block--zero_class {
  color: #fff;
  background-color: #22303a;
}

.p-product-block--zero_advance {
  color: #fff;
  background-color: #a7333c;
}

.p-product-block--furniel {
  color: #fff;
  background-color: #8d5a50;
}

.p-product-block--sakura_japan {
  color: #fff;
  background-color: #57233a;
}

.p-product-block--pro_class {
  color: #fff;
  background-color: #b98d72;
}

.p-product-block--hyo_on_m2 {
  color: #fff;
  background-color: #4d4548;
}

.p-product-block--hyo_on_m5 {
  color: #fff;
  background-color: #383442;
}

/* 画像：左／全面配置 */
.p-product-block--img_left .p-product-block__inner {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block--img_left .p-product-block__img {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block--img_left .p-product-block__img {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 37.5%;
    left: 0;
  }
}
.p-product-block--img_left .p-product-block__img img {
  width: 100%;
}
.p-product-block--img_left .p-product-block__sub {
  color: #aa8f7b;
}

/* 中央寄せ */
.p-product-block--center, .p-product-block--top {
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
.p-product-block--center .p-product-block__inner, .p-product-block--top .p-product-block__inner {
  display: block;
  max-width: 960px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block--center .p-product-block__inner, .p-product-block--top .p-product-block__inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block--center .p-product-block__inner, .p-product-block--top .p-product-block__inner {
    padding-top: 92px;
    padding-bottom: 90px;
  }
}
.p-product-block--center .p-product-block__section, .p-product-block--top .p-product-block__section {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block--center .p-product-block__section, .p-product-block--top .p-product-block__section {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block--center .p-product-block__section, .p-product-block--top .p-product-block__section {
    margin-top: 94px;
  }
}
.p-product-block--center .p-product-block__section:first-child, .p-product-block--top .p-product-block__section:first-child {
  margin-top: 0;
}
.p-product-block--center .p-product-block__img, .p-product-block--top .p-product-block__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  overflow: hidden;
  top: auto;
  right: auto;
  width: 100%;
  height: auto;
  max-height: inherit;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-block--center .p-product-block__img, .p-product-block--top .p-product-block__img {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-block--center .p-product-block__img, .p-product-block--top .p-product-block__img {
    margin-top: 54px;
  }
}
.p-product-block--center .p-product-block__sub, .p-product-block--top .p-product-block__sub {
  color: #aa8f7b;
}

/* 冒頭 */
@media print, screen and (min-width: 48em ) {
  .p-product-block--top .p-product-block__inner {
    padding-top: 80px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block--top .p-product-block__inner {
    padding-top: 78px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block--top .p-product-block__main {
    font-size: 38px;
    font-size: 2.375rem;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-product-block--series-top {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top {
    height: 500px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block--series-top {
    height: 600px;
  }
}
.p-product-block--series-top .p-product-block__inner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top .p-product-block__inner {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.p-product-block--series-top .p-product-block__section {
  width: 100%;
  padding-top: 40px;
  padding-bottom: 20px;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top .p-product-block__section {
    width: 57%;
    padding-top: 80px;
    padding-bottom: 90px;
    padding-right: 0;
    padding-left: 0;
  }
}
.browser-is-ie .p-product-block--series-top .p-product-block__img {
  height: 500px;
}
@media print, screen and (min-width: 48em ) {
  .p-product-block--series-top .p-product-block__img {
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top .p-product-block__img {
    position: absolute;
    display: block;
    width: 37.5%;
  }
  .browser-is-ie .p-product-block--series-top .p-product-block__img {
    height: 100%;
    position: absolute !important;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top .p-product-block__img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  .browser-is-ie .p-product-block--series-top .p-product-block__img img {
    position: relative;
    -webkit-transform: none;
            transform: none;
    top: auto;
    left: auto;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-product-block--series-top-not-full {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top-not-full {
    height: 500px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-block--series-top-not-full {
    height: 600px;
  }
}
.p-product-block--series-top-not-full .p-product-block__inner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top-not-full .p-product-block__inner {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.p-product-block--series-top-not-full .p-product-block__section {
  width: 100%;
  padding-top: 40px;
  padding-bottom: 20px;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top-not-full .p-product-block__section {
    width: 57%;
    padding-top: 80px;
    padding-bottom: 90px;
    padding-right: 0;
    padding-left: 0;
  }
}
.browser-is-ie .p-product-block--series-top-not-full .p-product-block__img {
  height: 500px;
}
.browser-is-ie .p-product-block--series-top-not-full .p-product-block__img img {
  width: 550px;
}
@media print, screen and (min-width: 48em ) {
  .p-product-block--series-top-not-full .p-product-block__img {
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-block--series-top-not-full .p-product-block__img {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    width: 37.5%;
  }
}

.p-filters {
  position: relative;
  border-style: solid;
  border-color: #dddddd;
}
@media only screen and (max-width: 40em ) {
  .p-filters {
    border-width: 0 0 1px 0;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-filters {
    border-width: 1px 0;
  }
}

.p-filters__container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  height: 0;
}
.p-filters__container.animation {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.open + .p-filters__container {
  height: auto;
}

.p-filters__heading {
  position: relative;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em ) {
  .p-filters__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-filters__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 40em ) {
  .p-filters__heading {
    padding-bottom: 23px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-filters__heading {
    padding-top: 19px;
    padding-bottom: 21px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-filters__heading {
    padding-top: 24px;
    padding-bottom: 26px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-filters__trigger {
  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;
  position: absolute;
  right: 0;
  -webkit-transform: translate(18px, 0);
          transform: translate(18px, 0);
  width: 60px;
  height: 60px;
  padding: 0;
  background: none;
  border: none;
  line-height: 1.75;
  cursor: pointer;
  /* 矢印 */
}
@media only screen and (max-width: 40em ) {
  .p-filters__trigger {
    display: none;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-filters__trigger {
    top: 4px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-filters__trigger {
    top: 9px;
  }
}
.p-filters__trigger svg {
  display: block;
  width: 19px;
  height: 9px;
  fill: #222222;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.p-filters__trigger:focus {
  outline: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-filters__trigger:hover svg {
    fill: #aa8f7b;
  }
}
.p-filters__trigger.open svg {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.p-filters__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-filters__inner {
    margin-left: -14px;
  }
}
.p-filters__inner.-option {
  display: block;
  margin-left: 0;
}
.p-filters__inner.-option .p-filters__col {
  width: 100%;
  margin-left: 0;
}
.p-filters__inner.-option .p-filters__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 32px;
}
.p-filters__inner.-option .p-filters__list > li:first-child {
  margin-top: 4px;
}
@media only screen and (max-width: 40em ) {
  .p-filters__inner.-option .p-filters__list > li:first-child {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-filters__inner.-option .c-checkbox {
    width: 138px;
  }
}

.p-filters__col {
  width: 33.33%;
  padding-bottom: 26px;
}
@media only screen and (max-width: 40em ) {
  .p-filters__col {
    width: 100%;
    padding-bottom: 0;
    border-style: solid;
    border-color: #dddddd;
    border-width: 0 0 1px 0;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-filters__col {
    width: calc(33.33% - 14px);
    margin-left: 14px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-filters__col {
    width: calc(16.66% - 14px);
  }
}
@media only screen and (max-width: 40em ) {
  .p-filters__col:first-child {
    border-width: 1px 0 1px 0;
  }
}
@media only screen and (max-width: 40em ) {
  .p-filters__col:last-child {
    border: none;
  }
}

@media only screen and (max-width: 40em ) {
  .p-filters__list-trigger {
    position: relative;
    padding-top: 16px;
    padding-bottom: 16px;
    cursor: pointer;
  }
}
.p-filters__list-trigger:before, .p-filters__list-trigger:after {
  position: absolute;
  display: none;
  top: 50%;
  background-color: #aaaaaa;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
}
@media only screen and (max-width: 40em ) {
  .p-filters__list-trigger:before, .p-filters__list-trigger:after {
    display: block;
  }
}
.p-filters__list-trigger:before {
  width: 11px;
  height: 1px;
  right: 8px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.p-filters__list-trigger:after {
  width: 1px;
  height: 11px;
  right: 13px;
  -webkit-transform: translate(0, -50%) rotate(0deg);
          transform: translate(0, -50%) rotate(0deg);
}
.p-filters__list-trigger.open:after {
  -webkit-transform: translate(0, -50%) rotate(90deg);
          transform: translate(0, -50%) rotate(90deg);
}

/* 子要素のアコーディオン（SPのみ） */
.p-filters__list-container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}
@media only screen and (max-width: 40em ) {
  .p-filters__list-container {
    height: 0;
  }
}
.p-filters__list-container.animation {
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.open + .p-filters__list-container {
  height: auto;
}

.p-filters__list {
  padding-top: 16px;
}
@media only screen and (max-width: 40em ) {
  .p-filters__list {
    padding-bottom: 16px;
  }
}
.p-filters__list > li {
  margin-top: 4px;
}
@media only screen and (max-width: 40em ) {
  .p-filters__list > li {
    margin-top: 8px;
  }
}
.p-filters__list > li:first-child {
  margin-top: 0;
}

.p-product-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
}
@media only screen and (max-width: 40em ) {
  .p-product-list {
    margin-top: -20px;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-product-list {
    margin-top: -20px;
    margin-left: -20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-list {
    margin-top: -40px;
    margin-left: -40px;
  }
}
.p-product-list.-max1 .p-product {
  width: 100%;
  margin-left: 0;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-product-list.-width_s {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.p-product-list.-width_s .p-product {
  width: 100%;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-product-list.-width_s .p-product {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.p-product {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  background-color: #f7f7f7;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translate(0, 20px);
          transform: translate(0, 20px);
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 40em ) {
  .p-product {
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-product {
    width: calc(50% - 20px);
    margin-top: 20px;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product {
    width: calc(33.33% - 40px);
    margin-top: 40px;
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-product {
    width: calc(25% - 40px);
  }
}
.p-product.-visible {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.p-product.-type-ec {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
  width: 100%;
  background: #fff;
}
@media print, screen and (min-width: 48em ) {
  .p-product.-type-ec {
    min-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product.-type-ec a {
    min-height: 100%;
    height: auto;
  }
}
.p-product.-type-ec a .p-product__series,
.p-product.-type-ec a .p-product__name {
  color: #000;
}
.p-product a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  height: 100%;
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding-top: 47px;
  padding-bottom: 40px;
  color: #222222;
  line-height: 1.4;
  text-decoration: none;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  /* 下線 */
}
.p-product a:after {
  display: block;
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-product a:hover {
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product a:hover:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.p-product__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 20;
}
.p-product__img img {
  display: block;
  width: 40vw;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 48em ) {
  .p-product__img img {
    width: 20vw;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product__img img {
    width: 12vw;
    max-width: 167px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-product__img img {
    -webkit-transform: scale(1.075);
            transform: scale(1.075);
  }
}
.p-product__img .p-product__fade-img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 1;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-product__img .p-product__fade-img {
    opacity: 1;
  }
}

.p-product__img-outer {
  position: relative;
}

/* -----------------------------------------------------------------
/* テキストブロック
----------------------------------------------------------------- */
.p-product__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  z-index: 20;
  margin-top: 17px;
  padding-right: 10px;
  padding-left: 10px;
}

/* 「New」 */
.p-product__new-icon {
  margin-bottom: 11px;
  color: #e86300;
  text-align: center;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-product__new-icon {
    color: #fff;
  }
}

.p-product__series,
.p-product__name {
  display: block;
  position: relative;
  width: 100%;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s 0.25s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product__series,
  .p-product__name {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product__series,
  .p-product__name {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product__series,
  .p-product__name {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product__series,
  .p-product__name {
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product__series,
  .p-product__name {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-product__name svg {
  width: 6px;
  height: 11px;
  margin-left: 4px;
  fill: #ccc;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-product__name svg {
    fill: #fff;
    -webkit-transform: translate(3px, 0);
            transform: translate(3px, 0);
  }
}

.p-product__info {
  width: 100%;
  margin-top: 11px;
  text-align: center;
}
.p-product__info > li {
  display: inline-block;
  position: relative;
  padding-right: 13px;
  padding-left: 15px;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
@media print, screen and (min-width: 93.75em ) {
  .p-product__info > li {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-product__info > li:before {
  display: block;
  position: absolute;
  top: 55%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1px;
  height: 15px;
  background-color: #222222;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-product__info > li:before {
    background-color: #fff;
  }
}
.p-product__info > li:first-child {
  padding-left: 0;
}
.p-product__info > li:first-child:before {
  display: none;
}
.p-product__info > li:last-child {
  padding-right: 0;
}

.p-product__price:after {
  margin-left: 4px;
  content: "(税込)";
  font-size: 12px;
  font-size: 0.75rem;
}
@media print, screen and (min-width: 93.75em ) {
  .p-product__price:after {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-product__any {
  display: block;
  width: 100%;
  margin-top: 11px;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
}
@media print, screen and (min-width: 93.75em ) {
  .p-product__any {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-product__desc {
  margin-top: 12px;
  padding-right: 20px;
  padding-left: 20px;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  line-height: 1.4;
}
@media print, screen and (min-width: 93.75em ) {
  .p-product__desc {
    padding-right: 40px;
    padding-left: 40px;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.p-product__note {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: 8px;
  font-weight: bold;
  font-size: 16px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product__note {
    font-size: 14px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 61.25em ) {
  .p-product.-frosty a:hover .p-product__series,
  .p-product.-frosty a:hover .p-product__name, .p-product.-hyo_on_m2 a:hover .p-product__series,
  .p-product.-hyo_on_m2 a:hover .p-product__name, .p-product.-hyo_on_m5 a:hover .p-product__series,
  .p-product.-hyo_on_m5 a:hover .p-product__name, .p-product.-zero_chilled a:hover .p-product__series,
  .p-product.-zero_chilled a:hover .p-product__name, .p-product.-zero_advance a:hover .p-product__series,
  .p-product.-zero_advance a:hover .p-product__name, .p-product.-zero_class a:hover .p-product__series,
  .p-product.-zero_class a:hover .p-product__name, .p-product.-furniel a:hover .p-product__series,
  .p-product.-furniel a:hover .p-product__name, .p-product.-sakura_japan a:hover .p-product__series,
  .p-product.-sakura_japan a:hover .p-product__name, .p-product.-sv a:hover .p-product__series,
  .p-product.-sv a:hover .p-product__name, .p-product.-pro_class a:hover .p-product__series,
  .p-product.-pro_class a:hover .p-product__name, .p-product.-wine_suit a:hover .p-product__series,
  .p-product.-wine_suit a:hover .p-product__name {
    color: #fff;
  }
}
.p-product.-hyo_on_m2 a:after {
  background-color: #4d4548;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-hyo_on_m2 a:hover {
    background-color: #4d4548;
  }
}
.p-product.-hyo_on_m2 .p-product__series,
.p-product.-hyo_on_m2 .p-product__name {
  color: #4d4548;
}
.p-product.-hyo_on_m5 a:after {
  background-color: #383442;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-hyo_on_m5 a:hover {
    background-color: #383442;
  }
}
.p-product.-hyo_on_m5 .p-product__series,
.p-product.-hyo_on_m5 .p-product__name {
  color: #4d4548;
}
.p-product.-zero_chilled a:after {
  background-color: #325046;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-zero_chilled a:hover {
    background-color: #325046;
  }
}
.p-product.-zero_chilled .p-product__series,
.p-product.-zero_chilled .p-product__name {
  color: #325046;
}
.p-product.-zero_chilled.-ib a:after {
  background-color: #314263;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-zero_chilled.-ib a:hover {
    background-color: #314263;
  }
}
.p-product.-zero_chilled.-kh a:after {
  background-color: #6b6531;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-zero_chilled.-kh a:hover {
    background-color: #6b6531;
  }
}
.p-product.-zero_advance a:after {
  background-color: #a7333c;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-zero_advance a:hover {
    background-color: #a7333c;
  }
}
.p-product.-zero_advance .p-product__series,
.p-product.-zero_advance .p-product__name {
  color: #a7333c;
}
.p-product.-zero_class a:after {
  background-color: #22303a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-zero_class a:hover {
    background-color: #22303a;
  }
}
.p-product.-zero_class .p-product__series,
.p-product.-zero_class .p-product__name {
  color: #22303a;
}
.p-product.-furniel a:after {
  background-color: #8d5a50;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-furniel a:hover {
    background-color: #8d5a50;
  }
}
.p-product.-furniel .p-product__series,
.p-product.-furniel .p-product__name {
  color: #8d5a50;
}
.p-product.-sakura_japan a:after {
  background-color: #57233a;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-sakura_japan a:hover {
    background-color: #57233a;
  }
}
.p-product.-sakura_japan .p-product__series,
.p-product.-sakura_japan .p-product__name {
  color: #57233a;
}
.p-product.-sv a:after, .p-product.-pro_class a:after {
  background-color: #b98d72;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-sv a:hover, .p-product.-pro_class a:hover {
    background-color: #b98d72;
  }
}
.p-product.-sv .p-product__series,
.p-product.-sv .p-product__name, .p-product.-pro_class .p-product__series,
.p-product.-pro_class .p-product__name {
  color: #b98d72;
}
.p-product.-wine_suit a:after {
  background-color: #afaaa7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-wine_suit a:hover {
    background-color: #afaaa7;
  }
}
.p-product.-wine_suit .p-product__series,
.p-product.-wine_suit .p-product__name {
  color: #afaaa7;
}
.p-product.-hyo_on_m2 a:after {
  background-color: #4d4548;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-hyo_on_m2 a:hover {
    background-color: #4d4548;
  }
}
.p-product.-hyo_on_m2 .p-product__series,
.p-product.-hyo_on_m2 .p-product__name {
  color: #4d4548;
}
.p-product.-hyo_on_m5 a:after {
  background-color: #383442;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-hyo_on_m5 a:hover {
    background-color: #383442;
  }
}
.p-product.-hyo_on_m5 .p-product__series,
.p-product.-hyo_on_m5 .p-product__name {
  color: #383442;
}
.p-product.-frosty a:after {
  background-color: #a18a84;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-frosty a:hover {
    background-color: #a18a84;
  }
}
.p-product.-frosty .p-product__series,
.p-product.-frosty .p-product__name {
  color: #a18a84;
}

.p-product__door-both-side {
  margin-top: 8px;
}

.p-product__ranking {
  position: absolute;
  z-index: 20;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 18px;
  font-size: 1.125rem;
  color: #fff;
  left: 20px;
  top: 20px;
}
.p-product__ranking.-crown {
  --bg-color: #dccc79;
  aspect-ratio: 68/43;
  width: 68px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-product__ranking.-crown::before {
  z-index: -1;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2OCIgaGVpZ2h0PSI0MyIgZmlsbD0ibm9uZSIgdmlld0JveD0iMCAwIDY4IDQzIj4KICA8cGF0aCBmaWxsPSIjRENDQzc5IiBkPSJNNjQuMzggNi43OGEzLjk1MiAzLjk1MiAwIDAgMC0yLjgxIDYuNzNsLTEyLjU4IDcuNjdMMzUuNSA3LjY2YzEuNTItLjU1IDIuNjItMS45OSAyLjYyLTMuNyAwLTIuMTgtMS43Ny0zLjk1LTMuOTUtMy45NXMtMy45NSAxLjc3LTMuOTUgMy45NWMwIDEuNzEgMS4wOSAzLjE1IDIuNjIgMy43TDE5LjM1IDIxLjE4IDYuNzYgMTMuNTFjLjcxLS43MSAxLjE0LTEuNyAxLjE0LTIuNzggMC0yLjE4LTEuNzctMy45NS0zLjk1LTMuOTVTMCA4LjU1IDAgMTAuNzNzMS43NyAzLjk1IDMuOTUgMy45NWMuMzggMCAuNzQtLjA3IDEuMDgtLjE3bDYuMjYgMjguNjloNDUuNzVsNi4yNi0yOC42OWMuMzUuMS43LjE3IDEuMDguMTcgMi4xOCAwIDMuOTUtMS43NyAzLjk1LTMuOTVzLTEuNzctMy45NS0zLjk1LTMuOTVaIi8+Cjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2OCIgaGVpZ2h0PSI0MyIgZmlsbD0ibm9uZSIgdmlld0JveD0iMCAwIDY4IDQzIj4KICA8cGF0aCBmaWxsPSIjRENDQzc5IiBkPSJNNjQuMzggNi43OGEzLjk1MiAzLjk1MiAwIDAgMC0yLjgxIDYuNzNsLTEyLjU4IDcuNjdMMzUuNSA3LjY2YzEuNTItLjU1IDIuNjItMS45OSAyLjYyLTMuNyAwLTIuMTgtMS43Ny0zLjk1LTMuOTUtMy45NXMtMy45NSAxLjc3LTMuOTUgMy45NWMwIDEuNzEgMS4wOSAzLjE1IDIuNjIgMy43TDE5LjM1IDIxLjE4IDYuNzYgMTMuNTFjLjcxLS43MSAxLjE0LTEuNyAxLjE0LTIuNzggMC0yLjE4LTEuNzctMy45NS0zLjk1LTMuOTVTMCA4LjU1IDAgMTAuNzNzMS43NyAzLjk1IDMuOTUgMy45NWMuMzggMCAuNzQtLjA3IDEuMDgtLjE3bDYuMjYgMjguNjloNDUuNzVsNi4yNi0yOC42OWMuMzUuMS43LjE3IDEuMDguMTcgMi4xOCAwIDMuOTUtMS43NyAzLjk1LTMuOTVzLTEuNzctMy45NS0zLjk1LTMuOTVaIi8+Cjwvc3ZnPg==");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--bg-color);
  width: 100%;
  height: 100%;
}
.p-product__ranking.-crown.-ranking-1 {
  --bg-color: #bdc7ca;
}
.p-product__ranking.-crown.-ranking-2 {
  --bg-color: #b59074;
}
.p-product__ranking.-others {
  width: 47px;
  height: 47px;
  border-radius: 50%;
  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;
  background: #910013;
}

@media only screen and (max-width: 61.1875em ) {
  .p-product.-buy-button a {
    padding-bottom: 90px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-product.-buy-button a {
    padding-bottom: 100px;
  }
}

.p-product-list.-option .p-ec-modal {
  width: 100%;
  background: rgba(0, 0, 0, 0.86);
}
@media print, screen and (min-width: 48em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__gallery-outer {
    display: contents;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__gallery-outer {
    max-height: 80vh;
    overflow-y: auto;
    width: calc(100% - 50px);
    background-color: #f7f7f7;
  }
}
.p-product-list.-option .p-ec-modal .p-ec-modal__gallery {
  position: relative;
  width: 70%;
  height: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__gallery {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__gallery .p-ec-modal__gallery-slide {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__gallery .p-ec-modal__gallery-slide {
    position: relative;
  }
}
.p-product-list.-option .p-ec-modal .p-ec-modal__shop {
  height: 100%;
  width: 30%;
  background-color: #f7f7f7;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__shop {
    width: 100%;
    height: auto;
  }
}
.p-product-list.-option .p-ec-modal .p-ec-modal__shop form {
  height: 100%;
  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;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-ec-modal .p-ec-modal__shop form .p-shop-block__contents {
    padding: 0 25px 32px;
  }
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents {
  width: 100%;
  padding: 0 56px;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main {
  width: 100%;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__head .p-shop-block__name {
  font-size: 18px;
  line-height: 1.77;
  padding-top: 0;
  top: 0;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-price {
  font-size: 16px;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-price span {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-size: 34px;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-price span {
    font-size: 24px;
  }
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-product__option-desc {
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.6;
  color: #222;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart {
  margin-top: 30px;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity label {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 2;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control {
  margin-top: 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #aa8f7b;
  border-radius: 4px;
  overflow: hidden;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control input.js-qty-input {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control input.js-qty-input::-webkit-inner-spin-button, .p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control input.js-qty-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control button {
  background-color: #a38773;
  color: #fff;
  border: none;
  width: 40px;
  height: 40px;
  font-size: 16px;
  cursor: pointer;
  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;
  padding: 0;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control button:hover {
  opacity: 0.8;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control button.-inactive {
  pointer-events: none;
  background-color: #cccccc;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control input.js-qty-input {
  width: 110px;
  height: 40px;
  text-align: center;
  font-size: 14px;
  border: none;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__quantity .p-quantity-control input.js-qty-input:focus {
  outline: none;
}
.p-product-list.-option .p-ec-modal .p-shop-block__contents .p-shop-block__main .p-shop-block__option-cart .p-shop-block__button {
  margin-top: 16px;
}
.p-product-list.-option .p-product {
  margin-top: 80px;
}
@media only screen and (max-width: 61.1875em ) {
  .p-product-list.-option .p-product {
    margin-top: 40px;
  }
}
.p-product-list.-option .p-product .p-product__option {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding: 32px 32px 100px;
  color: #222222;
  line-height: 1.4;
  text-decoration: none;
  border-bottom: 5px solid #383442;
}
@media only screen and (max-width: 61.1875em ) {
  .p-product-list.-option .p-product .p-product__option {
    padding: 24px 24px 100px;
  }
}
.p-product-list.-option .p-product .p-product__option .p-product__img img {
  width: 100%;
  max-width: none;
}
.p-product-list.-option .p-product .p-product__option .p-product__text {
  padding: 0;
}
.p-product-list.-option .p-product .p-product__option .p-product__desc {
  padding: 0;
}
.p-product-list.-option .p-product .p-product__option .p-product__info li::before {
  display: none;
}
.p-product-list.-option .p-product .p-product__option .p-product__price {
  padding-left: 0;
}
.p-product-list.-option .p-product .c-ec-button.-product {
  bottom: 37px;
  max-width: calc(100% - 64px);
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-list.-option .p-product .c-ec-button.-product {
    bottom: 25px;
    max-width: calc(100% - 48px);
  }
}
.p-product-list.-option .p-product .c-ec-button.-option::after {
  background-image: url(/common/svg/icon_plus.svg);
  width: 12px;
  height: 12px;
}

.p-product-list.-detail {
  margin-top: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-product-list.-detail .p-product {
    width: calc(34% - 37px);
    margin-left: 30px;
    margin-top: 64px;
  }
}

.p-bottom-section {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  border-top: solid 1px #dddddd;
}
@media only screen and (max-width: 47.9375em ) {
  .p-bottom-section {
    margin-top: 40px;
    padding-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-bottom-section {
    margin-top: 128px;
    padding-top: 100px;
  }
}

.p-bottom-section__img {
  width: 21%;
  max-width: 200px;
}
.p-bottom-section__img img {
  display: block;
  width: 100%;
}

.p-bottom-section__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-bottom-section__text {
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-bottom-section__text {
    margin-top: -11px;
    margin-left: 60px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-bottom-section__text {
    margin-left: 80px;
  }
}

.p-bottom-section__heading {
  margin-top: 0;
}
@media print, screen and (min-width: 93.75em ) {
  .p-bottom-section__heading {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media print, screen and (min-width: 93.75em ) {
  .p-bottom-section__sentence {
    margin-top: 15px;
  }
}

.p-bottom-section__button {
  max-width: 320px;
  margin-top: 18px;
}

.p-spec-table {
  table-layout: fixed;
  width: 100%;
  /* thead */
  /* -----------------------------------------------------------------
  /* th
  ----------------------------------------------------------------- */
  /* -----------------------------------------------------------------
  /* td
  ----------------------------------------------------------------- */
}
.p-spec-table tr {
  border-style: solid;
  border-width: 0 0 1px 0;
  border-color: #dddddd;
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table tr:first-child {
    border-width: 1px 0 1px 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table tr:first-child th {
    margin-top: 0;
  }
}
.p-spec-table th, .p-spec-table td {
  vertical-align: top;
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table th, .p-spec-table td {
    display: block;
    width: 100%;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table th, .p-spec-table td {
    font-size: 16px;
    font-size: 1rem;
    padding-top: 25px;
    padding-bottom: 27px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table thead {
    display: none;
  }
}
.p-spec-table thead tr {
  border-top: none;
}
.p-spec-table thead th {
  padding-top: 0;
  font-size: 24px;
  font-size: 1.5rem;
  text-align: center;
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table thead th {
    padding-bottom: 31px;
  }
}
.p-spec-table th {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table th {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table th {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table th {
    margin-top: 24px;
    font-weight: bold;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table th {
    width: 25%;
    padding-top: 28px;
    padding-bottom: 23px;
    padding-right: 10px;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-spec-table th {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-spec-table th span {
  position: relative;
  top: -5px;
  margin-left: 3px;
  font-size: 10px;
  font-size: 0.625rem;
}
.p-spec-table th br {
  /* SPでは改行しない */
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table th br {
    display: none;
  }
}
.p-spec-table td {
  /* 画像セル */
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table td {
    padding-top: 8px;
    padding-bottom: 24px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table td {
    padding-right: 10px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-spec-table td {
    padding-top: 21px;
    line-height: 2;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table td.p-spec-table__img_cell {
    width: 30%;
    padding-top: 29px;
    padding-bottom: 31px;
  }
}
.p-spec-table td.-pright_0 {
  padding-right: 0;
}
.p-spec-table td img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-small tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p-spec-table.-small th {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 30%;
            flex: 0 0 30%;
    padding: 8px 0;
    margin-top: 0;
    margin-right: 20px;
  }
  .p-spec-table.-small td {
    padding: 11px 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table.-small th {
    width: 33.33%;
    padding-top: 23px;
    padding-bottom: 17px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-spec-table.-small th {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table.-small td {
    padding-top: 19px;
    padding-bottom: 21px;
    padding-right: 0;
  }
}

/* -----------------------------------------------------------------
/* 製品詳細ページで使用する
/* SPのときに見出しと本文を横並びにする
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-product tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 0;
    padding-left: 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-product th {
    width: 30%;
    margin-top: 0;
    margin-right: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table.-product th {
    padding-top: 17px;
    padding-bottom: 17px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-product td {
    width: calc(70% - 20px);
    padding: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-table.-product td {
    padding-top: 17px;
    padding-bottom: 13px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-product td:nth-child(3) {
    padding-left: 30%;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-requirement tr:first-child {
    border-top: 1px solid #dddddd;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-table.-requirement tr:first-child th {
    margin-top: 24px;
  }
}

/* 横スクロール版 ************************************************/
.p-spec-scroll-table__container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.p-spec-scroll-table__container::-webkit-scrollbar {
  height: 6px;
}
.p-spec-scroll-table__container::-webkit-scrollbar-track {
  border-radius: 3px;
}
.p-spec-scroll-table__container::-webkit-scrollbar-thumb {
  border-radius: 3px;
  background: rgba(0, 0, 0, 0.5);
}

.p-spec-scroll-table {
  table-layout: fixed;
  width: 100%;
  min-width: 600px;
  /* thead */
}
.p-spec-scroll-table tr {
  border-style: solid;
  border-width: 0 0 1px 0;
  border-color: #dddddd;
}
.p-spec-scroll-table tr:first-child {
  border-width: 1px 0 1px 0;
}
.p-spec-scroll-table th, .p-spec-scroll-table td {
  vertical-align: top;
  word-break: break-all;
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table th, .p-spec-scroll-table td {
    padding-top: 19px;
    padding-bottom: 21px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-scroll-table th, .p-spec-scroll-table td {
    padding-top: 31px;
    padding-bottom: 33px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table th {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-scroll-table th {
    width: 25%;
    padding-top: 34px;
    padding-bottom: 30px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-spec-scroll-table th {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-spec-scroll-table th span {
  position: relative;
  top: -5px;
  margin-left: 3px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table th span {
    font-size: 8px;
    font-size: 0.5rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-scroll-table th span {
    font-size: 10px;
    font-size: 0.625rem;
  }
}
.p-spec-scroll-table td {
  padding-right: 10px;
  /* 画像セル */
}
@media print, screen and (min-width: 93.75em ) {
  .p-spec-scroll-table td {
    padding-top: 33px;
    line-height: 2;
  }
}
.p-spec-scroll-table td.p-spec-table__img_cell {
  width: 30%;
  padding-top: 29px;
  padding-bottom: 31px;
}
.p-spec-scroll-table td img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  max-height: 100%;
}
.p-spec-scroll-table td.-tac {
  text-align: center;
}
.p-spec-scroll-table thead tr {
  border-top: none;
}
.p-spec-scroll-table thead th {
  padding-top: 0;
  padding-bottom: 31px;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table thead th {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-scroll-table thead th {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-spec-scroll-table thead th {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table thead th:first-child {
    width: 18%;
    padding-right: 10px;
  }
}

.p-spec-scroll-table.-winesuit thead th {
  text-align: left;
}
.p-spec-scroll-table.-winesuit td img {
  margin: 0;
}

.p-spec-scroll-table__caption {
  display: block;
  text-align: center;
}

/* セル内の 左：画像 右：テキスト の配置 */
.p-spec-scroll-table__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 24px;
}
.p-spec-scroll-table__block:first-child {
  margin-top: 0;
}

.p-spec-scroll-table__block_img {
  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 only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table__block_img {
    width: 26px;
    height: 48px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-spec-scroll-table__block_img {
    width: 52px;
    height: 96px;
  }
}
.p-spec-scroll-table__block_img img {
  display: block;
}
.browser-is-ie .p-spec-scroll-table__block_img img {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-spec-scroll-table__block_text {
  margin-left: 20px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-spec-scroll-table__block_text {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.p-spec-scroll-table__annotation {
  counter-reset: annotation;
  margin-top: 30px;
}
.p-spec-scroll-table__annotation li {
  counter-increment: annotation;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 16px;
}
.p-spec-scroll-table__annotation li::before {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  content: counter(annotation) "： ";
}
@media print, screen and (min-width: 48em ) {
  .p-spec-scroll-table__annotation li {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-voice {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  text-align: justify;
  padding-right: 7.5%;
  padding-left: 7.5%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-voice {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-voice {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
  }
}
.p-voice:before, .p-voice:after {
  display: block;
  position: absolute;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 70px;
  font-size: 4.375rem;
  color: #dddddd;
  line-height: 1;
}
@media only screen and (max-width: 40em ) {
  .p-voice:before, .p-voice:after {
    font-size: 50px;
    font-size: 3.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-voice:before, .p-voice:after {
    font-size: 80px;
    font-size: 5rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-voice:before, .p-voice:after {
    font-size: 96px;
    font-size: 6rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice:before, .p-voice:after {
    font-size: 108px;
    font-size: 6.75rem;
  }
}
.p-voice:before {
  top: -18px;
  left: 0;
  content: "“";
}
@media only screen and (max-width: 40em ) {
  .p-voice:before {
    top: -9px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-voice:before {
    top: -26px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice:before {
    top: -30px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .p-voice:before {
    top: -22px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .browser-is-ie .p-voice:before {
    top: -24px;
  }
}
.p-voice:after {
  bottom: -43px;
  right: 0;
  content: "”";
}
@media only screen and (max-width: 40em ) {
  .p-voice:after {
    bottom: -25px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-voice:after {
    bottom: -51px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice:after {
    bottom: -55px;
  }
}

.p-faq-list > li {
  border-style: solid;
  border-width: 1px 0 0 0;
  border-color: #dddddd;
}
.p-faq-list > li:last-child {
  border-width: 1px 0 1px 0;
}

.p-faq {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

.p-faq__icon {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__icon {
    width: 28px;
    height: 28px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__icon {
    width: 36px;
    height: 36px;
  }
}
.p-faq__icon:before, .p-faq__icon:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: 2px;
  background-color: #222222;
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__icon:before, .p-faq__icon:after {
    width: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__icon:before, .p-faq__icon:after {
    width: 16px;
  }
}
.p-faq__icon:after {
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}

/* -----------------------------------------------------------------
/* 質問と回答 共通
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
/* 質問
----------------------------------------------------------------- */
.p-faq__question {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  display: block;
  width: 100%;
  background-color: transparent;
  border: none;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: left;
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__question {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__question {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__question {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-left: 40px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__question {
    padding-top: 26px;
    padding-bottom: 26px;
    padding-left: 53px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-faq__question {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
  }
}
.p-faq__question:before {
  display: block;
  position: absolute;
  left: 0;
  width: 25px;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  text-align: center;
  line-height: 1;
  content: "Q";
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__question:before {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__question:before {
    font-size: 32px;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__question:before {
    top: 19px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__question:before {
    top: 25px;
  }
}
.p-faq__question:focus {
  outline: none;
}

button.p-faq__question {
  cursor: pointer;
}

/* -----------------------------------------------------------------
/* 回答
----------------------------------------------------------------- */
.p-faq__answer {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}

.p-faq__inner {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  text-align: justify;
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__inner {
    padding-bottom: 24px;
    padding-left: 40px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__inner {
    padding-bottom: 31px;
    padding-left: 53px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 2;
  }
}
.p-faq__inner:before {
  display: block;
  position: absolute;
  left: 0;
  width: 25px;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  text-align: center;
  line-height: 1;
  top: 0;
  color: #aa8f7b;
  content: "A";
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__inner:before {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__inner:before {
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-faq__inner.-fs_l {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
  }
}

.p-faq__link {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq__link {
    margin-top: 4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq__link {
    margin-top: 6px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-faq {
  /* アコーディオン使用時 */
}
@media only screen and (max-width: 47.9375em ) {
  .p-faq.-accordion .p-faq__question {
    padding-right: 28px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-faq.-accordion .p-faq__question {
    padding-right: 36px;
  }
}
.p-faq.-close .p-faq__icon:after {
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
          transform: translate(-50%, -50%) rotate(-90deg);
}
.p-faq.-close .p-faq__answer {
  height: 0;
}

.p-download {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-download {
    margin-left: -20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-download {
    margin-left: -60px;
  }
}

.p-download__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  /* 1個目 */
  /* 1～2個目 */
  /* 1～3個目 */
}
@media only screen and (max-width: 40em ) {
  .p-download__item {
    width: 100%;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-download__item {
    width: calc(50% - 20px);
    margin-top: 40px;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-download__item {
    width: calc(33.33% - 60px);
    margin-left: 60px;
  }
}
@media only screen and (max-width: 40em ) {
  .p-download__item:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-download__item:nth-child(-n+2) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-download__item:nth-child(-n+3) {
    margin-top: 0;
  }
}
.p-download__item.-furniel .p-download__img img {
  width: auto;
  height: 226px;
}
.p-download__item > a {
  text-decoration: none;
  color: #222222;
}
@media print, screen and (min-width: 48em ) {
  .p-download__item > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-download {
  /* -----------------------------------------------------------------
  /* 中央寄せ
  ----------------------------------------------------------------- */
  /* -----------------------------------------------------------------
  /* MAX 3列
  ----------------------------------------------------------------- */
  /* -----------------------------------------------------------------
  /* MAX 4列
  ----------------------------------------------------------------- */
}
.p-download.-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-download.-max3 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-download.-max4 {
  margin-left: -40px;
}
@media only screen and (max-width: 40em ) {
  .p-download.-max4 {
    margin-left: 0;
  }
}
.p-download.-max4 .p-download__item {
  width: calc(50% - 40px);
  margin-left: 40px;
  /* 1～4個目 */
}
@media only screen and (max-width: 40em ) {
  .p-download.-max4 .p-download__item {
    width: 100%;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-download.-max4 .p-download__item {
    width: calc(33.33% - 40px);
  }
}
@media print, screen and (min-width: 80em ) {
  .p-download.-max4 .p-download__item {
    width: calc(25% - 40px);
  }
}
@media print, screen and (min-width: 80em ) {
  .p-download.-max4 .p-download__item:nth-child(-n+4) {
    margin-top: 0;
  }
}

.p-download__text {
  background-color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-download__text {
    padding-top: 18px;
    padding-bottom: 18px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-download__text {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding-top: 31px;
    padding-bottom: 35px;
  }
}

.p-download__img {
  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;
  margin-top: 16px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 48em ) {
  .p-download__img {
    min-height: 229px;
  }
  .browser-is-ie .p-download__img {
    height: 229px;
  }
}
.p-download__img img {
  display: block;
  max-width: 100%;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-download__img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}

.p-download__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #222222;
  text-align: center;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-download__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-download__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-download__head {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-download__head {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-download__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-download__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 24px;
}
.p-download__info li {
  display: block;
  position: relative;
  padding-right: 16px;
  padding-left: 16px;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  font-size: 14px;
  font-size: 0.875rem;
  color: #888888;
}
@media only screen and (max-width: 47.9375em ) {
  .p-download__info li {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-download__info li {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-download__info li:before {
  display: block;
  position: absolute;
  left: 0;
  top: 55%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1px;
  height: 13px;
  background-color: #ccc;
  content: "";
}
.p-download__info li:first-child {
  padding-left: 0;
}
.p-download__info li:first-child:before {
  display: none;
}
.p-download__info li:last-child {
  padding-right: 0;
}
.p-download__info + .p-download__info {
  margin-top: 0;
}

/* Wordpress ビジュアルエディタで使用するスタイル */
.p-product-edit-area {
  /* -----------------------------------------------------------------
  /* テーブル（画像用 2カラム／3カラム）
  ----------------------------------------------------------------- */
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-edit-area > h3 {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area > h3 {
    margin-top: 94px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-edit-area > h3 {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
.p-product-edit-area > h3:first-child {
  margin-top: 0;
}
.p-product-edit-area > h3 > sup {
  font-size: 14px;
}
.p-product-edit-area > h4 {
  font-size: 18px;
  font-size: 1.125rem;
  margin-top: 24px;
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area > h4 {
    margin-top: 40px;
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-edit-area > p {
    margin-top: 25px;
  }
}
.p-product-edit-area > ul {
  margin-top: 16px;
}
@media print, screen and (min-width: 93.75em ) {
  .p-product-edit-area > ul {
    margin-top: 25px;
  }
}
.p-product-edit-area > ul:first-child {
  margin-top: 0;
}
.p-product-edit-area img {
  display: block;
  width: auto;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-edit-area img {
    margin-top: 20px;
    max-width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area img {
    max-width: 100%;
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area img.alignright {
    float: right;
  }
}
.p-product-edit-area video {
  display: block;
  width: auto;
  height: auto;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-edit-area video {
    margin-top: 20px;
    max-width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area video {
    max-width: 100%;
    margin-top: 54px;
  }
}
.p-product-edit-area table {
  width: 100% !important;
  height: auto !important;
}
.p-product-edit-area table tr {
  width: 100%;
  height: auto !important;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-edit-area table tr {
    display: block;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-product-edit-area table td {
  height: auto !important;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-edit-area table td {
    display: block;
    width: 100% !important;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area table td {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    width: auto !important;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area table td {
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area table td:first-child {
    padding-left: 0;
  }
}
.p-product-edit-area .wp-caption {
  width: auto !important;
}
.p-product-edit-area .wp-caption img {
  width: auto !important;
  height: auto !important;
}
@media only screen and (max-width: 47.9375em ) {
  .p-product-edit-area .wp-caption img {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-product-edit-area .wp-caption img {
    margin-top: 18px;
  }
}
.p-product-edit-area .wp-caption-text {
  margin-top: 8px;
  font-size: 14px;
  font-size: 0.875rem;
}

.p-outline {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-outline {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-outline {
    margin-bottom: 94px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline {
    position: absolute;
    z-index: 100;
    left: auto;
    top: 80px;
    width: 77%;
    max-width: 960px;
    margin-left: 16px;
    margin-bottom: 80px;
    -webkit-transform: translate(100%, 0);
            transform: translate(100%, 0);
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline {
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-outline {
    top: 100px;
    margin-left: 100px;
    margin-bottom: 100px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline.-mtop_0 {
    top: 0;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline.-bottom {
    top: auto;
    bottom: 0;
  }
}
.p-outline.-fixed {
  position: fixed;
}
@media print, screen and (min-width: 48em ) {
  .p-outline.-fixed {
    top: 80px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-outline.-fixed {
    top: 100px;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-outline__list.-recruit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 0;
    margin-left: -36px;
  }
}
.p-outline__list.-recruit .p-outline__item {
  position: relative;
}
@media print, screen and (min-width: 48em ) {
  .p-outline__list.-recruit .p-outline__item {
    width: calc(33.3% - 36px);
    margin-left: 36px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-outline__list.-recruit .p-outline__item > a {
    margin-top: 16px;
    font-size: 14px;
    font-size: 0.875rem;
    padding-top: 4px;
    padding-bottom: 12px;
    padding-left: 0;
    border-width: 0 0 1px 0;
    font-weight: normal;
    color: #222222;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-outline__list.-recruit .p-outline__item > a {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-outline__list.-recruit .p-outline__item > a {
    padding-left: 0px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-outline__list.-recruit .p-outline__item:after {
  display: inline-block;
  position: absolute;
  width: 5px;
  height: 10px;
  top: 20px;
  right: 12px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_bottom_down.svg);
}
@media print, screen and (min-width: 61.25em ) {
  .p-outline__list.-recruit .p-outline__item:hover > a {
    color: #aa8f7b;
  }
}
@media print, screen and (min-width: 61.25em ) and (min-width: 61.25em ) {
  .p-outline__list.-recruit .p-outline__item:hover:after {
    content: url(/common/svg/arrow_bottom_down_gold.svg);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-outline__list.-recruit {
    top: -1px;
  }
}

.p-outline__head {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.1em;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-outline__head {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-outline__head {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-outline__head {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.p-outline__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -20px;
}
@media print, screen and (min-width: 80em ) {
  .p-outline__list {
    display: block;
    margin-top: 22px;
    margin-left: 0;
  }
}

.p-outline__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-left: 20px;
}
@media only screen and (max-width: 40em ) {
  .p-outline__item {
    width: calc(50% - 20px);
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-outline__item {
    width: calc(33.33% - 20px);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-outline__item {
    width: calc(25% - 20px);
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline__item {
    margin-left: 0;
  }
}
.p-outline__item > a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  margin-top: 16px;
  border-style: solid;
  border-width: 0 0 1px 0;
  border-color: #dddddd;
  padding-top: 4px;
  padding-bottom: 6px;
  font-size: 14px;
  font-size: 0.875rem;
  color: #222222;
  text-decoration: none;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 80em ) {
  .p-outline__item > a {
    margin-top: 0;
    padding-top: 7px;
    padding-bottom: 8px;
    padding-left: 10px;
    border-width: 0 0 0 2px;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-weight: bold;
    color: rgba(34, 34, 34, 0.4);
  }
}
@media only screen and (min-width: 80em ) and (max-width: 47.9375em ) {
  .p-outline__item > a {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 80em ) and (min-width: 48em ) {
  .p-outline__item > a {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-outline__item > a {
    padding-left: 20px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline__item > a.-active {
    border-color: #aa8f7b;
    color: #aa8f7b;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline__item > a:hover {
    border-color: #aa8f7b;
    color: #aa8f7b;
  }
}
.p-outline__item svg {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 8px;
  height: 6px;
}
@media print, screen and (min-width: 80em ) {
  .p-outline__item svg {
    display: none;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-outline__item:hover {
    border-color: #aa8f7b;
  }
}

/* コンテナ */
.p-outline-container {
  position: relative;
}

.p-outline-ec {
  display: none;
  width: 110px;
  padding-top: 3px;
  padding-bottom: 7px;
  padding-right: 30px;
  padding-left: 30px;
  line-height: 1.75;
  background: #aa8f7b;
  margin-top: 22px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  position: relative;
  color: #fff;
  font-weight: bold;
  font-size: 15px;
  font-size: 0.9375rem;
  text-decoration: none;
}
@media print, screen and (min-width: 80em ) {
  .p-outline-ec {
    display: block;
  }
}
.p-outline-ec span {
  position: relative;
  z-index: 10;
}
.p-outline-ec span:after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 22px;
  position: relative;
  top: 6px;
  background-image: url(/common/svg/icon_cart.svg);
  background-repeat: no-repeat;
  background-size: contain;
  left: 1px;
}
.browser-is-ff .p-outline-ec span {
  display: block ruby;
}
.p-outline-ec:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #222222;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-outline-ec:hover:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.p-img-anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: -20px;
}

.p-img-anchor__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #f7f7f7;
  width: calc(50% - 20px);
  margin-left: 20px;
}
.p-img-anchor__item > a {
  display: block;
  text-decoration: none;
  color: #222222;
}
@media only screen and (max-width: 47.9375em ) {
  .p-img-anchor__item > a {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-img-anchor__item > a {
    padding-top: 44px;
    padding-bottom: 50px;
    padding-right: 10px;
    padding-left: 10px;
  }
}

.p-img-anchor__en {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.1em;
  color: #aa8f7b;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-img-anchor__en {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-img-anchor__en {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.p-img-anchor__title {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-img-anchor__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-img-anchor__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-img-anchor__title {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-img-anchor__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-img-anchor__title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-img-anchor__title br {
    display: none;
  }
}

.p-img-anchor__img {
  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;
  margin-top: 13px;
}
.p-img-anchor__img img {
  display: block;
  height: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-img-anchor__img img {
    height: 130px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-img-anchor__img img {
    height: 260px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-img-anchor__img img {
    -webkit-transform: scale(1.085);
            transform: scale(1.085);
  }
}

.p-img-anchor__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 16px;
}
.p-img-anchor__icon svg {
  width: 18px;
  height: 9px;
  fill: #aa8f7b;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-img-anchor__icon svg {
    -webkit-transform: translate(0, 6px);
            transform: translate(0, 6px);
  }
}

.p-logo-cross {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-logo-cross > li {
  position: relative;
  width: 41.6666%;
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
}
.p-logo-cross > li:before {
  content: "";
  display: block;
  padding-top: 60%;
}
.p-logo-cross > li.p-logo-cross__icon {
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  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 only screen and (max-width: 47.9375em ) {
  .p-logo-cross > li.p-logo-cross__icon svg {
    width: 20px;
    height: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-logo-cross > li.p-logo-cross__icon svg {
    width: 30px;
    height: 30px;
  }
}

.p-logo-cross__image {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  max-width: 80%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-logo-cross__image.-sharp {
    max-width: 60%;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .p-carousel-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-carousel-column__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.p-carousel-column__item.-carousel {
  margin-top: 30px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-carousel-column__item.-carousel {
    margin-top: 0;
    margin-left: 80px;
    padding-right: 55px;
    padding-left: 55px;
  }
}

.p-tag {
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 120px;
  min-height: 30px;
  padding: 2px 16px;
}
@media print, screen and (min-width: 48em ) {
  .p-tag {
    width: 180px;
    min-height: 36px;
  }
}
.p-tag.-size_s {
  width: 80px;
  min-height: 22px;
  padding: 1px 8px;
}
.p-tag.-hyo_on_m2 {
  border-color: #4d4548;
  color: #4d4548;
}
.p-tag.-hyo_on_m5 {
  border-color: #383442;
  color: #383442;
}
.p-tag.-zero_advance {
  border-color: #a7333c;
  color: #a7333c;
}
.p-tag.-zero_class {
  border-color: #22303a;
  color: #22303a;
}
.p-tag.-zero_chilled {
  border-color: #325046;
  color: #325046;
}
.p-tag.-furniel {
  border-color: #8d5a50;
  color: #8d5a50;
}
.p-tag.-pro_class {
  border-color: #b98d72;
  color: #b98d72;
}
.p-tag.-white {
  border-color: #fff;
  color: #fff;
}
@media (hover: hover) {
  .p-tag-hover:hover .p-tag {
    border-color: #fff;
    color: #fff;
  }
}

.p-tag__inner {
  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;
}

.p-tag__text {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-tag__text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-tag__text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-tag__text {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-tag.-size_s .p-tag__text {
  font-size: 12px;
  font-size: 0.75rem;
}

.p-video {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9のアスペクト比 (9 / 16 = 0.5625) */
  height: 0;
  overflow: hidden;
}

.p-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.p-app-download {
  background: #fff;
  padding: 40px 56px;
  margin: 100px 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download {
    padding: 20px 28px;
    margin: 50px 0;
  }
}
.p-app-download .p-app-download__inner {
  max-width: 960px;
  margin: 0 auto;
}
.p-app-download .p-app-download__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download .p-app-download__heading {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 15px;
  }
}
.p-app-download .p-app-download__heading img {
  margin: 0;
}
.p-app-download .p-app-download__heading .p-app-download__lead {
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download .p-app-download__heading .p-app-download__lead {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-app-download .p-app-download__platforms {
  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;
  gap: 58px;
  margin-top: 43px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download .p-app-download__platforms {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
}
.p-app-download .p-app-download__platforms .p-app-download__platform {
  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;
  gap: 6px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download .p-app-download__platforms .p-app-download__platform {
    width: 100%;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    gap: 16px;
  }
}
.p-app-download .p-app-download__platforms .p-app-download__platform img {
  margin: 0;
}
.p-app-download .p-app-download__platforms .p-app-download__platform .p-app-download__badge {
  padding: 0 15px;
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download .p-app-download__platforms .p-app-download__platform .p-app-download__badge {
    padding: 0;
  }
}
.p-app-download .p-app-download__platforms .p-app-download__platform .p-app-download__label {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-app-download .p-app-download__platforms .p-app-download__platform .p-app-download__label {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.p-app-download .p-app-download__note {
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 32px;
}

.c-section-3 .p-spec-table.-product th {
  margin: 0 0 24px;
}

.p-anchor {
  margin-top: 56px;
}
@media only screen and (max-width: 61.1875em ) {
  .p-anchor {
    margin-top: 30px;
  }
}
.p-anchor li {
  position: relative;
}
.p-anchor li::after {
  position: absolute;
  content: "";
  right: 2px;
  top: 40%;
  display: inline-block;
  vertical-align: middle;
  color: #cccccc;
  line-height: 1;
  width: 8px;
  height: 8px;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform: translate(0, -50%) rotate(135deg);
          transform: translate(0, -50%) rotate(135deg);
}
.p-anchor li:not(:last-child) {
  margin-bottom: 8px;
}
.p-anchor li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 21px;
  padding-right: 26px;
  padding-bottom: 8px;
  text-decoration: none;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 61.1875em ) {
  .p-anchor li a {
    gap: 12px;
    padding-right: 18px;
  }
}
@media (hover: hover) {
  .p-anchor li a:hover::after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
.p-anchor li a::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  background-color: #d9d9d9;
  width: 100%;
  height: 1px;
}
.p-anchor li a::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  background-color: #aa8f7b;
  width: 100%;
  height: 1px;
  -webkit-transform: translate(-110%, 0);
          transform: translate(-110%, 0);
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.p-anchor li a span:first-child {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 61.1875em ) {
  .p-anchor li a span:first-child {
    font-size: 14px;
  }
}
.p-anchor li a span:last-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: #222;
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 61.1875em ) {
  .p-anchor li a span:last-child {
    font-size: 16px;
    line-height: 1.6;
  }
}

.p-number-anchor__item {
  margin-top: 2px;
}
.p-number-anchor__item:first-child {
  margin-top: 0;
}
.p-number-anchor__item a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  text-decoration: none;
  color: #222222;
  background-color: #fff;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__item a {
    padding-top: 18px;
    padding-bottom: 19px;
    padding-left: 20px;
    padding-right: 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__item a {
    padding-top: 18px;
    padding-bottom: 19px;
    padding-left: 37px;
    padding-right: 80px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-number-anchor__item a:hover {
    background-color: #aa8f7b;
  }
}

.p-number-anchor__num {
  display: block;
  position: relative;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  line-height: 1;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__num {
    width: 45px;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__num {
    top: -3px;
    width: 64px;
    font-size: 48px;
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-number-anchor__num {
    color: #fff;
  }
}

.p-number-anchor__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__text {
    margin-left: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__text {
    margin-left: 30px;
  }
}

.p-number-anchor__en {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__en {
    font-size: 10px;
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__en {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-number-anchor__en {
    color: #fff;
  }
}

.p-number-anchor__title {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-number-anchor__title {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-number-anchor__title {
    color: #fff;
  }
}

.p-number-anchor__icon {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__icon {
    right: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__icon {
    right: 40px;
  }
}
.p-number-anchor__icon svg {
  fill: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-number-anchor__icon svg {
    width: 14px;
    height: 7px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-number-anchor__icon svg {
    width: 18px;
    height: 9px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-number-anchor__icon svg {
    fill: #fff;
  }
}

@media print, screen and (min-width: 80em ) {
  .p-special-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-special-column__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-column__item {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-column__item {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-column__item {
    margin-top: 80px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-special-column__item {
    width: 50%;
    margin-top: 0;
  }
}
.p-special-column__item:first-child {
  margin-top: 0;
}
@media print, screen and (min-width: 80em ) {
  .p-special-column__item:first-child {
    padding-right: 100px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 80em ) {
  .p-special-column.-restaurant .p-special-column__item:first-child {
    width: 45%;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-special-column.-restaurant .p-special-column__item:last-child {
    width: 55%;
  }
}

.p-special-heading {
  display: block;
  width: 100%;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading.-size_l {
    font-size: 34px;
    font-size: 2.125rem;
  }
}

.p-special-heading__main {
  display: block;
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading__main {
    line-height: 1.6;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading__main.-lh_s {
    line-height: 1.3;
  }
}

.p-special-heading__sub {
  display: block;
  position: relative;
}

.p-special-heading__shadow {
  position: absolute;
  z-index: 10;
  left: 0;
  width: 100%;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #ededed;
  white-space: nowrap;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading__shadow {
    top: 0;
    line-height: 1;
    font-size: 60px;
    font-size: 3.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading__shadow {
    top: -20px;
    line-height: 92px;
    font-size: 92px;
    font-size: 5.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading__shadow {
    top: -10px;
    font-size: 124px;
    font-size: 7.75rem;
    letter-spacing: 0.013em;
  }
}
.p-special-heading__shadow.-light {
  color: #f7f7f7;
}
.p-special-heading__shadow.-gray {
  color: #eeeeee;
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading__shadow.-fs_l {
    font-size: 102px;
    font-size: 6.375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading__shadow.-fs_l {
    font-size: 134px;
    font-size: 8.375rem;
  }
}

.p-special-heading__eng {
  display: block;
  width: 100%;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.1em;
  text-align: center;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading__eng {
    margin-bottom: 5px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading__eng {
    margin-bottom: 13px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading__eng {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.p-special-heading__check {
  display: block;
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading__check {
    margin-bottom: 5px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading__check {
    margin-bottom: 13px;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading.-shadow .p-special-heading__sub {
    height: 64px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading.-shadow .p-special-heading__sub {
    height: 72px;
    margin-bottom: 14px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading.-shadow .p-special-heading__sub {
    height: 96px;
    margin-bottom: 24px;
  }
}
.p-special-heading.-shadow .p-special-heading__sub.-mb_s {
  margin-bottom: 14px;
}
.p-special-heading.-shadow .p-special-heading__eng {
  position: absolute;
  z-index: 20;
  left: 0;
  bottom: 3px;
  margin-bottom: 0;
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading.-shadow .p-special-heading__eng.-mb_1 {
    bottom: -12px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading.-shadow .p-special-heading__eng.-mb_1 {
    bottom: 0px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading.-shadow .p-special-heading__eng.-mb_0 {
    bottom: 8px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading.-shadow .p-special-heading__eng.-mb_0 {
    bottom: 10px;
  }
}
.p-special-heading.-shadow .p-special-heading__check {
  position: absolute;
  z-index: 20;
  left: 0;
  margin-bottom: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading.-shadow .p-special-heading__check {
    bottom: 5px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading.-shadow .p-special-heading__check {
    bottom: 3px;
  }
}
.p-special-heading.-left {
  text-align: left;
}
.p-special-heading.-left .p-special-heading__shadow {
  text-align: left;
}
@media print, screen and (min-width: 48em ) {
  .p-special-heading.-left .p-special-heading__shadow {
    left: -8px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-heading.-left .p-special-heading__shadow {
    left: -11px;
  }
}
.p-special-heading.-left .p-special-heading__eng,
.p-special-heading.-left .p-special-heading__check {
  text-align: left;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading.-sp_left {
    text-align: left;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-heading.-sp_left .p-special-heading__eng,
  .p-special-heading.-sp_left .p-special-heading__shadow,
  .p-special-heading.-sp_left .p-special-heading__check {
    text-align: left;
  }
}

.p-check {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-check {
    padding-left: 34px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-check {
    padding-left: 34px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-check {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-check:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 15px;
  content: url(/common/svg/icon_check_gold.svg);
}

@media only screen and (max-width: 47.9375em ) {
  .p-check-list > li {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-check-list > li {
    margin-top: 10px;
  }
}
.p-check-list > li:first-child {
  margin-top: 0;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-check.-special {
  display: block;
  padding-left: 0;
}
@media print, screen and (min-width: 93.75em ) {
  .p-check.-special {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.p-check.-special:before {
  display: none;
}

.p-strong {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #aa8f7b;
  letter-spacing: 0.08em;
  margin-right: 5px;
  margin-left: 5px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-strong {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-strong {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-strong > span {
  position: relative;
}
.p-strong > span:before {
  display: block;
  position: absolute;
  top: -2px;
  left: 50%;
  -webkit-transform: translate(-70%, 0);
          transform: translate(-70%, 0);
  width: 3px;
  height: 3px;
  background-color: #aa8f7b;
  border-radius: 50%;
  content: "";
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-strong.-first {
  margin-left: 0;
}

.p-section-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-section-column__item {
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item {
    width: 100%;
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .p-section-column__item .c-image {
    max-height: 334px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item:first-child {
    margin-top: 0;
  }
}
.p-section-column__item.-disabled {
  pointer-events: none;
}

.p-section-column__item--tal {
  text-align: left;
}

.p-section-column__head {
  margin-top: 30px;
}

@media print, screen and (min-width: 48em ) {
  .p-section-column--max3 {
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-column--max3 {
    margin-left: -70px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-section-column--max3 .p-section-column__item {
    width: calc(33.33% - 40px);
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-column--max3 .p-section-column__item {
    width: calc(33.33% - 70px);
    margin-left: 70px;
  }
}
.p-section-column--max3 .p-section-column__item .c-image img {
  width: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-section-column--max3 .p-section-column__item:hover .c-image img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-section-column--max3 .p-section-column__item.-tr_none:hover .c-image img {
    -webkit-transform: none;
            transform: none;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-section-column--max4 {
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-column--max4 {
    margin-left: -70px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-section-column--max4 .p-section-column__item {
    width: calc(25% - 40px);
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-column--max4 .p-section-column__item {
    width: calc(25% - 40px);
    margin-left: 40px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-section-column--max4.-recruit {
    margin-left: -20px;
    margin-top: -20px;
  }
}
.p-section-column--max4.-recruit .p-section-column__item {
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column--max4.-recruit .p-section-column__item {
    width: calc(50% - 20px);
    margin-top: 20px;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-section-column--max4.-recruit .p-section-column__item:hover .c-image img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.p-section-column--max4.-recruit .c-image img {
  width: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}

@media print, screen and (min-width: 48em ) {
  .p-section-column--max4.-recruit,
  .p-section-column--max3.-recruit {
    margin-top: -40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-column--max4.-recruit,
  .p-section-column--max3.-recruit {
    margin-top: -54px;
  }
}
.p-section-column--max4.-recruit .p-section-column__item,
.p-section-column--max3.-recruit .p-section-column__item {
  text-decoration: none;
  color: #222222;
}
@media print, screen and (min-width: 48em ) {
  .p-section-column--max4.-recruit .p-section-column__item,
  .p-section-column--max3.-recruit .p-section-column__item {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-section-column--max4.-recruit .p-section-column__item,
  .p-section-column--max3.-recruit .p-section-column__item {
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-section-column--max4.-recruit .p-section-column__item:hover .p-section-column__head:after,
  .p-section-column--max3.-recruit .p-section-column__item:hover .p-section-column__head:after {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column--max4.-recruit .p-section-column__item .c-image,
  .p-section-column--max3.-recruit .p-section-column__item .c-image {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column--max4.-recruit .p-section-column__item .c-image img,
  .p-section-column--max3.-recruit .p-section-column__item .c-image img {
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column--max4.-recruit .p-section-column__head,
  .p-section-column--max3.-recruit .p-section-column__head {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-section-column--max4.-recruit .p-section-column__head,
  .p-section-column--max3.-recruit .p-section-column__head {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-section-column--max4.-recruit .p-section-column__head:after,
.p-section-column--max3.-recruit .p-section-column__head:after {
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 12px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_darkgray.svg);
}

@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid {
    display: -ms-grid;
    display: grid;
    grid: "img head" auto "img text" 1fr/90px 1fr;
    gap: 0px 20px;
    padding-top: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid #eeeeee;
    margin-top: 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid:first-of-type {
    border-top: 1px solid #eeeeee;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid .c-image {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
    grid-area: img;
    width: 90px;
    height: 90px;
    overflow: hidden;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid .c-image img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid .p-section-column__head {
    grid-area: head;
    margin-top: 0;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid .p-section-column__head br {
    display: none;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-section-column__item.-sp_grid .c-sentence, .p-section-column__item.-sp_grid .p-link-panel__desc, .p-section-column__item.-sp_grid .p-product-edit-area > p {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    grid-area: text;
    margin-top: 6px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-link-panel-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

@media only screen and (max-width: 40em ) {
  .p-link-panel-container--max3 .p-link-panel {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-link-panel-container--max3 .p-link-panel {
    width: 33.33%;
  }
}

@media only screen and (max-width: 40em ) {
  .p-link-panel-container--max2 .p-link-panel {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-link-panel-container--max2 .p-link-panel {
    width: 50%;
  }
}

.p-link-panel > a {
  display: block;
  height: 100%;
  background-color: #fff;
  color: #222222;
  text-decoration: none;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-link-panel > a:hover {
    background-color: #aa8f7b;
  }
}
.p-link-panel.-gray > a {
  background-color: #f7f7f7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-link-panel.-gray > a:hover {
    background-color: #aa8f7b;
  }
}

.p-link-panel__img {
  position: relative;
  overflow: hidden;
}
.p-link-panel__img img {
  display: block;
  width: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-link-panel__img img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.p-link-panel__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-link-panel__text {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-link-panel__text {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 30px;
    padding-left: 30px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-link-panel__text {
    color: #fff;
  }
}

.p-link-panel__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em ) {
  .p-link-panel__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-link-panel__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-link-panel__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-link-panel__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-link-panel__desc {
  margin-top: 12px;
}

.p-link-panel__link {
  margin-top: 5px;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-link-panel__link {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-link-panel__link {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-link-panel__link {
    color: #fff;
  }
}

.p-link-panel.-disabled a {
  pointer-events: none;
}

.p-special-layout {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* 左：テキスト　右：画像 */
  /* 左：テキスト　右：画像 */
  /* テキスト上寄せ */
  /* 縦長の画像（テキストは自動的に上揃え） */
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-layout {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-layout {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 51.42% 7.16% 42.42%;
        grid-template: "specialLayoutImg specialLayoutHead" auto "specialLayoutImg specialLayoutDesc" 1fr/51.42% 42.42%;
    gap: 0 7.16%;
    margin-top: 120px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-big-img {
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 54.28% 4.28% 41.44%;
        grid-template: "specialLayoutImg specialLayoutHead" auto "specialLayoutImg specialLayoutDesc" auto/54.28% 41.44%;
    gap: 0 4.28%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-reverse {
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 42.42% 7.16% 51.42%;
        grid-template: "specialLayoutHead-rv specialLayoutImg-rv" auto "specialLayoutDesc-rv specialLayoutImg-rv" auto/42.42% 51.42%;
    gap: 0 7.16%;
  }
  .p-special-layout.-reverse .p-special-layout__img {
    grid-area: specialLayoutImg-rv;
  }
  .p-special-layout.-reverse .p-special-layout__head {
    grid-area: specialLayoutHead-rv;
  }
  .p-special-layout.-reverse .p-special-layout__desc {
    grid-area: specialLayoutDesc-rv;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-reverse .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-reverse .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-reverse .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-reverse.-big-img {
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 41.44% 4.28% 54.28%;
        grid-template: "specialLayoutHead-rv specialLayoutImg-rv" auto "specialLayoutDesc-rv specialLayoutImg-rv" auto/41.44% 54.28%;
    gap: 0 4.28%;
  }
  .p-special-layout.-reverse.-big-img > .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-reverse.-big-img > .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-reverse.-big-img > .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-reverse-overlap-image {
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 42.42% 6.16% 51.42%;
        grid-template: "specialLayoutHead-rv-ov-img specialLayoutImg-rv-ov-img" auto "specialLayoutDesc-rv-ov-img specialLayoutImg-rv-ov-img" auto/42.42% 51.42%;
    gap: 0 6.16%;
  }
  .p-special-layout.-reverse-overlap-image .p-special-layout__img {
    grid-area: specialLayoutImg-rv-ov-img;
  }
  .p-special-layout.-reverse-overlap-image .p-special-layout__head {
    grid-area: specialLayoutHead-rv-ov-img;
  }
  .p-special-layout.-reverse-overlap-image .p-special-layout__desc {
    grid-area: specialLayoutDesc-rv-ov-img;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-reverse-overlap-image .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-reverse-overlap-image .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-reverse-overlap-image .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-reverse-overlap-image.-big-img {
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 41.44% 4.28% 54.28%;
        grid-template: "specialLayoutHead-rv-ov-img specialLayoutImg-rv-ov-img" auto "specialLayoutDesc-rv-ov-img specialLayoutImg-rv-ov-img" auto/41.44% 54.28%;
    gap: 0 4.28%;
  }
  .p-special-layout.-reverse-overlap-image.-big-img > .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-reverse-overlap-image.-big-img > .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-reverse-overlap-image.-big-img > .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-overlap-image {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 51.42% 6.16% 42.42%;
        grid-template: "specialLayoutImg-ov-img specialLayoutHead-ov-img" auto "specialLayoutImg-ov-img specialLayoutDesc-ov-img" auto/51.42% 42.42%;
    gap: 0 6.16%;
    margin-top: 120px;
  }
  .p-special-layout.-overlap-image .p-special-layout__img {
    grid-area: specialLayoutImg-ov-img;
  }
  .p-special-layout.-overlap-image .p-special-layout__head {
    grid-area: specialLayoutHead-ov-img;
  }
  .p-special-layout.-overlap-image .p-special-layout__desc {
    grid-area: specialLayoutDesc-ov-img;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-overlap-image .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout.-overlap-image .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout.-overlap-image .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
.p-special-layout.-vertical_top {
  /* 左：テキスト　右：画像 */
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-vertical_top {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 51.42% 7.16% 42.42%;
        grid-template: "specialLayoutImg-vt specialLayoutHead-vt" auto "specialLayoutImg-vt specialLayoutDesc-vt" 1fr/51.42% 42.42%;
    gap: 0 7.16%;
  }
  .p-special-layout.-vertical_top .p-special-layout__img {
    grid-area: specialLayoutImg-vt;
  }
  .p-special-layout.-vertical_top .p-special-layout__head {
    grid-area: specialLayoutHead-vt;
  }
  .p-special-layout.-vertical_top .p-special-layout__desc {
    grid-area: specialLayoutDesc-vt;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-vertical_top .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout.-vertical_top .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout.-vertical_top .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-vertical_top.-reverse {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 42.42% 7.16% 51.42%;
        grid-template: "specialLayoutHead-vt-rv specialLayoutImg-vt-rv" auto "specialLayoutDesc-vt-rv specialLayoutImg-vt-rv" 1fr/42.42% 51.42%;
    gap: 0 7.16%;
  }
  .p-special-layout.-vertical_top.-reverse .p-special-layout__img {
    grid-area: specialLayoutImg-vt-rv;
  }
  .p-special-layout.-vertical_top.-reverse .p-special-layout__head {
    grid-area: specialLayoutHead-vt-rv;
  }
  .p-special-layout.-vertical_top.-reverse .p-special-layout__desc {
    grid-area: specialLayoutDesc-vt-rv;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-vertical_top.-reverse .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-vertical_top.-reverse .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-vertical_top.-reverse .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
.p-special-layout.-vertical_img {
  /* 左：テキスト　右：画像 */
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-vertical_img {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 38.57% 7.16% 54.27%;
        grid-template: "specialLayoutImg-vi specialLayoutHead-vi" auto "specialLayoutImg-vi specialLayoutDesc-vi" 1fr/38.57% 54.27%;
    gap: 0 7.16%;
  }
  .p-special-layout.-vertical_img .p-special-layout__img {
    grid-area: specialLayoutImg-vi;
  }
  .p-special-layout.-vertical_img .p-special-layout__head {
    grid-area: specialLayoutHead-vi;
  }
  .p-special-layout.-vertical_img .p-special-layout__desc {
    grid-area: specialLayoutDesc-vi;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-vertical_img .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout.-vertical_img .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout.-vertical_img .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-vertical_img .p-special-layout__img .p-special-layout__inner {
    margin-top: -140px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-layout.-vertical_img .p-special-layout__img .p-special-layout__inner {
    margin-top: -180px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-vertical_img.-reverse {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 54.27% 7.16% 38.57%;
        grid-template: "specialLayoutHead-vi-rv specialLayoutImg-vi-rv" auto "specialLayoutDesc-vi-rv specialLayoutImg-vi-rv" 1fr/54.27% 38.57%;
    gap: 0 7.16%;
  }
  .p-special-layout.-vertical_img.-reverse .p-special-layout__img {
    grid-area: specialLayoutImg-vi-rv;
  }
  .p-special-layout.-vertical_img.-reverse .p-special-layout__head {
    grid-area: specialLayoutHead-vi-rv;
  }
  .p-special-layout.-vertical_img.-reverse .p-special-layout__desc {
    grid-area: specialLayoutDesc-vi-rv;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout.-vertical_img.-reverse .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-vertical_img.-reverse .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-vertical_img.-reverse .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
.p-special-layout:first-child {
  margin-top: 0;
}

.p-special-layout__img {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-layout__img {
    width: 100%;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-layout__img {
    width: 100%;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout__img {
    grid-area: specialLayoutImg;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 0;
  }
}
.p-special-layout__img .p-special-layout__inner {
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.p-special-layout__img .p-special-layout__inner.-shadow_none {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.p-special-layout__img img {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}
.browser-is-ie .p-special-layout__img img {
  max-height: 513px;
}
.browser-is-ie .p-special-layout__img.-l img {
  max-height: 950px;
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .p-special-layout__img.-l img {
    max-height: 513px;
  }
}
.browser-is-ie .p-special-layout__img.-s img {
  max-height: none;
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .p-special-layout__img.-s img {
    max-height: 400px;
  }
}

/* 見出し */
.p-special-layout__head {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-layout__head {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-layout__head {
    width: 100%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout__head {
    grid-area: specialLayoutHead;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout__head.-block {
    display: block;
  }
}

/* 文章 */
.p-special-layout__desc {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-layout__desc {
    width: 100%;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-layout__desc {
    width: 100%;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout__desc {
    grid-area: specialLayoutDesc;
    width: auto;
    margin-top: 16px;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout.-big-img > .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout.-big-img > .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-big-img > .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-layout__desc {
    margin-top: 26px;
  }
}

/* ボタン */
.p-special-layout__button {
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-special-layout__button {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-special-layout__button {
    max-width: 320px;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-layout__button {
    margin-top: 32px;
  }
}

/* -----------------------------------------------------------------
/* 以下採用などで使用
----------------------------------------------------------------- */
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-recruit {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 45% 5% 47%;
        grid-template: "specialLayoutImg specialLayoutHead" auto "specialLayoutImg specialLayoutDesc" 1fr/45% 47%;
    gap: 0 5%;
  }
  .p-special-layout.-recruit > .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout.-recruit > .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout.-recruit > .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
.p-special-layout.-recruit .p-special-layout__img {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.p-special-layout.-recruit .p-special-heading__shadow {
  top: 0;
}
@media print, screen and (min-width: 93.75em ) {
  .p-special-layout.-recruit .p-special-layout__desc {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-recruit.-reverse {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 47% 5% 45%;
        grid-template: "specialLayoutHead-vt-rv specialLayoutImg-vt-rv" auto "specialLayoutDesc-vt-rv specialLayoutImg-vt-rv" 1fr/47% 45%;
    gap: 0 5%;
  }
  .p-special-layout.-recruit.-reverse > .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .p-special-layout.-recruit.-reverse > .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-special-layout.-recruit.-reverse > .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .p-special-layout.-recruit-message {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 38% 1.8% 60.2%;
        grid-template: "specialLayoutImg specialLayoutHead" auto "specialLayoutImg specialLayoutDesc" 1fr/38% 60.2%;
    gap: 0 1.8%;
  }
  .p-special-layout.-recruit-message > .p-special-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-special-layout.-recruit-message > .p-special-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-special-layout.-recruit-message > .p-special-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}

.p-message-president {
  position: relative;
  width: 100%;
  max-width: 800px;
  margin-top: 54px;
  margin-right: auto;
  margin-left: auto;
}

.p-message-president__img {
  max-width: 420px;
}
.p-message-president__img img {
  display: block;
  max-width: 100%;
}

.p-message-president__text {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
}

.p-message {
  max-width: 1210px;
  margin-right: auto;
  margin-left: auto;
}
@media print, screen and (min-width: 61.25em ) {
  .p-message {
    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;
    margin-top: 57px;
    padding-bottom: 100px;
    padding-right: 5.3333%;
    padding-left: 5.3333%;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .p-message__img {
    width: 37%;
    max-width: 450px;
  }
}
.p-message__img img {
  display: block;
  width: 100%;
}

.p-message__text {
  margin-top: 24px;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-message__text {
    width: 56%;
    max-width: 680px;
    margin-top: -3px;
    padding-right: 0;
    padding-left: 0;
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-message__sentence {
  text-align: justify;
  margin-top: 30px;
}
.p-message__sentence:first-child {
  margin-top: 0;
}

.p-message__sign {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 38px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-message__sign {
    margin-top: 44px;
  }
}

.p-message__name {
  text-align: right;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 61.25em ) {
  .p-message__name {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-message__sign.-recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 38px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media print, screen and (min-width: 61.25em ) {
  .p-message__sign.-recruit {
    margin-top: 54px;
  }
}
.p-message__sign.-recruit span {
  font-size: 15px;
  font-size: 0.9375rem;
}

.p-temp-table {
  width: 100%;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  background-color: #fff;
}
.p-temp-table th,
.p-temp-table td {
  display: block;
  width: 50%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table th,
  .p-temp-table td {
    display: table-cell;
    width: auto;
    border-style: solid;
    border-width: 0 1px 1px 0;
    border-color: #eeeeee;
    vertical-align: top;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table th:last-child,
  .p-temp-table td:last-child {
    border-width: 0 0 1px 0;
  }
}
.p-temp-table thead {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table thead {
    display: table-header-group;
  }
}
.p-temp-table thead th {
  padding-top: 14px;
  padding-bottom: 14px;
  text-align: center;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody th {
    padding-top: 26px;
    padding-bottom: 26px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody td {
    padding-top: 26px;
    padding-bottom: 26px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media only screen and (min-width: 61.25em ) and (max-width: 47.9375em ) {
  .p-temp-table tbody td li {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) and (min-width: 48em ) {
  .p-temp-table tbody td li {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody td.-icon_cell {
    width: 42.7%;
    padding-right: 26px;
    padding-left: 26px;
  }
}
.p-temp-table tbody tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 20px;
  padding-bottom: 28px;
  padding-right: 20px;
  padding-left: 20px;
  border-top: solid 1px #eee;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody tr {
    display: table-row;
    padding: 0;
    border-top: none;
  }
}
.p-temp-table tbody tr:first-child {
  border-top: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody tr:last-child th,
  .p-temp-table tbody tr:last-child td {
    border-width: 0 1px 0 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody tr:last-child th:last-child,
  .p-temp-table tbody tr:last-child td:last-child {
    border-width: 0;
  }
}
.p-temp-table tbody tr td:nth-child(3), .p-temp-table tbody tr td:nth-child(4) {
  margin-top: 16px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table tbody tr td:nth-child(3), .p-temp-table tbody tr td:nth-child(4) {
    margin-top: 0;
  }
}

.p-temp-table__name {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 900;
  white-space: nowrap;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__name {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__name {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
.p-temp-table__name span {
  font-weight: normal;
  vertical-align: top;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__name span {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__name span {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-temp-table__temp {
  position: relative;
  top: 0.4em;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__temp {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__temp {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__temp {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__temp {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table__temp {
    top: 0.2em;
  }
}
.p-temp-table__temp span {
  position: relative;
}
.p-temp-table__temp span.-num1 {
  margin-right: 6px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table__temp span.-num1 {
    display: none;
  }
}
.p-temp-table__temp span.-num2 {
  top: 0.02em;
  margin-right: 1px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__temp span.-num2 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__temp span.-num2 {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table__temp span.-num2 {
    margin-right: 3px;
  }
}
.p-temp-table__temp span.-num3 {
  top: -0.1em;
  margin-left: 5px;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__temp span.-num3 {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__temp span.-num3 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table__temp span.-num3 {
    margin-left: 7px;
  }
}
.p-temp-table__temp span.-num4 {
  top: 0.02em;
  margin-right: 1px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__temp span.-num4 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__temp span.-num4 {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-temp-table__temp span.-num4 {
    margin: 0 3px 0 7px;
  }
}

.p-temp-table__icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-temp-table__icons li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 25%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-temp-table__icons li {
    height: 60px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-temp-table__icons li {
    height: 116px;
  }
}
.p-temp-table__icons img {
  display: block;
  width: auto;
  height: 100%;
}

.p-callout {
  position: relative;
}

@media print, screen and (min-width: 48em ) {
  .p-callout__inner {
    padding: 55px 100px 64px;
  }
}

.p-callout__layout {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 17px 1fr;
  -ms-grid-columns: 1fr;
      grid-template: "image" auto "text" 1fr/1fr;
  gap: 17px;
}
@media print, screen and (min-width: 48em ) {
  .p-callout__layout {
    -ms-grid-rows: auto;
    -ms-grid-columns: 4fr 100px 5fr;
        grid-template: "text image" auto/4fr 5fr;
    gap: 100px;
  }
  .p-page-visual.-recruit .p-page-visual__text {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-section-column__item.-sp_grid .c-sentence, .p-section-column__item.-sp_grid .p-link-panel__desc, .p-section-column__item.-sp_grid .p-product-edit-area > p {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

.p-callout__col.-image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
  margin: 0 -5.3333%;
}

.p-point-block > .p-callout__col.-image {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
@media print, screen and (min-width: 48em ) {
  .p-callout__col.-image {
    margin: 0;
  }
}
.p-callout__col.-text {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: text;
  position: relative;
  z-index: 1;
}
.p-cta-banner__layout > .p-callout__col.-text {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.p-callout__row + .p-callout__row.-desc {
  margin-top: 12px;
}
@media print, screen and (min-width: 48em ) {
  .p-callout__row + .p-callout__row.-desc {
    margin-top: 23px;
  }
}
.p-callout__row + .p-callout__row.-button {
  margin-top: 26px;
}
@media print, screen and (min-width: 48em ) {
  .p-callout__row + .p-callout__row.-button {
    margin-top: 20px;
  }
}

.p-callout__heading {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-callout__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-callout__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-callout__heading {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.p-callout__desc {
  font-size: 16px;
  font-size: 1rem;
  text-align: justify;
}

.p-callout__image {
  width: 100%;
  height: auto;
}
@media print, screen and (min-width: 48em ) {
  .p-callout__image {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-callout__button {
    width: 280px;
  }
}

.p-block-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media only screen and (max-width: 47.9375em ) {
  .p-block-link {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: -6px;
    margin-left: -6px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-block-link {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: -2px;
    margin-left: -2px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-block-link__item {
    width: calc(33.33% - 6px);
    min-width: 85px;
    height: 48px;
    margin-top: 6px;
    margin-left: 6px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-block-link__item {
    min-width: 180px;
    height: 48px;
    margin-top: 2px;
    margin-left: 2px;
  }
}
.p-block-link__item > a, .p-block-link__item > span {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-block-link__item > a, .p-block-link__item > span {
    padding-top: 14px;
    font-size: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-block-link__item > a, .p-block-link__item > span {
    padding-top: 9px;
    font-size: 16px;
  }
  .browser-is-ie .p-block-link__item > a, .browser-is-ie .p-block-link__item > span {
    padding-top: 13px;
  }
}
.p-block-link__item > a {
  background-color: #eee;
  color: #222222;
  text-decoration: none;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-block-link__item > a:hover {
    background-color: #aa8f7b;
    color: #fff;
  }
}
.p-block-link__item > span {
  background-color: #222222;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-block-link__item > span {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-block-link__item > span {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}

@media print, screen and (min-width: 48em ) {
  .p-block-link.-max4 {
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-block-link.-max4 {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-block-link.-max4 .p-block-link__item {
    width: calc(25% - 2px);
    min-width: inherit;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-block-link.-max4 .p-block-link__item {
    width: auto;
    min-width: 180px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-block-link.-width_s .p-block-link__item {
    min-width: 85px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-block-link.-width_s .p-block-link__item {
    min-width: 128px;
  }
}

.p-card-menu {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-top: -20px;
    margin-left: -20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu {
    margin-top: -40px;
    margin-left: -40px;
  }
}

.p-card-menu__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__item {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu__item {
    width: 100%;
    margin-top: 20px;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-menu__item {
    width: calc(33.33% - 20px);
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu__item {
    width: calc(33.33% - 40px);
    margin-top: 40px;
    margin-left: 40px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__item:first-child {
    margin-top: 0;
  }
}
.p-card-menu__item > a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  text-decoration: none;
  color: #222222;
  background-color: #f7f7f7;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-menu__item > a:hover {
    background-color: #aa8f7b;
    color: #fff;
  }
}

.p-card-menu__img {
  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;
  position: relative;
  overflow: hidden;
  width: 50%;
  /* 高さをpaddingで確保し、画像エリアを正方形に固定する */
}
.p-card-menu__img:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.p-card-menu__img img {
  display: block;
  width: 100%;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__img img {
    width: 100%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-card-menu__img img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.p-card-menu__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  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;
  width: 50%;
}

.p-card-menu__text-inner {
  padding-right: 10px;
  padding-left: 10px;
}

.p-card-menu__en {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #aa8f7b;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__en {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu__en {
    font-size: 10px;
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-menu__en {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu__en {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-card-menu__en {
    color: #fff;
  }
}

.p-card-menu__title {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu__title {
    margin-top: 4px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-menu__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu__title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-card-menu__title {
    color: #fff;
  }
}

.p-card-menu__desc {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__desc {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu__desc {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu__desc {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__desc:after {
    display: inline-block;
    width: 5px;
    height: 10px;
    margin-left: 8px;
    content: url(/common/svg/arrow_right_black.svg);
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu__desc span {
    display: none;
  }
}
.p-card-menu__desc br {
  display: none;
}
@media print, screen and (min-width: 80em ) {
  .p-card-menu__desc br {
    display: block;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-card-menu__desc {
    color: #fff;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 61.25em ) {
  .p-card-menu.-other_support .p-card-menu__en {
    font-size: 10px;
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu.-other_support .p-card-menu__en {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu.-other_support .p-card-menu__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-menu.-other_support .p-card-menu__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu.-other_support .p-card-menu__title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.p-card-menu.-max2 .p-card-menu__item {
  /*
   * SP：2行目（偶数個目 は画像とテキスト反転）
   * PC：2行目（4倍数-1個目、4倍数個目 は画像とテキスト反転）
   */
}
.browser-is-ie .p-card-menu.-max2 .p-card-menu__item {
  max-height: 250px;
}
@media print, screen and (min-width: 40.0625em ) {
  .browser-is-ie .p-card-menu.-max2 .p-card-menu__item {
    max-height: 320px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu.-max2 .p-card-menu__item {
    width: calc(50% - 20px);
    margin-left: 20px;
  }
  .browser-is-ie .p-card-menu.-max2 .p-card-menu__item {
    max-height: 200px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .p-card-menu.-max2 .p-card-menu__item {
    max-height: 300px;
  }
}
@media print, screen and (min-width: 80em ) {
  .browser-is-ie .p-card-menu.-max2 .p-card-menu__item {
    max-height: 400px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu.-max2 .p-card-menu__item {
    width: calc(50% - 40px);
    margin-left: 40px;
  }
  .browser-is-ie .p-card-menu.-max2 .p-card-menu__item {
    max-height: 500px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-menu.-max2 .p-card-menu__item:nth-child(even) > a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu.-max2 .p-card-menu__item:nth-child(4n-1) > a, .p-card-menu.-max2 .p-card-menu__item:nth-child(4n) > a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu.-max3 {
    margin-left: -30px;
    margin-top: -30px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu.-max3 {
    margin-left: -40px;
  }
}
.p-card-menu.-max3 .p-card-menu__item {
  /*
   * SP：2行目（偶数個目 は画像とテキスト反転）
   * PC：2行目（4倍数-1個目、4倍数個目 は画像とテキスト反転）
   */
}
.browser-is-ie .p-card-menu.-max3 .p-card-menu__item {
  max-height: 250px;
}
@media print, screen and (min-width: 40.0625em ) {
  .browser-is-ie .p-card-menu.-max3 .p-card-menu__item {
    max-height: 320px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-menu.-max3 .p-card-menu__item {
    width: calc(33.3% - 30px);
    margin-left: 30px;
    margin-top: 30px;
  }
  .browser-is-ie .p-card-menu.-max3 .p-card-menu__item {
    max-height: 200px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .p-card-menu.-max3 .p-card-menu__item {
    max-height: 300px;
  }
}
@media print, screen and (min-width: 80em ) {
  .browser-is-ie .p-card-menu.-max3 .p-card-menu__item {
    max-height: 400px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-menu.-max3 .p-card-menu__item {
    width: calc(33.3% - 40px);
    margin-left: 40px;
  }
  .browser-is-ie .p-card-menu.-max3 .p-card-menu__item {
    max-height: 500px;
  }
}

.p-border-box {
  border-style: solid;
  border-width: 3px;
  border-color: #dddddd;
}
@media only screen and (max-width: 47.9375em ) {
  .p-border-box {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-border-box {
    padding-top: 33px;
    padding-bottom: 33px;
    padding-right: 40px;
    padding-left: 40px;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-fill-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-fill-column__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #F7F7F7;
}
@media only screen and (max-width: 47.9375em ) {
  .p-fill-column__item {
    margin-top: 2px;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-fill-column__item {
    margin-left: 2px;
    padding-top: 33px;
    padding-bottom: 33px;
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-fill-column__item:first-child {
    width: 28%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-fill-column__item:last-child {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.p-fill-column__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-fill-column__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-fill-column__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-fill-column__head {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-fill-column__head {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-fill-column__head {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-fill-column__text {
  margin-top: 12px;
}

.p-glossary-anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 20px;
  margin-left: -20px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-glossary-anchor {
    margin-top: 10px;
    margin-left: -16px;
  }
}
.p-glossary-anchor:first-child {
  margin-top: -20px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-glossary-anchor:first-child {
    margin-top: -10px;
  }
}
.p-glossary-anchor > a {
  display: block;
  margin-top: 20px;
  margin-left: 20px;
  min-width: 1em;
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
  line-height: 1;
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-glossary-anchor > a {
    margin-top: 10px;
    margin-left: 16px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-glossary-anchor > a {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-banner {
  margin-left: -20px;
}
.p-banner li {
  float: left;
  margin-left: 20px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-banner li {
    width: calc(50% - 20px);
  }
}
.p-banner li img {
  display: block;
  width: 100%;
}
.p-banner a {
  display: block;
}
.p-banner:after {
  display: block;
  clear: both;
  content: "";
}

.p-news-list__item {
  border-style: solid;
  border-width: 0 0 1px 0;
  border-color: #dddddd;
}
.p-news-list__item:first-child {
  border-width: 1px 0 1px 0;
}
.p-news-list__item > a {
  text-decoration: none;
  color: #222222;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-news-list__item > a {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 0 auto;
    -ms-grid-columns: 90px 0 auto;
        grid-template: "newsListDate newsListCate" auto "newsListTitle newsListTitle" auto/90px auto;
    gap: 0;
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-news-list__item > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 25px;
    padding-bottom: 27px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-news-list__item > a:hover {
    background-color: #aa8f7b;
    color: #fff;
  }
}

.p-news-list__date {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
.browser-is-ie .p-news-list__date {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-news-list__date {
    grid-area: newsListDate;
    margin-top: -4px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-news-list__date {
    width: 17%;
    min-width: 106px;
    padding-right: 15px;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.5;
  }
}

.p-news-list__cate {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.browser-is-ie .p-news-list__cate {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-news-list__cate {
    grid-area: newsListCate;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-news-list__cate {
    width: 22%;
    padding-right: 15px;
  }
}

.browser-is-ie .p-news-list__title {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-news-list__title {
    grid-area: newsListTitle;
    margin-top: 4px;
  }
}
@media only screen and (max-width: 47.9375em ){
  .p-news-list__date {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-news-list__cate {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-news-list__title {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-news-list__title {
    width: 61%;
  }
}
a[target=_blank] .p-news-list__title:after {
  display: inline-block;
  position: relative;
  top: -0.1em;
  width: 13px;
  height: 11px;
  margin-left: 5px;
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: url(/common/svg/icon_blank.svg);
}
@media print, screen and (min-width: 61.25em ) {
  a[target=_blank]:hover .p-news-list__title:after {
    content: url(/common/svg/icon_blank_white.svg);
  }
}

.p-pager__inner {
  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;
}

.p-pager__item {
  display: inline-block;
  text-align: center;
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-pager__item {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pager__item {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-pager__item {
    margin-right: 4px;
    margin-left: 4px;
  }
}
.p-pager__item > a, .p-pager__item > span {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  text-decoration: none;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-pager__item > a, .p-pager__item > span {
    width: 32px;
    height: 32px;
    padding-top: 3px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-pager__item > a, .p-pager__item > span {
    width: 60px;
    height: 60px;
    padding-top: 12px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-pager__item.-current > a, .p-pager__item.-current > span {
  color: #fff;
  background-color: #222222;
}
.p-pager__item svg {
  width: 6px;
  height: 11px;
  fill: #cccccc;
}
@media print, screen and (min-width: 61.25em ) {
  .p-pager__item > a:hover {
    background-color: #aa8f7b;
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-pager__item > a:hover svg {
    fill: #fff;
  }
}

.p-pager__item.-prev svg {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.p-pager__item.-dot > a, .p-pager__item.-dot > span {
  width: auto;
}

.p-read-heading {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 920px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading {
    padding: 76px 5.3333% 0 5.3333%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading {
    width: 77%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 68px;
  }
}

.p-read-heading__heading {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__heading {
    margin-top: 4px;
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__heading {
    margin-top: 10px;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-read-heading__heading {
    margin-top: 20px;
    font-size: 42px;
    font-size: 2.625rem;
  }
}

.p-read-heading__sub {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__sub {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__sub {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__sub {
    width: 100%;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__sub {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-read-heading__sub {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

@media only screen and (max-width: 40em ) {
  .p-read-heading__info {
    display: block;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-read-heading__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 32px;
  }
}

.p-read-heading__date {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 40em ) {
  .p-read-heading__date {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-read-heading__date {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__date {
    padding-left: 5px;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.5;
  }
}

.p-read-heading__cate {
  position: relative;
}
@media only screen and (max-width: 40em ) {
  .p-read-heading__cate {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-read-heading__cate {
    margin-left: 14px;
    padding-left: 14px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__cate {
    margin-left: 28px;
    padding-left: 28px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-read-heading__cate:before {
  display: none;
  position: absolute;
  top: 55%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1px;
  height: 16px;
  background-color: #dddddd;
  content: "";
}
@media print, screen and (min-width: 40.0625em ) {
  .p-read-heading__cate:before {
    display: block;
  }
}
.p-read-heading__cate > li {
  display: inline-block;
}
.p-read-heading__cate > li:before {
  display: inline-block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #cccccc;
  content: ",";
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__cate > li:before {
    margin-right: 5px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__cate > li:before {
    margin-left: 7px;
    margin-right: 12px;
  }
}
.p-read-heading__cate > li:first-child:before {
  display: none;
}
.p-read-heading__cate a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-read-heading__cate a:hover {
    text-decoration: underline;
  }
}

.p-read-heading__meta {
  position: relative;
}
@media only screen and (max-width: 40em ) {
  .p-read-heading__meta {
    width: 100%;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-read-heading__meta {
    margin-right: 14px;
    padding-right: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__meta {
    margin-right: 28px;
    padding-right: 28px;
  }
}
.p-read-heading__meta:before {
  display: none;
  position: absolute;
  top: 55%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1px;
  height: 16px;
  background-color: #dddddd;
  content: "";
}
@media print, screen and (min-width: 40.0625em ) {
  .p-read-heading__meta:before {
    display: block;
  }
}
.p-read-heading__meta:after {
  display: block;
  clear: both;
  content: "";
}
.p-read-heading__meta:last-child {
  margin-right: 0;
  padding-right: 0;
}
.p-read-heading__meta:last-child:before {
  display: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__meta dt,
  .p-read-heading__meta dd {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__meta dt,
  .p-read-heading__meta dd {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-read-heading__meta dt {
  display: block;
  clear: left;
  float: left;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  margin-right: 20px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__meta dt {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__meta dt {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-read-heading__meta dt + dd:before {
  display: none;
}
.p-read-heading__meta dd {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  float: left;
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__meta dd {
    position: relative;
    top: 0.1em;
  }
}
.p-read-heading__meta dd:before {
  display: inline-block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #cccccc;
  content: ",";
}
@media only screen and (max-width: 47.9375em ) {
  .p-read-heading__meta dd:before {
    margin-right: 5px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-read-heading__meta dd:before {
    margin-left: 7px;
    margin-right: 12px;
  }
}
.p-read-heading__meta a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-read-heading__meta a:hover {
    text-decoration: underline;
  }
}

.p-wide-visual {
  overflow: hidden;
  max-width: 920px;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-wide-visual {
    height: 40vh;
    min-height: 200px;
    max-height: 320px;
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-wide-visual {
    width: 77%;
    height: 63vh;
    margin-top: 30px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-wide-visual {
    min-height: 570px;
  }
}
.p-wide-visual img {
  display: block;
  width: 100%;
}
@media print, screen and (min-width: 93.75em ) {
  .p-wide-visual img {
    width: 100%;
    height: auto;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em ) {
  .p-wide-visual.-choose {
    height: 520px;
    margin-bottom: 88px;
  }
}

.p-article-edit-area {
  /* 段落 */
  /* 強調文字 */
  /* h2 */
  /* h3 */
  /* h4 */
  /* 丸リスト */
  /* 数字リスト */
  /* 引用文 */
  /* イメージ */
  /* イメージがdivでくくられた場合 */
  /* イメージが並列 */
}
.p-article-edit-area > * {
  clear: both;
}
.p-article-edit-area p:after, .p-article-edit-area div:after {
  display: block;
  clear: both;
  content: "";
}
.p-article-edit-area p {
  /* 見出しとの組み合わせ */
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area p {
    margin-top: 15px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area p {
    margin-top: 20px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area p {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
  }
}
.p-article-edit-area p:first-child {
  margin-top: 0;
}
@media print, screen and (min-width: 93.75em ) {
  h2 + .p-article-edit-area p {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  h3 + .p-article-edit-area p {
    margin-top: 19px;
  }
}
.p-article-edit-area strong {
  font-weight: bold;
  color: #aa8f7b;
}
.p-article-edit-area h2 {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h2 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area h2 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h2 {
    margin-top: 40px;
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area h2 {
    margin-top: 50px;
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area h2 {
    margin-top: 80px;
    font-size: 32px;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h2 br {
    display: none;
  }
}
.p-article-edit-area h3 {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h3 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area h3 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h3 {
    margin-top: 28px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area h3 {
    margin-top: 36px;
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area h3 {
    margin-top: 42px;
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h3 br {
    display: none;
  }
}
.p-article-edit-area h4 {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h4 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area h4 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h4 {
    margin-top: 20px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area h4 {
    margin-top: 35px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area h4 {
    margin-top: 50px;
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area h4 br {
    display: none;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area ul {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area ul {
    margin-top: 20px;
  }
}
.p-article-edit-area ul:first-child {
  margin-top: 0;
}
.p-article-edit-area ul > li {
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area ul > li {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 6px;
    padding-left: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area ul > li {
    margin-top: 6px;
    padding-left: 16px;
    background-position: 0 0.6em;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area ul > li {
    margin-top: 8px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-article-edit-area ul > li:before {
  content: "";
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #c3c0bc;
}
.browser-is-ie .p-article-edit-area ul > li:before {
  top: 0.5em;
}
.p-article-edit-area ul > li > a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-article-edit-area ul > li > a:hover {
    text-decoration: underline;
  }
}
.p-article-edit-area ul > li > a:after {
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 12px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: url(/common/svg/arrow_right_darkgray.svg);
}
.p-article-edit-area ul > li > a[target=_blank]:after {
  position: relative;
  top: -0.1em;
  width: 13px;
  height: 11px;
  margin-left: 5px;
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: url(/common/svg/icon_blank.svg);
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-article-edit-area ul > li > a:after, .p-article-edit-area ul > li > a:hover:after {
    -webkit-transform: translate(4px, 0);
            transform: translate(4px, 0);
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-article-edit-area ul > li > a[target=_blank]:after, .p-article-edit-area ul > li > a:hover[target=_blank]:after {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.p-article-edit-area ul > li:first-child {
  margin-top: 0;
}
.p-article-edit-area ol {
  counter-reset: number;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area ol {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area ol {
    margin-top: 20px;
  }
}
.p-article-edit-area ol:first-child {
  margin-top: 0;
}
.p-article-edit-area ol > li {
  position: relative;
  padding-left: 30px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area ol > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area ol > li {
    margin-top: 6px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area ol > li {
    margin-top: 8px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-article-edit-area ol > li:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.23;
  counter-increment: number;
  content: counter(number) ".";
}
.p-article-edit-area ol > li > a {
  text-decoration: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-article-edit-area ol > li > a:hover {
    text-decoration: underline;
  }
}
.p-article-edit-area ol > li:first-child {
  margin-top: 0;
}
.p-article-edit-area blockquote {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  background-color: #f7f7f7;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area blockquote {
    margin-top: 20px;
    padding-top: 30px;
    padding-bottom: 32px;
    padding-right: 40px;
    padding-left: 40px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area blockquote {
    margin-top: 30px;
    padding-top: 40px;
    padding-bottom: 42px;
    padding-right: 11.63%;
    padding-left: 11.63%;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area blockquote {
    margin-top: 36px;
    padding-top: 60px;
    padding-bottom: 62px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.p-article-edit-area blockquote:before, .p-article-edit-area blockquote:after {
  display: block;
  position: absolute;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 70px;
  font-size: 4.375rem;
  color: #dddddd;
  line-height: 1;
}
@media only screen and (max-width: 40em ) {
  .p-article-edit-area blockquote:before, .p-article-edit-area blockquote:after {
    font-size: 50px;
    font-size: 3.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area blockquote:before, .p-article-edit-area blockquote:after {
    font-size: 96px;
    font-size: 6rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-article-edit-area blockquote:before, .p-article-edit-area blockquote:after {
    font-size: 96px;
    font-size: 6rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area blockquote:before, .p-article-edit-area blockquote:after {
    font-size: 108px;
    font-size: 6.75rem;
  }
}
.p-article-edit-area blockquote:before {
  content: "“";
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area blockquote:before {
    top: 20px;
    left: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area blockquote:before {
    top: 13px;
    left: 2.4%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area blockquote:before {
    top: 27px;
  }
}
.p-article-edit-area blockquote:after {
  bottom: -43px;
  content: "”";
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area blockquote:after {
    bottom: 6px;
    right: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area blockquote:after {
    bottom: -16px;
    right: 6.7%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area blockquote:after {
    bottom: -2px;
  }
}
.p-article-edit-area img {
  clear: both;
  visibility: hidden;
  opacity: 0;
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin-top: 30px;
  margin-right: auto;
  margin-left: auto;
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area img {
    margin-top: 15px;
  }
}
.p-article-edit-area img.-adjust_height {
  width: auto;
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area img.-adjust_height {
    max-height: 570px;
  }
}
.p-article-edit-area img.-visible {
  visibility: visible;
  opacity: 1;
}
.p-article-edit-area img.alignleft {
  float: left;
}
.p-article-edit-area img.alignright {
  float: right;
}
.p-article-edit-area .wp-caption {
  width: auto !important;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area .wp-caption {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area .wp-caption {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area .wp-caption {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area .p-article-edit-area__imgflex {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area .p-article-edit-area__imgflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area .p-article-edit-area__imgflex {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area .p-article-edit-area__imgflex .p-article-edit-area__imgflex_inner {
    width: calc(50% - 20px);
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-article-edit-area .p-article-edit-area__imgflex .p-article-edit-area__imgflex_inner {
    width: calc(50% - 40px);
    margin-left: 40px;
  }
}
.p-article-edit-area .wp-caption-text {
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-edit-area .wp-caption-text {
    margin-top: 8px;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-edit-area .wp-caption-text {
    margin-top: 8px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-article-edit-area .wp-caption-text {
    margin-top: 17px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-article-edit-area .wp-caption-text {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-article-edit-area a[target=_blank]:not(.c-link-blank) {
  position: relative;
  margin-right: 4px;
}
.p-article-edit-area a[target=_blank]:not(.c-link-blank):hover {
  text-decoration: none;
}
.p-article-edit-area a[target=_blank]:not(.c-link-blank):after {
  display: inline-block;
  position: relative;
  top: -0.1em;
  width: 13px;
  height: 11px;
  margin-left: 5px;
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: url(/common/svg/icon_blank.svg);
}
p .p-article-edit-area a[target=_blank]:not(.c-link-blank) {
  text-decoration: underline;
}

.p-contact-box {
  background-color: #f7f7f7;
  padding-top: 55px;
  padding-bottom: 58px;
  padding-right: 10px;
  padding-left: 10px;
}
.p-contact-box > ul > li {
  display: inline-block;
}
.p-contact-box.-pd_l {
  padding-top: 98px;
  padding-bottom: 98px;
  padding-right: 10px;
  padding-left: 10px;
}
.p-contact-box.-white {
  background-color: #fff;
}

.p-contact-box__head {
  text-align: center;
}
@media print, screen and (min-width: 48em ) {
  .p-contact-box__head.-mt_s {
    margin-top: 12px;
  }
}

.p-contact-box__text {
  margin-top: 20px;
  text-align: center;
}
.p-contact-box__text > p, .p-contact-box__text > ul {
  margin-top: 13px;
}
.p-contact-box__text > p:first-child, .p-contact-box__text > ul:first-child {
  margin-top: 0;
}
.p-contact-box__text > ul > li {
  display: inline-block;
  margin-left: 20px;
}
.p-contact-box__text > ul > li:first-child {
  margin-left: 0;
}

.p-contact-box__sub {
  display: block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: pre;
}
@media only screen and (max-width: 47.9375em ) {
  .p-contact-box__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-contact-box__sub {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-contact-box__sub {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-contact-box__main p {
  display: block;
  text-align: center;
  font-weight: bold;
}
@media print, screen and (min-width: 48em ) {
  .p-contact-box__main {
    margin-top: 30px;
  }
  .p-contact-box__main p {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

/* 採用下層ページで使用
----------------------------------------------------------------- */
.p-contact-box.-recruit-detail {
  background-color: #fff;
  padding: 0;
}
@media print, screen and (min-width: 69.375em ) {
  .p-contact-box.-recruit-detail .p-contact-box__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.p-contact-box.-recruit-detail .p-contact-box__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-contact-box.-recruit-detail .p-contact-box__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-contact-box.-recruit-detail .p-contact-box__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 69.3125em ) {
  .p-contact-box.-recruit-detail .p-contact-box__head {
    text-align: center;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-contact-box.-recruit-detail .p-contact-box__head {
    text-align: left;
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 69.3125em ) {
  .p-contact-box.-recruit-detail .p-contact-box__button {
    margin-top: 16px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-contact-box.-recruit-detail .p-contact-box__button {
    width: 465px;
  }
}

/* コンテナ */
.p-sns-button-container {
  position: relative;
}

.p-sns-button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-sns-button {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sns-button {
    position: absolute;
    z-index: 100;
    left: auto;
    top: 0;
    width: 100%;
    max-width: 920px;
    -webkit-transform: translate(100%, 0);
            transform: translate(100%, 0);
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-sns-button {
    top: 0;
    margin-left: 100px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sns-button.-bottom {
    top: auto;
    bottom: 0;
  }
}
.p-sns-button.-fixed {
  position: fixed;
}
@media print, screen and (min-width: 48em ) {
  .p-sns-button.-fixed {
    top: 100px;
    width: 77%;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-sns-button__item {
    width: 100%;
    height: 60px;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sns-button__item {
    width: 34px;
    height: 34px;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sns-button__item {
    width: 40px;
    height: 40px;
    margin-top: 20px;
  }
}
.p-sns-button__item:first-child {
  margin-top: 0;
}
.p-sns-button__item a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-sns-button__item a {
    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;
    width: 100%;
    height: 100%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sns-button__item a:hover img {
    opacity: 0.8;
  }
}
.p-sns-button__item img {
  display: block;
  max-width: 100%;
  -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-sns-button__item.-facebook {
    background-color: #0C419A;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-sns-button__item.-twitter {
    background-color: #1CA5F2;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-sns-button__item.-hatena {
    background-color: #00A4DE;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-sns-button__text {
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sns-button__text {
    display: none;
  }
}

.p-news-main-visual {
  margin: 0 0 40px 0;
}
@media print, screen and (min-width: 48em ) {
  .p-news-main-visual {
    margin: 40px auto 0;
    max-width: 920px;
    width: 77%;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-news-main-visual {
    margin: 80px auto 0;
  }
}

.p-news-main-visual__img {
  display: block;
  width: 100%;
}

.p-search-list__head span {
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-search-list__head span {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-search-list__head span {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}

.p-search-list__num1 {
  margin-right: 7px;
  margin-left: 24px;
}

.p-search-list__num2 {
  margin-right: 7px;
  margin-left: 10px;
}

.p-search-list__item {
  border-style: solid;
  border-width: 0 0 1px 0;
  border-color: #dddddd;
}
.p-search-list__item:first-child {
  border-width: 1px 0 1px 0;
}
.p-search-list__item > a {
  display: block;
  text-decoration: none;
  color: #222222;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-search-list__item > a {
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-search-list__item > a {
    padding-top: 33px;
    padding-bottom: 37px;
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-search-list__item > a:hover {
    background-color: #aa8f7b;
    color: #fff;
  }
}

.p-search-list__title {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-search-list__title {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-search-list__title {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-search-list__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-search-list__title {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-search-list__title {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-search-list__desc {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-search-list__desc {
    margin-top: 8px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-search-list__desc {
    margin-top: 13px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 2;
  }
}

.p-search-list__url {
  display: block;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .p-search-list__url {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-search-list__url {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover .p-search-list__url {
    color: #fff;
  }
}
a[target=_blank] .p-search-list__url:after {
  display: inline-block;
  position: relative;
  top: -0.1em;
  width: 13px;
  height: 11px;
  margin-left: 5px;
  -webkit-transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: content cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: url(/common/svg/icon_blank.svg);
}
@media print, screen and (min-width: 61.25em ) {
  a[target=_blank]:hover .p-search-list__url:after {
    content: url(/common/svg/icon_blank_white.svg);
  }
}

.p-company-module {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.p-company-module__img {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  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;
  position: relative;
  overflow: hidden;
  border-style: solid;
  border-color: #eee;
}
@media only screen and (max-width: 47.9375em ) {
  .p-company-module__img {
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
    border-width: 1px 1px 0 1px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-company-module__img {
    width: 42%;
    border-width: 1px 0 1px 1px;
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 30px;
    padding-left: 30px;
  }
}
.p-company-module__img img {
  display: block;
  max-width: 200px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-company-module__img img {
    max-height: 200px;
  }
}

.p-company-module__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #f7f7f7;
}
@media only screen and (max-width: 47.9375em ) {
  .p-company-module__text {
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-company-module__text {
    width: 58%;
    padding-top: 42px;
    padding-bottom: 44px;
    padding-right: 48px;
    padding-left: 48px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-company-module__text {
    padding-top: 53px;
    padding-bottom: 56px;
    padding-right: 60px;
    padding-left: 60px;
  }
}

.p-company-module__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 47.9375em ) {
  .p-company-module__list {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-company-module__list {
    margin-top: 10px;
  }
}
.p-company-module__list:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-company-module__list dt,
  .p-company-module__list dd {
    min-width: 80px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-company-module__list dt,
  .p-company-module__list dd {
    min-width: 104px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-company-module__list dt {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-company-module__list dt {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-company-module__list dt {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-company-module__list dd {
  margin-right: 23px;
}
.p-company-module__list dd:last-child {
  margin-right: 0;
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em ) {
  .p-company-module.-no_img .p-company-module__text {
    width: 100%;
    padding-right: 80px;
    padding-left: 80px;
  }
}

.p-card-1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
  margin-left: -20px;
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1 {
    margin-top: -40px;
    margin-left: -40px;
  }
}
@media only screen and (max-width: 40em ) {
  .p-card-1.-max3 .p-card-1__item {
    width: calc(100% - 20px);
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-card-1.-max3 .p-card-1__item {
    width: calc(50% - 20px);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-1.-max3 .p-card-1__item {
    width: calc(33.33% - 20px);
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1.-max3 .p-card-1__item {
    width: calc(33.33% - 40px);
  }
}

.p-card-1__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  z-index: 0;
  margin-top: 20px;
  margin-left: 20px;
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1__item {
    margin-top: 40px;
    margin-left: 40px;
  }
}
.p-card-1__item > a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 10;
  width: 100%;
  height: 100%;
}

.p-card-1__inner {
  height: 100%;
  background-color: #fff;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover + .p-card-1__inner {
    background-color: #aa8f7b;
  }
}

.p-card-1__img {
  position: relative;
  overflow: hidden;
}

.p-card-1__img-inner {
  padding-top: 64.285%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
@media print, screen and (min-width: 61.25em ) {
  a:hover + .p-card-1__inner .p-card-1__img-inner {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.p-card-1__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__text {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__text {
    padding-top: 32px;
    padding-bottom: 34px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1__text {
    padding-top: 40px;
    padding-bottom: 44px;
    padding-right: 32px;
    padding-left: 32px;
  }
}

.p-card-1__date {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__date {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__date {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1__date {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover + .p-card-1__inner .p-card-1__date {
    color: #fff;
  }
}

.p-card-1__sub {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__sub {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1__sub {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover + .p-card-1__inner .p-card-1__sub {
    color: #fff;
  }
}

.p-card-1__main {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__main {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__main {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__main {
    margin-top: 10px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-card-1__main {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover + .p-card-1__inner .p-card-1__main {
    color: #fff;
  }
}

.p-card-1__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  z-index: 20;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__category {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__category {
    margin-top: 16px;
  }
}
.p-card-1__category > li:before {
  display: inline-block;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #CCCCCC;
  content: ",";
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__category > li:before {
    margin-right: 5px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__category > li:before {
    margin-left: 7px;
    margin-right: 12px;
  }
}
.p-card-1__category > li:first-child:before {
  display: none;
}
.p-card-1__category > li > a {
  text-decoration: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-card-1__category > li > a {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-card-1__category > li > a {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  a:hover + .p-card-1__inner .p-card-1__category > li > a {
    color: #fff;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-card-1__category > li > a:hover {
    color: #aa8f7b;
    text-decoration: underline;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.js-search-msg {
  display: none;
}
.js-search-msg.-visible {
  display: block;
}

@media print, screen and (min-width: 61.25em ) {
  .p-select-controller {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -20px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-select-controller {
    margin-left: -40px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-select-controller__item {
    margin-top: 36px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-select-controller__item {
    margin-top: 36px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-select-controller__item {
    width: calc(33.33% - 20px);
    margin-top: 0;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-select-controller__item {
    width: calc(33.33% - 40px);
    margin-left: 40px;
  }
}

.p-term {
  position: relative;
  background-color: #f7f7f7;
}
@media only screen and (max-width: 47.9375em ) {
  .p-term {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-term {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 14px;
  }
}
.p-term svg {
  position: absolute;
  top: 50%;
  right: 22px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 10px;
  height: 5px;
  -webkit-transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, fill cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media print, screen and (min-width: 61.25em ) {
  .p-term:hover svg {
    fill: #aa8f7b;
    -webkit-transform: translate(0, calc(-50% + 3px));
            transform: translate(0, calc(-50% + 3px));
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-term:hover .p-term__current-value {
    color: #aa8f7b;
  }
}

.p-term__select {
  position: relative;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-term__select {
    display: block;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-term__select {
    display: none;
  }
}
.p-term__select > select {
  z-index: 1;
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 18px;
  padding-left: 18px;
  background-color: transparent;
  border: none;
  border-radius: 0;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-size: 16px;
  font-size: 1rem;
  color: #222222;
  line-height: 1.5;
}
.p-term__select > select > option {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  color: #222222;
}

.p-term__value-list {
  position: relative;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-term__value-list {
    display: none;
  }
}
.p-term__value-list button {
  display: block;
  background-color: transparent;
  border: none;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
}
.p-term__value-list button:focus {
  outline: none;
}

.p-term__current-value {
  display: block;
  width: 100%;
  position: relative;
  color: #222222;
  text-align: left;
  white-space: nowrap;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  cursor: pointer;
  font-size: 14px;
}
@media print, screen and (min-width: 48em ) {
  .p-term__current-value {
    padding-top: 17px;
    padding-bottom: 16px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-term__current-value {
    padding-top: 17px;
    padding-bottom: 16px;
    padding-right: 20px;
    padding-left: 20px;
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-term__select-container {
  z-index: 1000;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  visibility: hidden;
  opacity: 0;
  background: #fff;
}
@media print, screen and (min-width: 48em ) {
  .p-term__select-container {
    position: absolute;
  }
}
.p-term__select-container.-active {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.p-term__select-list {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media print, screen and (min-width: 48em ) {
  .p-term__select-list {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
.p-term__select-list a, .p-term__select-list button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  width: 100%;
  padding-top: 9px;
  padding-bottom: 8px;
  padding-right: 20px;
  padding-left: 20px;
  white-space: nowrap;
  text-align: left;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .p-term__select-list a, .p-term__select-list button {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-term__select-list a, .p-term__select-list button {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-term__select-list a span, .p-term__select-list button span {
    display: none;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-term__select-list a span, .p-term__select-list button span {
    display: inline;
  }
}
.p-term__select-list a:hover, .p-term__select-list button:hover {
  background-color: #aa8f7b;
  color: #fff;
}
.p-term__select-list a.-current, .p-term__select-list button.-current {
  color: #aa8f7b;
  cursor: default;
}
.p-term__select-list a.-current:hover, .p-term__select-list button.-current:hover {
  background-color: transparent;
}

.p-store-list {
  position: relative;
}
@media print, screen and (min-width: 48em ) {
  .p-store-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    /* itemのpadding-top分吸収 */
    margin-top: -56px;
    margin-left: -60px;
  }
  .-visible + .p-store-list {
    display: none;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-store-list {
    margin-left: -40px;
  }
}
.p-store-list:after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #fff;
  content: "";
}

.p-store-list__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #dddddd;
}
@media only screen and (max-width: 47.9375em ) {
  .p-store-list__item {
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-store-list__item {
    width: calc(50% - 60px);
    margin-left: 60px;
    padding-top: 56px;
    padding-bottom: 60px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-store-list__item {
    width: calc(50% - 40px);
    margin-left: 40px;
  }
}

.p-store-list__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-store-list__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-store-list__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-store-list__head {
    margin-bottom: 16px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-store-list__head {
    margin-bottom: 24px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-store-list__head {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

.p-store-list__zip {
  display: block;
}

.p-store-list__address {
  display: block;
}

.p-store-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -1px;
  margin-left: -1px;
}

.p-store-logo__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(25% - 1px);
  margin-top: 1px;
  margin-left: 1px;
  background-color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-store-logo__item {
    height: 80px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-store-logo__item {
    height: 160px;
  }
}
.p-store-logo__item a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  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;
  width: 100%;
  height: 100%;
  padding-right: 10px;
  padding-left: 10px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-store-logo__item a:hover img {
    opacity: 0.65;
  }
}
.p-store-logo__item img {
  display: block;
  -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-store-logo__item img {
    max-width: 100%;
    max-height: 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-store-logo__item img {
    max-width: 100%;
  }
}
.browser-is-ie .p-store-logo__item img {
  max-width: 80%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.browser-is-ie .p-store-logo__item picture {
  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: 100%;
}

.p-map-container > iframe {
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-map-container > iframe {
    height: 400px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-sitemap > .p-sitemap__block > .p-sitemap__unit {
    margin-top: 45px;
  }
}

@media print, screen and (min-width: 40.0625em ) {
  .p-sitemap__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-sitemap__unit {
  width: 100%;
}
@media print, screen and (min-width: 40.0625em ) {
  .p-sitemap__unit {
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sitemap__unit {
    margin-left: 28px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-sitemap__unit.-half {
    width: calc(50% - 40px);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sitemap__unit.-half {
    width: calc(50% - 28px);
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-sitemap__unit.-third {
    width: calc(50% - 40px);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sitemap__unit.-third {
    width: calc(33.33% - 28px);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__unit.-two_thirds {
    width: calc(66.66% - 28px);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sitemap__unit.-two_thirds {
    width: calc(66.66% - 40px);
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-sitemap__unit.-margin_m {
    margin-top: 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__unit.-margin_m {
    margin-top: 54px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-sitemap__unit.-margin_l {
    margin-top: 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__unit.-margin_l {
    margin-top: 75px;
  }
}

@media print, screen and (min-width: 40.0625em ) {
  .p-sitemap__block {
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-sitemap__block {
    margin-left: -28px;
  }
}

.p-sitemap__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #dddddd;
}
@media only screen and (max-width: 47.9375em ) {
  .p-sitemap__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-sitemap__head {
    padding-bottom: 10px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__head {
    padding-bottom: 19px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-sitemap__head {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-sitemap__head.-fs_s {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__head.-fs_s {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-sitemap__head.-fs_s {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-sitemap__list {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-sitemap__list {
    margin-top: 20px;
  }
}

.p-sitemap__item {
  margin-top: 7px;
}
.p-sitemap__item:first-child {
  margin-top: 0;
}
.p-sitemap__item a {
  color: #222222;
  text-decoration: none;
  font-size: 14px;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 61.25em ) {
  .p-sitemap__item a:hover {
    color: #aa8f7b;
  }
}
.p-sitemap__item ul li {
  margin-top: 7px;
}
.p-sitemap__item ul li a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  position: relative;
  padding-left: 16px;
}
.p-sitemap__item ul li a:before {
  position: absolute;
  display: block;
  top: 50%;
  left: 0;
  width: 6px;
  height: 1px;
  background-color: #ccc;
  content: "";
}
.p-sitemap__item.-blank:after {
  position: relative;
  top: -1px;
  width: 13px;
  height: 11px;
  margin-left: 6px;
  content: url(/common/svg/icon_blank_black.svg);
}

.p-search-input__area {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}

.p-search-input__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}
.p-search-input__inner input[type=text] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: block;
  width: 100%;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 10px;
  background-color: #f7f7f7;
  border: none;
  border-radius: 0;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  /* Google Chrome, Safari, Opera 15+, Android, iOS */
  /* Firefox 18- */
  /* Firefox 19+ */
  /* IE 10+ */
}
@media print, screen and (min-width: 48em ) {
  .p-search-input__inner input[type=text] {
    background-repeat: no-repeat;
    background-position: 23px 16px;
    background-image: url(/common/svg/icon_search_gray.svg);
    background-size: 17px 17px;
    padding-top: 11px;
    padding-bottom: 13px;
    padding-left: 60px;
  }
  .browser-is-ie .p-search-input__inner input[type=text] {
    background-position: 23px;
    padding-top: 16px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-search-input__inner input[type=text] {
    background-position: 23px 24px;
    padding-top: 17px;
    padding-bottom: 19px;
  }
  .browser-is-ie .p-search-input__inner input[type=text] {
    padding-top: 23px;
  }
}
.p-search-input__inner input[type=text]:-moz-placeholder-shown {
  color: #aaaaaa;
  -moz-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-search-input__inner input[type=text]:-ms-input-placeholder {
  color: #aaaaaa;
  -ms-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-search-input__inner input[type=text]:placeholder-shown {
  color: #aaaaaa;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-search-input__inner input[type=text]::-webkit-input-placeholder {
  color: #aaaaaa;
}
.p-search-input__inner input[type=text]:-moz-placeholder {
  color: #aaaaaa;
  opacity: 1;
}
.p-search-input__inner input[type=text]::-moz-placeholder {
  color: #aaaaaa;
  opacity: 1;
}
.p-search-input__inner input[type=text]:-ms-input-placeholder {
  color: #aaaaaa;
}
.p-search-input__inner input[type=text]:focus {
  outline: none;
}

.p-article-links {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 30px clamp(30px, 5.3125vw, 85px);
}
@media print, screen and (min-width: 48em ) {
  .p-article-links {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}

.p-article-link {
  --img-scale: 1;
  --transition-duration: 0.3s;
  --transition-easing: ease-out;
  text-decoration: none;
  color: #222222;
  overflow: hidden;
}
@media (hover: hover) {
  .p-article-link:hover {
    --img-scale: 1.08;
  }
}

.p-article-link__row {
  --mt: initial;
  --mt-s: initial;
}
.p-article-link__row + .p-article-link__row {
  margin-top: var(--mt);
}
@media print, screen and (min-width: 48em ) {
  .p-article-link__row + .p-article-link__row {
    margin-top: var(--mt-s, var(--mt));
  }
}
.p-article-link__row.-heading {
  --mt: 20px;
}
.p-article-link__row.-description {
  --mt: 12px;
}
.p-article-link__row.-link {
  --mt: 12px;
}

.p-article-link__heading {
  font-size: 22px;
  font-size: 1.375rem;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-article-link__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-link__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-article-link__heading {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.p-article-link__link {
  color: #aa8f7b;
}

.p-article-link__img {
  width: 100%;
  height: auto;
  -webkit-transition: -webkit-transform var(--transition-duration) var(--transition-easing);
  transition: -webkit-transform var(--transition-duration) var(--transition-easing);
  transition: transform var(--transition-duration) var(--transition-easing);
  transition: transform var(--transition-duration) var(--transition-easing), -webkit-transform var(--transition-duration) var(--transition-easing);
  -webkit-transform: scale(var(--img-scale));
          transform: scale(var(--img-scale));
  display: block;
}

.p-img-txt__layout {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 23px 40px;
}
@media print, screen and (min-width: 48em ) {
  .p-img-txt__layout {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-img-txt__img {
  width: 100%;
  height: auto;
  display: block;
}

.p-point-blocks {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: auto;
  gap: 70px 0;
  counter-reset: point;
}
@media print, screen and (min-width: 48em ) {
  .p-point-blocks {
    gap: 100px 0;
  }
}

.p-point-block {
  --grid-template: "heading" auto "image" auto "body" 1fr / 1fr;
  counter-increment: point;
}
@media print, screen and (min-width: 48em ) {
  .p-point-block {
    --grid-template: "image heading" auto "image body" 1fr / 1fr 380px;
  }
  .p-point-block:nth-child(2n) {
    --grid-template: "heading image" auto "body image" 1fr / 380px 1fr;
  }
  .p-point-block > .p-callout__col.-image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
  .p-point-block:nth-child(2n) > .p-callout__col.-image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
}

.p-point-block__layout {
  display: -ms-grid;
  display: grid;
      grid-template: var(--grid-template);
  gap: 25px clamp(20px, 3.75vw, 60px);
}

.p-point-block__area {
  position: relative;
}
.p-point-block__area.-image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
}
.p-point-block > .p-point-block__area.-image {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.p-point-block__area.-heading {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: heading;
}
@media print, screen and (min-width: 61.25em ) {
  .p-point-block__area.-heading {
    padding-top: 7.5vw;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-point-block__area.-heading {
    padding-top: clamp(0px, calc(75vw - 1056px), 146px);
  }
}
.p-point-block__area.-body {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: body;
}

.p-point-block__body-row {
  --mt: initial;
  --mt-s: initial;
}
.p-point-block__body-row + .p-point-block__body-row {
  margin-top: var(--mt);
}
@media print, screen and (min-width: 48em ) {
  .p-point-block__body-row + .p-point-block__body-row {
    margin-top: var(--mt-s, var(--mt));
  }
}
.p-point-block__body-row.-note {
  --mt: 16px;
}

.p-point-block__image {
  width: 100%;
  height: auto;
  display: block;
}

.p-point-block__heading {
  position: relative;
}

.p-point-block__number {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-weight: 700;
  font-size: 240px;
  top: -40px;
  color: #f2f2f2;
  position: absolute;
  right: 0;
  line-height: 0.7;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media print, screen and (min-width: 48em ) {
  .p-point-block__number {
    top: auto;
    bottom: 0;
    font-size: clamp(200px, 16.25vw, 260px);
  }
}

.p-cta-banner {
  position: relative;
  background-color: #fff;
}
.p-cta-banner.-gray {
  background-color: #f7f7f7;
}

.p-cta-banner__inner {
  padding: 26px 20px 32px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__inner {
    padding: 55px 40px;
  }
}

.p-cta-banner__layout {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 1fr;
  -ms-grid-columns: 1fr 114px;
      grid-template: "text img" auto "button button" 1fr/1fr 114px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__layout {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 130px 416fr 270fr;
        grid-template: "img text button" 1fr/130px 416fr 270fr;
  }
  .p-cta-banner__layout > .p-page-visual__text {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-page-visual__recruit-cta {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
  }
  .p-section-column__item.-sp_grid .c-image {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-cta-banner__layout > .c-sentence, .p-cta-banner__layout > .p-link-panel__desc, .p-cta-banner__layout > p {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-cta-banner__layout > .p-callout__col.-text {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}

.p-cta-banner__area.-img {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: img;
  position: relative;
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__area.-img {
    position: static;
  }
}
.p-cta-banner__area.-text {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: text;
  padding-right: 36px;
}
.p-cta-banner__layout > .p-cta-banner__area.-text {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__area.-text {
    padding-right: 0;
    padding-left: 26px;
  }
}
.p-cta-banner__area.-button {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: button;
  margin-top: 16px;
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__area.-button {
    margin-top: 0;
    padding-left: 10px;
  }
}

.p-cta-banner__text {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-cta-banner__text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-cta-banner__text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__text {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-cta-banner__img {
  position: absolute;
  right: 0;
  bottom: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-cta-banner__img {
    right: auto;
  }
}

.p-table {
  table-layout: fixed;
}
.p-table.-sakecellar-drinking {
  width: 920px;
}

.p-table__cell {
  padding: 15px 20px 16px;
  border: 1px solid #ddd;
  font-size: 16px;
  font-size: 1rem;
}
.p-table__cell.-th {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
  background-color: #f7f7f7;
}
@media only screen and (max-width: 47.9375em ) {
  .p-table__cell.-th {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-table__cell.-th {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.p-table__cell.-align_top {
  vertical-align: top;
}
.p-table__cell.-align_middle {
  vertical-align: middle;
}

#biz_calendar {
  margin-left: 0 !important;
  margin-top: 50px !important;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial" !important;
}
@media print, screen and (min-width: 48em ) {
  #biz_calendar {
    max-width: 272px !important;
  }
}

#biz_calendar table.bizcal .calmonth {
  position: relative !important;
  top: -34px !important;
  padding: 0 !important;
}

#biz_calendar table.bizcal th {
  color: #222222;
  background-color: #f7f7f7 !important;
}

#biz_calendar table.bizcal th:first-child {
  color: #222222 !important;
}

#biz_calendar table.bizcal th:nth-last-of-type(1) {
  color: #222222 !important;
}

#biz_calendar table.bizcal .calbtn.today-img img {
  display: none !important;
}

#biz_calendar table.bizcal .today {
  text-decoration: none !important;
  color: #aa8f7b !important;
}

#biz_calendar table.bizcal .holiday {
  background-color: #a10218 !important;
}

#biz_calendar p span.boxholiday {
  background-color: #a10218 !important;
}

.p-shop-block {
  background-color: #f7f7f7;
}
@media print, screen and (min-width: 61.25em ) {
  .p-shop-block {
    min-width: 960px;
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-shop-block.-modal {
    max-height: 80vh;
    overflow-y: auto;
    width: calc(100% - 50px);
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__main {
    padding-top: 26px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__head {
    text-align: center;
  }
}

.p-shop-block__series {
  font-weight: bold;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
}

.p-shop-block__cart {
  position: relative;
  top: -28px;
}

.p-shop-block__name {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-weight: bold;
  line-height: 1.4;
  position: relative;
  top: -20px;
  padding-top: 16px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__name {
    font-size: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__name {
    font-size: 48px;
  }
}

.p-shop-block__price {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__price {
    font-size: 24px;
    top: -40px;
    text-align: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__price {
    font-size: 34px;
    top: -42px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__price span {
    font-size: 16px;
    font-weight: bold;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__price span {
    font-size: 14px;
  }
}
.p-shop-block__price span:last-of-type {
  padding-left: 4px;
}

.p-shop-block__total {
  margin-top: 4px;
}

.p-shop-block__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding-top: 20px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__contents {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 52px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-shop-block__contents {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 52px;
    padding-right: 50px;
    padding-left: 50px;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-shop-block__contents {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 52px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 50px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__contents.-winesuit {
    padding-top: 43px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__contents.-winesuit {
    padding-bottom: 30px;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-shop-block__select-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-shop-block__select-row label {
  font-weight: bold;
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__select-row label {
    width: 194px;
    margin-right: 10px;
  }
}
.p-shop-block__select-row label.-required:after {
  content: "*";
  font-size: 22px;
  display: inline-block;
  margin-left: 3px;
  color: #d10000;
}
.p-shop-block__select-row.-error select {
  background-color: #fcf0f0;
  border: 1px solid #d10000;
  border-radius: 0;
}
.p-shop-block__select-row.-error .p-shop-block__error {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__select-row + .p-shop-block__select-row {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__select-row + .p-shop-block__select-row {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__select-row.-mt_l {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__select-row.-mt_l {
    margin-top: 14px;
  }
}

.p-shop-block__select {
  position: relative;
}
.p-shop-block__select select {
  color: #000000;
  background-color: #fff;
  border: solid 1px #dddddd;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  border-radius: 0;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  padding-top: 11px;
  padding-right: 14px;
  padding-left: 14px;
  padding-bottom: 8px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__select select {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__select select {
    width: 220px;
  }
}
.p-shop-block__select:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 20;
  width: 6px;
  height: 6px;
  top: calc(50% - 4px);
  right: 12px;
  border: 1px solid;
  border-color: transparent transparent #222222 #222222;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  pointer-events: none;
}

.p-shop-block__select-desc {
  font-size: 13px;
  font-size: 0.8125rem;
  margin-top: 6px;
  display: block;
}

@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__radio-row {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__radio-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 16px;
  }
}
.p-shop-block__radio-row + .p-shop-block__radio-row {
  margin-top: 11px;
}
.p-shop-block__radio-row.-error + .p-shop-block__error {
  display: block;
}
.p-shop-block__radio-row.-error .p-shop-block__radio label::before {
  background-color: #fcf0f0;
  border-color: #d10000;
}
.p-shop-block__radio-row.-error .p-shop-block__radio label::after {
  background-color: #d10000;
}

.p-shop-block__radio-label {
  font-weight: bold;
  margin-right: 10px;
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__radio-label {
    width: 194px;
  }
}
.p-shop-block__radio-label.-required:after {
  content: "*";
  font-size: 22px;
  display: inline-block;
  margin-left: 3px;
  color: #d10000;
}

.p-shop-block__annotation {
  display: block;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 6px;
}

@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__radios {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-shop-block__radio input {
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.p-shop-block__radio input:checked + label:after {
  -webkit-transform: translate(-50%, -50%) scale(1.25);
          transform: translate(-50%, -50%) scale(1.25);
}
.p-shop-block__radio label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  padding-left: 30px;
  line-height: 1.4;
}
@media only screen and (max-width: 40em ) {
  .p-shop-block__radio label {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
.p-shop-block__radio label::before {
  content: "";
  top: 0px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  border-radius: 50%;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #ddd;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-shop-block__radio label::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  border-radius: 50%;
  content: "";
  left: 0;
  top: 1px;
  top: 10px;
  left: 9px;
  width: 8px;
  height: 8px;
  background-color: #aa8f7b;
  -webkit-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__radio:first-of-type {
    margin-right: 20px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__button {
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__button {
    margin-top: 28px;
  }
}
.p-shop-block__button > button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  background: #aa8f7b;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
  border: none;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__button > button {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__button > button {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__button > button {
    min-height: 50px;
    padding-top: 12px;
    padding-bottom: 20px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__button > button {
    padding-top: 15px;
    padding-bottom: 17px;
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-shop-block__button > button {
    padding-top: 20px;
    padding-bottom: 22px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-shop-block__button > button:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #222222;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
@media print, screen and (min-width: 61.25em ) {
  .p-shop-block__button > button:hover:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.p-shop-block__button span {
  display: inline-block;
  position: relative;
  z-index: 30;
}
.p-shop-block__button span:after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  margin-left: 6px;
  position: relative;
  top: 4px;
  background-image: url(/common/svg/icon_cart.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.p-shop-block__button.-desabled > button {
  background-color: rgba(34, 34, 34, 0.2);
  pointer-events: none;
}

@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__thum {
    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;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__thum img {
    max-width: 138px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__thum img {
    max-width: 178px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-shop-block__thum img {
    max-width: 196px;
  }
}

.p-shop-block__error {
  color: #d10000;
  font-size: 12px;
  font-size: 0.75rem;
  display: none;
  margin-top: 3px;
}
.p-shop-block__error:before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 4px;
  position: relative;
  top: -1px;
  background-image: url(/common/svg/icon_error.svg);
  background-size: contain;
  vertical-align: middle;
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__error.-radio {
    margin-left: 48%;
  }
}

.p-shop-block__delivery-date {
  display: block;
  line-height: 1.5;
  padding-bottom: 16px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__delivery-date {
    font-size: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__delivery-date {
    font-size: 26px;
  }
}
.p-shop-block__delivery-date.-small {
  padding-bottom: 8px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-shop-block__delivery-date.-small {
    font-size: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-shop-block__delivery-date.-small {
    font-size: 18px;
  }
}

@media print, screen and (min-width: 69.375em ) {
  .p-flow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: -40px;
  }
}

.p-flow__item {
  position: relative;
  background-color: #f7f7f7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__item {
    padding-top: 30px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 32px;
    margin-bottom: 36px;
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__item {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-right: 40px;
    width: calc(20% - 40px);
    padding-top: 30px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 32px;
  }
}
.p-flow__item:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__item:after {
    border-style: solid;
    border-width: 14px 15px 0 15px;
    border-color: #dddddd transparent transparent transparent;
    bottom: -26px;
    right: 50%;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__item:after {
    right: -28px;
    top: 50%;
    right: -28px;
    top: 50%;
    border-style: solid;
    border-width: 15px 0 15px 15px;
    border-color: transparent transparent transparent #dddddd;
  }
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__item:last-of-type {
    margin-bottom: 0;
  }
}
.p-flow__item:last-of-type:after {
  display: none;
}

.p-flow__num {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-weight: bold;
  display: block;
  text-align: center;
  color: #aa8f7b;
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__num {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__num {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-flow__title {
  font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-weight: bold;
  display: block;
  text-align: center;
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__title {
    font-size: 16px;
    font-size: 1rem;
    margin-top: -4px;
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__title {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-flow__icon {
  display: none;
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__icon {
    display: block;
    width: 45px;
    height: 45px;
    margin-top: 30px;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-flow__text {
  display: block;
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__text {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__text {
    margin-top: 20px;
  }
}

.p-flow__link a {
  display: block;
  text-align: center;
}
@media only screen and (max-width: 69.3125em ) {
  .p-flow__link a {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 69.375em ) {
  .p-flow__link {
    margin-top: 4px;
  }
}

.p-flow.-inverted .p-flow__item {
  background-color: #fff;
}

.p-understand {
  margin-top: 10px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand.-mt_l {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-mt_l {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: -10px;
  }
}

.p-understand__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  position: relative;
  overflow: hidden;
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__item {
    padding: 34px 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item {
    padding: 50px 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item.-half {
    width: calc(50% - 10px);
    margin-right: 10px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__item.-half + .p-understand__item.-half {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item.-img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__item.-sp_reverse {
    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;
  }
}

.p-understand__heading {
  font-weight: 700;
  position: relative;
}
@media print, screen and (min-width: 48em ) {
  .p-understand__heading {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__heading br {
    display: none;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__heading.-fs_m {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

.p-understand__value {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  font-weight: 700;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  white-space: nowrap;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value {
    font-size: 120px;
    font-size: 7.5rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value {
    font-size: 86px;
    font-size: 5.375rem;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-understand__value {
    font-size: 140px;
    font-size: 8.75rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value.-size_s {
    font-size: 36px;
    font-size: 2.25rem;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value.-size_s {
    font-size: 46px;
    font-size: 2.875rem;
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-understand__value.-size_s {
    font-size: 52px;
    font-size: 3.25rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value.-size_ss {
    font-size: 28px;
    font-size: 1.75rem;
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value.-size_ss {
    font-size: 32px;
    font-size: 2rem;
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-understand__value.-size_ss {
    font-size: 40px;
    font-size: 2.5rem;
  }
}
.p-understand__value .p-understand__value-sup {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  position: relative;
  color: #222222;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value .p-understand__value-sup {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value .p-understand__value-sup {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value .p-understand__value-sup {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value .p-understand__value-sup {
    top: -2px;
    font-size: 32px;
    font-size: 2rem;
  }
}

.p-understand__value-desc {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
  font-size: 14px;
  font-size: 0.875rem;
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-desc {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value-desc {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-desc {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value-desc {
    margin-top: 16px;
  }
}

.p-understand__value-unit {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
  display: inline-block;
  color: #222222;
  position: relative;
  top: -2px;
  font-size: 32px;
  font-size: 2rem;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-unit {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value-unit {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-unit {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-unit.-mr_m {
    margin-right: 9px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value-unit.-mr_m {
    margin-right: 28px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-unit.-ml_m {
    margin-left: 9px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value-unit.-ml_m {
    margin-left: 28px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__value-unit.-ml_s {
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__value-unit.-ml_s {
    margin-left: 8px;
  }
}

.p-understand__img img {
  width: 100%;
}

@media print, screen and (min-width: 48em ) {
  .p-understand__img-contents {
    width: 58%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-right: 35px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__img-contents.-reverse {
    padding-right: 0;
    padding-left: 35px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-understand__img-img {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__img-img {
    width: 65%;
  }
}
.p-understand__img-img img {
  width: 100%;
}

.p-understand__item.-item_01 .p-understand__share {
  display: -ms-grid;
  display: grid;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__item.-item_01 .p-understand__share {
    grid: "head" auto "body" 80px "img" 1fr/1fr;
    gap: 30px 0px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item.-item_01 .p-understand__share {
    grid: "head img" 90px "body img" 1fr/272px 1fr;
    gap: 0px 32px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item.-item_01 .p-understand__heading {
    grid-area: head;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__item.-item_01 .p-understand__value {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    margin-right: 24px;
    font-size: 120px;
    font-size: 7.5rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item.-item_01 .p-understand__value {
    margin-top: -28px;
    font-size: 150px;
    font-size: 9.375rem;
  }
}
@media print, screen and (min-width: 80em ) {
  .p-understand__item.-item_01 .p-understand__value {
    font-size: 200px;
    font-size: 12.5rem;
  }
}
.p-understand__item.-item_01 .p-understand__share-body {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: body;
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand__item.-item_01 .p-understand__share-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: -22px;
  }
}
.p-understand__item.-item_01 .p-understand__img {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: img;
}
@media print, screen and (min-width: 48em ){
  .p-callout__col.-image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-callout__col.-text {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-point-block__area.-image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-point-block > .p-point-block__area.-image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
  .p-point-block:nth-child(2n) > .p-point-block__area.-image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
  .p-point-block__area.-heading {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-point-block:nth-child(2n) > .p-point-block__area.-heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-point-block__area.-body {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
  .p-point-block:nth-child(2n) > .p-point-block__area.-body {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .p-cta-banner__area.-text {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-understand__item.-item_01 .p-understand__share-body {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
  .p-point-block:nth-child(2n) > .p-understand__share-body {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 61.25em ){
  .p-cta-banner__area.-img {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-cta-banner__layout > .p-cta-banner__area.-text {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-cta-banner__area.-button {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
  }
  .p-understand__item.-item_01 .p-understand__img {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand__item.-item_01 .p-understand__img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media print, screen and (min-width: 48em ) {
  .p-understand.-half-img .p-understand__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-half-img .p-understand__img-contents {
    width: 50%;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand.-half-img .p-understand__img-img {
    padding-right: 46px;
    padding-left: 46px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-half-img .p-understand__img-img {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-half-img .p-understand__img-img img {
    width: auto;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-half-img .p-understand__img-img img.-w_100 {
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand.-half-img .p-understand__img-img.-sp_full {
    padding-right: 0;
    padding-left: 0;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-understand.-half-img.-reverse .p-understand__item {
    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;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-understand.-half-img.-reverse .p-understand__img-contents {
    padding-right: 0;
    padding-left: 35px;
  }
}

.p-recruit-cta {
  background-color: #fff;
}
@media only screen and (max-width: 47.9375em ) {
  .p-recruit-cta {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-recruit-cta {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-recruit-cta__inner {
    padding: 28px 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-recruit-cta__inner {
    padding: 22px 60px;
  }
}

.p-recruit-cta__heading {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 47.9375em ) {
  .p-recruit-cta__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-recruit-cta__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-recruit-cta__heading {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-recruit-cta__heading {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-recruit-cta__buttons {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-recruit-cta__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-recruit-cta__buttons .c-button {
    width: calc(50% - 40px);
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-recruit-cta__buttons .c-button:last-of-type {
    margin-top: 10px;
  }
}

.p-culture-block {
  margin-top: -10px;
}
.p-culture-block.-system {
  margin-top: 10px;
}

@media print, screen and (min-width: 48em ) {
  .p-culture-block__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-right: -10px;
  }
}

.p-culture-block__item {
  background-color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 10px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-culture-block__item {
    padding-top: 10px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-culture-block__item {
    width: calc(50% - 10px);
    margin-right: 10px;
    padding-top: 26px;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 30px;
  }
}

.p-culture-block__sub {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
  font-weight: 700;
  font-size: 17px;
  font-size: 1.0625rem;
  display: inline-block;
}

.p-culture-block__num {
  font-size: 27px;
  font-size: 1.6875rem;
}

.p-culture-block__head {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em ) {
  .p-culture-block__head {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-culture-block__head {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-culture-block__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-culture-block__head {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

.p-culture-block-system {
  background-color: #f7f7f7;
  margin-top: 10px;
}
@media only screen and (max-width: 47.9375em ) {
  .p-culture-block-system {
    padding: 30px 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-culture-block-system {
    padding: 26px 32px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-culture-block-system__text {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-culture-block-system__text {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple {
    margin-top: 36px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple {
    margin-top: 44px;
  }
}

.p-flow-simple__item {
  position: relative;
  background-color: #fff;
  margin-top: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__item {
    padding-top: 38px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 32px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple__item {
    padding-top: 36px;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 36px;
  }
}
.p-flow-simple__item:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 15px 0 15px;
  border-color: #dddddd transparent transparent transparent;
  bottom: -26px;
  right: 50%;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__item:last-of-type {
    margin-bottom: 0;
  }
}
.p-flow-simple__item:last-of-type:after {
  display: none;
}

.p-flow-simple__num {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-weight: bold;
  display: block;
  color: #aa8f7b;
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__num {
    font-size: 28px;
    font-size: 1.75rem;
    top: -12px;
    width: 46px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple__num {
    font-size: 32px;
    font-size: 2rem;
    top: -14px;
    width: 66px;
  }
}

.p-flow-simple__head {
  font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__head {
    font-size: 16px;
    font-size: 1rem;
    margin-top: -4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple__head {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-flow-simple__text {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__text {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 0;
    padding-left: 46px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple__text {
    margin-top: -2px;
    padding-left: 66px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__text.-sp_mt {
    margin-top: 20px;
  }
}

.p-flow-simple__link a {
  display: block;
  text-align: center;
}
.p-flow-simple__link a.-tl_l {
  text-align: left;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-simple__link a {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple__link {
    margin-top: 4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-simple__link.-mt_l {
    margin-top: 8px;
  }
}

.p-flow-simple.-inverted .p-flow-simple__item {
  background-color: #fff;
}

@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule {
    margin-top: 36px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule {
    margin-top: 44px;
  }
}

.p-flow-schedule__item {
  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;
  border-bottom: 1px solid #dddddd;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__item {
    padding-top: 18px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__item {
    padding-top: 21px;
    padding-bottom: 28px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__item:first-of-type {
    padding-top: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__item:first-of-type {
    padding-top: 0;
  }
}
.p-flow-schedule__item:last-of-type {
  border-bottom: none;
}

.p-flow-schedule__time {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-weight: bold;
  display: block;
  color: #aa8f7b;
  position: relative;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__time {
    font-size: 18px;
    font-size: 1.125rem;
    top: 0;
    width: 60px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__time {
    font-size: 24px;
    font-size: 1.5rem;
    top: -5px;
    width: 115px;
  }
}

.p-flow-schedule__head {
  font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__head {
    font-size: 16px;
    font-size: 1rem;
    margin-top: -4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__head {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p-flow-schedule__text {
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__text {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__text {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: -8px;
    padding-left: 115px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__text.-sp_mt {
    margin-top: 20px;
  }
}

.p-flow-schedule__link a {
  display: block;
  text-align: center;
}
.p-flow-schedule__link a.-tl_l {
  text-align: left;
}
@media only screen and (max-width: 47.9375em ) {
  .p-flow-schedule__link a {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__link {
    margin-top: 4px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-flow-schedule__link.-mt_l {
    margin-top: 8px;
  }
}

.p-flow-schedule.-inverted .p-flow-simple__item {
  background-color: #fff;
}

.p-stamp {
  position: absolute;
}
.p-stamp.-top_right {
  right: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-stamp.-top_right {
    top: 15px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-stamp.-top_right {
    top: 20px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-stamp.-bottom_right {
    bottom: 8px;
    right: 8px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-stamp.-bottom_right {
    bottom: 20px;
    right: 20px;
  }
}

.p-ec-heading {
  position: relative;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-heading {
    padding-top: 30px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-heading {
    padding-top: 58px;
  }
}
.p-ec-heading > * {
  display: block;
  width: 100%;
  text-align: center;
}

.p-ec-heading__title {
  position: relative;
  z-index: 10;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-heading__title {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-heading__title {
    font-size: 32px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-heading__title.-left {
    text-align: left;
  }
}

.p-ec-heading__bg {
  position: absolute;
  z-index: 0;
  bottom: -0.05em;
  left: 50%;
  line-height: 1;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  letter-spacing: -0.04em;
  color: #F7F7F7;
  white-space: nowrap;
  -ms-user-select: none;
  /* IE 10+ */
  -moz-user-select: -moz-none;
  -webkit-user-select: none;
  user-select: none;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-heading__bg {
    font-size: 66px;
    font-size: 4.125rem;
    width: auto;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-heading__bg {
    font-size: 120px;
    font-size: 7.5rem;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-heading__bg > span {
    display: none;
  }
}
.p-ec-heading__bg.-left {
  text-align: left;
}
.p-ec-heading__bg.-color-dark-gray {
  color: #EDEDED;
}

.p-ec-heading__desc {
  position: relative;
  z-index: 10;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-heading__desc {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-heading__desc {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-heading__desc {
    margin-top: 10px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-heading__desc {
    margin-top: -7px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-ec-heading__desc {
    margin-top: -11px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-heading__desc br {
    display: none;
  }
}

.p-ec-feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
  max-width: 1060px;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 40px;
    margin: 52px auto 0;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature {
    -ms-flex-pack: distribute;
        justify-content: space-around;
    margin: 84px auto 0;
  }
}

.p-ec-feature__li {
  position: relative;
  z-index: 10;
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature__li {
    width: 220px;
    min-height: 220px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature__li {
    width: 250px;
    min-height: 250px;
  }
}
.p-ec-feature__li::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  background: #F7F7F7;
  z-index: -1;
}

.p-ec-feature__num {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #AA8F7B;
  line-height: 1;
  display: block;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature__num {
    font-size: 32px;
    font-size: 2rem;
    margin-top: -16px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature__num {
    font-size: 56px;
    font-size: 3.5rem;
    margin-top: -28px;
  }
}

.p-ec-feature__image {
  aspect-ratio: 1/1;
  width: 100px;
  display: block;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature__image {
    margin: 12px 0 12px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature__image {
    margin: 12px 0 12px;
  }
}
.p-ec-feature__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-ec-feature__text {
  font-weight: 600;
  line-height: 1.6;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature__text {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature__text {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.p-ec-feature__sub {
  font-weight: 600;
  line-height: 2;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature__sub {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature__sub {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-ec-feature__note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-feature__note {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-feature__note {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-ec-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 0;
  padding-right: 5.3333%;
  padding-left: 5.3333%;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-visual {
    height: 133vw;
    max-height: 550px;
    margin: 55px 0 46px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual {
    height: 84.3vh;
    min-height: 720px;
    max-height: 60.5vw;
    background-color: #000;
    margin: 80px 0 30px;
  }
}

.p-ec-visual__carousel {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  /* SPのグラデーション背景 */
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__carousel {
    height: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__carousel {
    height: 100%;
  }
}

.p-ec-visual__nav-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

.p-ec-visual__list {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.p-ec-visual__item {
  display: block;
  opacity: 0;
  position: absolute;
  z-index: 20;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity linear 0.85s;
  transition: opacity linear 0.85s;
}
.p-ec-visual__item.-active {
  z-index: 30;
}
.p-ec-visual__item.-visible {
  opacity: 1;
}
.p-ec-visual__item.-visible .p-ec-visual__bg img {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transition: opacity linear 0.85s, -webkit-transform linear 10s;
  transition: opacity linear 0.85s, -webkit-transform linear 10s;
  transition: opacity linear 0.85s, transform linear 10s;
  transition: opacity linear 0.85s, transform linear 10s, -webkit-transform linear 10s;
}
.p-ec-visual__item:not(.-content) .p-ec-visual__bg:before {
  display: block;
  position: absolute;
  z-index: 20;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgb(2, 0, 36);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(2, 0, 36)), color-stop(0%, rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgb(2, 0, 36) 0%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  content: "";
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__item:not(.-content) .p-ec-visual__bg:before {
    height: 50%;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__item:not(.-content) .p-ec-visual__bg:before {
    height: 100%;
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-visual__item.-content {
    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;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__item.-content {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: clamp(600px, 37.5%, 700px) 1fr;
    grid-template-columns: clamp(600px, 37.5%, 700px) 1fr;
  }
}

.p-ec-visual__bg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-ec-visual__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.075, 1.075);
          transform: scale(1.075, 1.075);
}

.p-ec-visual__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 20;
  -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 only screen and (max-width: 61.1875em ) {
  .p-ec-visual__block {
    min-height: 250px;
    padding: 24px 5.3333vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__block {
    padding-left: 5.3333vw;
  }
}

.p-ec-visual__block-title {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #fff;
  white-space: nowrap;
  line-height: 1.1;
}
.p-ec-visual__block-title .sub {
  display: block;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-visual__block-title {
    font-size: 28px;
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__block-title {
    margin-top: -0.05em;
    font-size: 64px;
    font-size: 4rem;
  }
}

.p-ec-visual__block-text {
  display: block;
  color: #fff;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__block-text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__block-text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-visual__block-text {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 16px;
    line-height: 1.6;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__block-text {
    font-size: 20px;
    font-size: 1.25rem;
    margin-top: 24px;
    line-height: 2;
  }
}

.p-ec-visual__block-button {
  display: block;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-visual__block-button {
    margin-top: 16px;
    max-width: 400px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__block-button {
    margin-top: 56px;
    max-width: 280px;
  }
}

.p-ec-visual__nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
  z-index: 20;
  width: 100%;
  bottom: 0;
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__nav {
    padding-right: 30px;
  }
}

/* パルスアニメーション
----------------------------------------------------------------- */
@keyframes pulseMotion {
  0% {
    -webkit-transform: translate(-50%, -50%) scale(1, 1);
            transform: translate(-50%, -50%) scale(1, 1);
    background-color: rgba(170, 143, 123, 0.4);
  }
  40% {
    background-color: rgba(170, 143, 123, 0.4);
  }
  90% {
    -webkit-transform: translate(-50%, -50%) scale(3.5, 3.5);
            transform: translate(-50%, -50%) scale(3.5, 3.5);
    background-color: rgba(170, 143, 123, 0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) scale(3.5, 3.5);
            transform: translate(-50%, -50%) scale(3.5, 3.5);
    background-color: rgba(170, 143, 123, 0);
  }
}
.p-ec-visual__nav-item {
  display: block;
  position: relative;
  overflow: visible;
  width: 10px;
  height: 10px;
  margin-top: 24px;
  margin-bottom: 24px;
  padding: 0;
  background-color: transparent;
  border: none;
  border-radius: 50%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__nav-item {
    cursor: pointer;
    outline: none;
  }
}
.p-ec-visual__nav-item:before, .p-ec-visual__nav-item:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  content: "";
}
.p-ec-visual__nav-item:before {
  width: 100%;
  height: 100%;
  background-color: #D9D9D9;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
}
.p-ec-visual__nav-item:after {
  opacity: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: pulseMotion 1.4s linear infinite;
          animation: pulseMotion 1.4s linear infinite;
  -webkit-transition: opacity linear 0.4s;
  transition: opacity linear 0.4s;
  content: "";
}
.browser-is-ie .p-ec-visual__nav-item:after {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__nav-item:hover:before {
    -webkit-transform: translate(-50%, -50%) scale(1.67, 1.67);
            transform: translate(-50%, -50%) scale(1.67, 1.67);
  }
}
.p-ec-visual__nav-item:focus {
  outline: none;
}
.p-ec-visual__nav-item.-active:before {
  background-color: #aa8f7b;
}
.p-ec-visual__nav-item.-active:after {
  opacity: 1;
}

.p-ec-visual__msg {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__msg {
    padding-top: 29px;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__msg {
    margin-top: -20px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__main {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vw;
    max-height: 60vh;
  }
}
.p-ec-visual__main svg {
  position: absolute;
  z-index: 10;
  bottom: 40px;
  fill: #fff;
  left: 5.3333%;
}
@media only screen and (max-width: 40em ) {
  .p-ec-visual__main svg {
    width: 240px;
    height: 50px;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .p-ec-visual__main svg {
    width: 270px;
    height: 57px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__main svg {
    position: relative;
    bottom: auto;
    left: auto;
    width: 438px;
    height: 92px;
    -webkit-transition: fill linear 0.4s;
    transition: fill linear 0.4s;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__main svg {
    width: 438px;
    height: 92px;
  }
}

.p-ec-visual__sub {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  -webkit-transition: color linear 0.4s;
  transition: color linear 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__sub {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__sub {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__sub {
    color: #222222;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__sub {
    margin-top: 18px;
    font-size: 14px;
    font-size: 0.875rem;
    color: #fff;
    line-height: 2;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__sub {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .p-ec-visual__button {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual__button {
    width: 240px;
    margin-top: 29px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-visual__button {
    width: 280px;
  }
}
.p-ec-visual__button li {
  margin-top: 8px;
}
.p-ec-visual__button li:first-child {
  margin-top: 0;
}

/* ==========================================================================
* モディファイア
========================================================================= */
@media print, screen and (min-width: 48em ) {
  .p-ec-visual.-inverted .p-ec-visual__sub {
    color: #222222;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-visual.-inverted .p-ec-visual__main svg {
    fill: #222222;
  }
}

.p-ec-main-visual__main {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
  position: absolute;
  z-index: 30;
  padding-left: 5.3333%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-main-visual__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-main-visual__main {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-main-visual__main {
    font-size: 22px;
    font-size: 1.375rem;
    bottom: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-main-visual__main {
    font-size: 64px;
    font-size: 4rem;
    bottom: 50%;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
  }
}

.p-ec-main-visual__heading {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-main-visual__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-main-visual__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}

@media print, screen and (min-width: 48em ) {
  .p-ec-main-visual__small {
    font-size: 40px;
    font-size: 2.5rem;
  }
}

.p-ec-main-visual__eng {
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #8E8A89;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-main-visual__eng {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-main-visual__eng {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media only screen and (max-width: 61.1875em ) {
  .p-ec-main-visual__text {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 20px;
    line-height: 1.6;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-main-visual__text {
    font-size: 24px;
    font-size: 1.5rem;
    margin-top: 40px;
    line-height: 2;
  }
}

.p-ec-block {
  position: relative;
  overflow: hidden;
  z-index: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 5.3333%;
  background: #F7F7F7;
}

.p-ec-block__inner {
  max-width: 1440px;
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-block__inner {
    padding: 38px 0 75px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-block__inner {
    padding: 100px 0 104px;
  }
}

.p-ec-lineup {
  display: -ms-grid;
  display: grid;
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-lineup {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-ec-lineup__picture {
  display: block;
  width: 100%;
}
.p-ec-lineup__picture img {
  width: 100%;
  display: block;
}

.p-ec-lineup__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-lineup__content {
    padding: 38px 5.3333% 56px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-lineup__content {
    padding-left: 5.3333%;
  }
}

.p-ec-lineup__content-inner {
  width: 100%;
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-lineup__content-inner {
    max-width: 650px;
  }
}

.p-ec-lineup__text {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  margin-top: 24px;
  line-height: 1.8;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-lineup__text {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-lineup__text {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-lineup__text br {
    display: none;
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-lineup__text {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-lineup__text {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media only screen and (max-width: 61.1875em ) {
  .p-ec-lineup__button {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-lineup__button {
    margin-top: 32px;
    max-width: 280px;
  }
}

.p-grid {
  display: -ms-grid;
  display: grid;
}
@media only screen and (max-width: 47.9375em ) {
  .p-grid.-col-2 {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-grid.-col-2 {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-grid.-col-2 {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-grid.-col-3 {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
  }
}
@media print, screen and (min-width: 48em ) {
  .p-grid.-col-3 {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-grid.-col-3 {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-grid.-gap-40_20 {
    gap: 20px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-grid.-gap-40_20 {
    gap: 40px;
  }
}

.p-voice {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  text-align: justify;
  padding-right: 7.5%;
  padding-left: 7.5%;
}
@media only screen and (max-width: 47.9375em ) {
  .p-voice {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-voice {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 2;
  }
}
.p-voice:before, .p-voice:after {
  display: block;
  position: absolute;
  font-family: brandon-grotesque, "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial", sans-serif;
  font-style: normal;
  font-weight: 700;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 70px;
  font-size: 4.375rem;
  color: #dddddd;
  line-height: 1;
}
@media only screen and (max-width: 40em ) {
  .p-voice:before, .p-voice:after {
    font-size: 50px;
    font-size: 3.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-voice:before, .p-voice:after {
    font-size: 80px;
    font-size: 5rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-voice:before, .p-voice:after {
    font-size: 96px;
    font-size: 6rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice:before, .p-voice:after {
    font-size: 108px;
    font-size: 6.75rem;
  }
}
.p-voice:before {
  top: -18px;
  left: 0;
  content: "“";
}
@media only screen and (max-width: 40em ) {
  .p-voice:before {
    top: -9px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-voice:before {
    top: -26px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice:before {
    top: -30px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .p-voice:before {
    top: -22px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .browser-is-ie .p-voice:before {
    top: -24px;
  }
}
.p-voice:after {
  bottom: -43px;
  right: 0;
  content: "”";
}
@media only screen and (max-width: 40em ) {
  .p-voice:after {
    bottom: -25px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-voice:after {
    bottom: -51px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .p-voice:after {
    bottom: -55px;
  }
}

.p-ec-voice {
  display: -ms-grid;
  display: grid;
  background: #fff;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-voice {
    padding: 24px;
    gap: 24px;
    -ms-grid-columns: 92px 1fr;
    grid-template-columns: 92px 1fr;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-voice {
    padding: 32px;
    gap: 32px;
    -ms-grid-columns: 140px 1fr;
    grid-template-columns: 140px 1fr;
  }
}

.p-ec-voice__picture {
  display: block;
  aspect-ratio: 140/176;
  background: #a18a84;
  width: 100%;
}
.p-ec-voice__picture.-hyo_on_m2 {
  background-color: #4d4548;
}
.p-ec-voice__picture.-hyo_on_m5 {
  background-color: #383442;
}
.p-ec-voice__picture.-zero_chilled {
  background-color: #325046;
}
.p-ec-voice__picture.-zero_chilled.-ib {
  background-color: #314263;
}
.p-ec-voice__picture.-zero_chilled.-kh {
  background-color: #6b6531;
}
.p-ec-voice__picture.-zero_advance {
  background-color: #a7333c;
}
.p-ec-voice__picture.-zero_class {
  background-color: #22303a;
}
.p-ec-voice__picture.-furniel {
  background-color: #8d5a50;
}
.p-ec-voice__picture.-sakura_japan {
  background-color: #57233a;
}
.p-ec-voice__picture.-sv, .p-ec-voice__picture.-pro_class {
  background-color: #b98d72;
}
.p-ec-voice__picture.-wine_suit {
  background-color: #afaaa7;
}
.p-ec-voice__picture.-hyo_on_m2 {
  background-color: #4d4548;
}
.p-ec-voice__picture.-hyo_on_m5 {
  background-color: #383442;
}
.p-ec-voice__picture.-frosty {
  background-color: #a18a84;
}

.p-ec-voice__picture-inner {
  width: 100%;
  height: 100%;
  padding: 6px 4px 12px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.p-ec-voice__picture-inner img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-ec-voice__name {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 16px;
  display: block;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-voice__name {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-voice__name {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-voice__name {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-voice__name {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-ec-voice__heading {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-voice__heading {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-voice__heading {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-voice__heading {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-voice__heading {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 61.1875em ) {
  .p-ec-voice__content {
    padding-top: 8px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-voice__content {
    padding-top: 16px;
  }
}

.p-ec-voice__text {
  margin-top: 16px;
  line-height: 1.6;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-voice__text {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-voice__text {
    font-size: 16px;
    font-size: 1rem;
  }
}

.p-ec-voice__tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media only screen and (max-width: 61.1875em ) {
  .p-ec-voice__tag {
    font-size: 12px;
    font-size: 0.75rem;
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-ec-voice__tag {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 24px;
  }
}

.p-ec-modal {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  z-index: 10000000000;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  left: 0;
  top: 0;
  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;
  -webkit-transition: visibility 0s linear 0.3s, opacity 0.3s;
  transition: visibility 0s linear 0.3s, opacity 0.3s;
}
.p-ec-modal.-active {
  visibility: visible;
  opacity: 1;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.p-ec-modal__close {
  position: absolute;
  width: 40px;
  height: 40px;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-modal__close {
    top: 20px;
    right: 20px;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-modal__close {
    top: 30px;
    right: 30px;
  }
}
.p-ec-modal__close::before, .p-ec-modal__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 1px;
  background: #fff;
}
.p-ec-modal__close::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.p-ec-modal__close::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
@media (hover: hover) {
  .p-ec-modal__close:hover::before, .p-ec-modal__close:hover::after {
    background: #aa8f7b;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .p-ec-modal__close.-pc {
    display: none;
  }
}
@media print, screen and (min-width: 48em ) {
  .p-ec-modal__close.-sp {
    display: none;
  }
}

.p-cart-button {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: block;
  border: none;
  background: #aa8f7b;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0;
  z-index: 8000;
  visibility: hidden;
}
@media only screen and (max-width: 61.1875em ) {
  .p-cart-button {
    bottom: 45px;
    right: 5.3333%;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-cart-button {
    top: 100px;
    right: 40px;
  }
}
.p-cart-button::after {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  position: relative;
  background-image: url(/common/svg/icon_cart.svg);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 11;
  margin-right: 2px;
}
@media (hover: hover) {
  .p-cart-button:hover {
    background: #222222;
  }
}
.p-cart-button.-active {
  visibility: visible;
  opacity: 1;
}

.f-content-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media only screen and (max-width: 47.9375em ) {
  .f-form {
    margin-top: 45px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-form {
    margin-top: 74px;
  }
}

.f-heading-1 {
  position: relative;
  line-height: 1.4;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .f-heading-1 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-heading-1 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .f-heading-1 {
    margin-top: 10px;
    font-size: 26px;
    font-size: 1.625rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-heading-1 {
    margin-top: 10px;
    font-size: 34px;
    font-size: 2.125rem;
  }
}

.f-heading-3 {
  display: block;
  position: relative;
  line-height: 1.4;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .f-heading-3 {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-heading-3 {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .f-heading-3 {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-heading-3 {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .f-heading-3 {
    font-size: 16px;
    font-size: 1rem;
  }
}

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.f-heading-1.-center {
  text-align: center;
}

.f-input-text {
  position: relative;
  z-index: 0;
  /* アイコン要素 */
  /* エラーアイコン */
  /* サクセスアイコン */
}
.f-input-text > input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  z-index: 10;
  top: -2px;
  width: 100%;
  background-color: #F7F7F7;
  border: solid 1px #dddddd;
  border-radius: 0;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-size: 16px;
  font-size: 1rem;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .f-input-text > input {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 18px;
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-input-text > input {
    padding-top: 16px;
    padding-bottom: 18px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.f-input-text > input[type=number]::-webkit-outer-spin-button, .f-input-text > input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.f-input-text > input[type=number] {
  -moz-appearance: textfield;
}
.f-input-text > input::-webkit-input-placeholder {
  color: #CCCCCC;
}
.f-input-text > input:-ms-input-placeholder {
  color: #CCCCCC;
}
.f-input-text > input::-moz-placeholder {
  color: #CCCCCC;
}
.f-input-text > input:focus {
  outline: none;
  background-color: #fff;
}
.-error .f-input-text > input {
  background-color: rgba(209, 0, 0, 0.06);
  border-color: #d10000;
}
.-success .f-input-text > input {
  background-color: #fff;
  border-color: #dddddd;
}
.f-input-text:after {
  display: block;
  position: absolute;
  z-index: 20;
  visibility: hidden;
  opacity: 0;
  top: 50%;
  right: 20px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 22px;
  height: 22px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: "";
  background-repeat: no-repeat;
  background-position: 0 0;
}
.-error .f-input-text:after {
  visibility: visible;
  opacity: 1;
  background-image: url(/common/svg/icon_error.svg);
}
.-success .f-input-text:after {
  visibility: visible;
  opacity: 1;
  background-image: url(/common/svg/icon_success.svg);
}

.f-label {
  margin-right: 8px;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: bold;
}
@media only screen and (max-width: 47.9375em ) {
  .f-label {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-label {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .f-label {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-label {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .f-label {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.f-label:after {
  display: none;
  margin-left: 6px;
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #d10000;
  text-align: center;
  line-height: 1.65;
  content: "*";
}
@media only screen and (max-width: 47.9375em ) {
  .f-label:after {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-label:after {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .f-label:after {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-label:after {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .f-label:after {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.-required .f-label:after {
  display: inline-block;
}
.browser-is-safari.device-is-mobile .f-label:after {
  line-height: 1.6;
}
.browser-is-ff .f-label:after {
  line-height: 1.55;
}
.browser-is-ie .f-label:after {
  line-height: 1.55;
}

.f-label-container {
  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;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 48em ) {
  .f-label-container {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.f-label-msg {
  display: none;
  width: 100%;
  color: #d10000;
}
@media only screen and (max-width: 47.9375em ) {
  .f-label-msg {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-label-msg {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    width: auto;
    margin-left: 5px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.f-label-msg.-visible {
  display: block;
}

@media only screen and (max-width: 47.9375em ) {
  .f-leading {
    margin-top: 44px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-leading {
    margin-top: 32px;
  }
}

.f-radio {
  display: inline-block;
  margin-left: 25px;
}
.f-radio:first-child {
  margin-left: 0;
}
.f-radio input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media only screen and (max-width: 47.9375em ) {
  .f-radio input {
    display: none;
  }
}
.f-radio input:checked + label {
  color: #aa8f7b;
}
.f-radio input:checked + label:before {
  border-color: #aa8f7b;
}
.f-radio input:checked + label:after {
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
}
.f-radio label {
  position: relative;
  padding-left: 30px;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .f-radio label {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .f-radio label:hover {
    color: #aa8f7b;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .f-radio label:hover:before {
    border-color: #aa8f7b;
  }
}
.f-radio label:before, .f-radio label:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  border-radius: 50%;
  content: "";
}
.f-radio label:before {
  left: 0;
  width: 20px;
  height: 20px;
  border-style: solid;
  border-width: 2px;
  border-color: #dddddd;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
@media only screen and (max-width: 47.9375em ) {
  .f-radio label:before {
    top: -3px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-radio label:before {
    top: 0;
  }
}
.f-radio label:after {
  left: 10px;
  width: 10px;
  height: 10px;
  background-color: #aa8f7b;
  -webkit-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
@media only screen and (max-width: 47.9375em ) {
  .f-radio label:after {
    top: 7px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-radio label:after {
    top: 10px;
  }
}

/*****************************************
* モディファイア
*****************************************/
.f-radio--sp-block {
  margin-top: 8px;
}
@media only screen and (max-width: 47.9375em ) {
  .f-radio--sp-block {
    display: block;
    margin-left: 0;
  }
}

.f-required-tag {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
  margin-left: 6px;
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #d10000;
  text-align: center;
  line-height: 1.65;
}
@media only screen and (max-width: 47.9375em ) {
  .f-required-tag {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-required-tag {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media only screen and (max-width: 47.9375em ) {
  .f-required-tag {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-required-tag {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .f-required-tag {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.f-required-tag.-inline {
  display: inline-block;
}
.-required .f-required-tag {
  display: inline-block;
}
.browser-is-safari.device-is-mobile .f-required-tag {
  line-height: 1.6;
}
.browser-is-ff .f-required-tag {
  line-height: 1.55;
}
.browser-is-ie .f-required-tag {
  line-height: 1.55;
  margin-bottom: 5px;
}

@media only screen and (max-width: 47.9375em ) {
  .f-sentence {
    margin-top: 16px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-sentence {
    margin-top: 18px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.f-sentence:first-child {
  margin-top: 0;
}
.f-sentence span {
  color: #d10000;
}
@media only screen and (max-width: 47.9375em ) {
  .f-sentence br {
    display: none;
  }
}

/*****************************************
* モディファイア
*****************************************/
.f-sentence.-form_msg, .f-sentence.-em, .f-sentence.-center {
  text-align: center;
}

.f-sentence.-form_msg {
  font-size: 13px;
  font-size: 0.8125rem;
}

.f-sentence.-red {
  color: #d10000;
}
.f-sentence.-em {
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  color: #aa8f7b;
}
@media only screen and (max-width: 47.9375em ) {
  .f-sentence.-em {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-sentence.-em {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
.f-sentence.-form_msg {
  margin-top: 8px;
  color: #d10000;
}
.f-sentence.-form_msg.-hide {
  display: none;
}
@media only screen and (max-width: 47.9375em ) {
  .f-sentence.-margin_l {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-sentence.-margin_l {
    margin-top: 36px;
  }
}

.f-unit {
  width: 100%;
}
@media only screen and (max-width: 47.9375em ) {
  .f-unit {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit {
    width: auto;
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-max {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-half {
    width: 48%;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-half:last-child {
    margin-left: 4%;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-half.-ml_none:last-child {
    margin-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-small {
    width: 245px;
    margin-left: 42px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-small:first-child {
    margin-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-lmargin {
    margin-left: 42px;
  }
}
@media only screen and (max-width: 47.9375em ) {
  .f-unit.-tmargin {
    margin-top: 16px;
  }
}
.f-unit.-lineup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-lineup {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-max3 {
    width: calc(33.33% - 42px);
    margin-left: 42px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-max3:first-child {
    margin-left: 0;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-unit.-max3:nth-child(3n+1) {
    margin-left: 0;
  }
}

.f-unit__list {
  margin-top: 5px;
}

.f-field {
  border: none;
}
@media only screen and (max-width: 47.9375em ) {
  .f-field {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-field {
    margin-top: 38px;
  }
}
.f-field:first-child {
  margin-top: 0;
}

.f-textarea {
  position: relative;
  z-index: 0;
  /* アイコン要素 */
  /* エラーアイコン */
  /* サクセスアイコン */
}
.f-textarea > textarea {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  -webkit-tap-highlight-color: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  z-index: 10;
  width: 100%;
  max-width: 100%;
  background-color: #f7f7f7;
  border-width: 1px;
  border-style: solid;
  border-color: #dddddd;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-size: 16px;
  font-size: 1rem;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  resize: vertical;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
@media only screen and (max-width: 47.9375em ) {
  .f-textarea > textarea {
    min-height: 7.5rem;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 18px;
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-textarea > textarea {
    min-height: 12.5rem;
    padding-top: 16px;
    padding-bottom: 18px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.f-textarea > textarea::-webkit-input-placeholder {
  color: #cccccc;
}
.f-textarea > textarea:-ms-input-placeholder {
  color: #cccccc;
}
.f-textarea > textarea::-moz-placeholder {
  color: #cccccc;
}
.browser-is-ie .f-textarea > textarea {
  overflow: auto;
}
.f-textarea > textarea:focus {
  outline: none;
  background-color: #fff;
}
.-error .f-textarea > textarea {
  background-color: rgba(209, 0, 0, 0.06);
  border-color: #d10000;
}
.-success .f-textarea > textarea {
  background-color: #fff;
  border-color: #dddddd;
}
.f-textarea:after {
  display: block;
  position: absolute;
  z-index: 20;
  visibility: hidden;
  opacity: 0;
  top: 20px;
  right: 20px;
  width: 22px;
  height: 22px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: "";
  background-repeat: no-repeat;
  background-position: 0 0;
}
.-error .f-textarea:after {
  visibility: visible;
  opacity: 1;
  background-image: url(/common/svg/icon_error.svg);
}
.-success .f-textarea:after {
  visibility: visible;
  opacity: 1;
  background-image: url(/common/svg/icon_success.svg);
}

.f-select {
  display: block;
  position: relative;
  width: 100%;
  background: #f7f7f7;
  /* アイコン要素 */
  /* エラーアイコン */
  /* サクセスアイコン */
}
.f-select > select {
  z-index: 1;
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  height: 2.75 rem;
  background-color: transparent;
  border: solid 1px #dddddd;
  border-radius: 0;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  font-size: 16px;
  font-size: 1rem;
  color: #cccccc;
  line-height: 1.5;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em ) {
  .f-select > select {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 18px;
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-select > select {
    height: auto;
    padding-top: 16px;
    padding-bottom: 18px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.f-select > select::-ms-expand {
  display: none;
}
.f-select > select:focus {
  color: #222222;
}
.f-select > select > option {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
}
.-error .f-select > select {
  border-color: #d10000;
}
.f-select svg {
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 10px;
  height: 6px;
  fill: #222222;
}
.-error .f-select > select, .-success .f-select > select {
  color: #222222;
}
.-error .f-select {
  background-color: rgba(209, 0, 0, 0.06);
  border-color: #d10000;
}
.-success .f-select {
  background-color: #fff;
  border-color: #dddddd;
}
.f-select:after {
  display: block;
  position: absolute;
  z-index: 20;
  visibility: hidden;
  opacity: 0;
  top: 50%;
  right: 40px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 22px;
  height: 22px;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: "";
  background-repeat: no-repeat;
  background-position: 0 0;
}
.-error .f-select:after {
  visibility: visible;
  opacity: 1;
  background-image: url(/common/svg/icon_error.svg);
}
.-success .f-select:after {
  visibility: visible;
  opacity: 1;
  background-image: url(/common/svg/icon_success.svg);
}

.f-step {
  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;
  border-style: solid;
  border-color: #dddddd;
  border-width: 1px 0 1px 0;
}
@media only screen and (max-width: 47.9375em ) {
  .f-step {
    padding-top: 12px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-step {
    padding-top: 24px;
    padding-bottom: 28px;
  }
}

.f-step__item {
  position: relative;
  color: #aaaaaa;
}
@media only screen and (max-width: 47.9375em ) {
  .f-step__item {
    margin-left: 40px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-step__item {
    margin-left: 85px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.f-step__item:before {
  display: block;
  position: absolute;
  top: 0;
  width: 5px;
  height: 10px;
  content: url(/common/svg/arrow_right_darkgray.svg);
}
@media only screen and (max-width: 47.9375em ) {
  .f-step__item:before {
    left: -23px;
  }
}
@media print, screen and (min-width: 48em ) {
  .f-step__item:before {
    left: -45px;
  }
}
.f-step__item:first-child {
  margin-left: 0;
}
.f-step__item:first-child:before {
  display: none;
}
.f-step__item.-active {
  color: #222222;
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 47.9375em ) {
  .f-step__item.-active {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}
@media print, screen and (min-width: 48em ) {
  .f-step__item.-active {
    font-family: "YakuHanJP", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial";
  }
}

/* -----------------------------------------------------------------
/* 下からスワイプ
----------------------------------------------------------------- */
.u-swipe-from-bottom {
  opacity: 0;
  /* アニメーションスピード */
  /* 遅延時間 */
}
@media only screen and (max-width: 40em ) {
  .u-swipe-from-bottom {
    display: block;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .u-swipe-from-bottom {
    display: block;
  }
}
.u-swipe-from-bottom.-animation {
  -webkit-transition: opacity ease 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity ease 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity ease 0.7s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity ease 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
}
.u-swipe-from-bottom.-speed_mid.-animation {
  -webkit-transition: opacity ease 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity ease 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, opacity ease 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, opacity ease 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
.u-swipe-from-bottom.-delay_slow.-animation {
  -webkit-transition: opacity ease 0.7s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s;
  transition: opacity ease 0.7s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s, opacity ease 0.7s 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s, opacity ease 0.7s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s;
}
.u-swipe-from-bottom.-delay_moreslow.-animation {
  -webkit-transition: opacity ease 0.7s 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s;
  transition: opacity ease 0.7s 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s, opacity ease 0.7s 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s, opacity ease 0.7s 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s;
}
.u-swipe-from-bottom.-visible {
  opacity: 1;
  -webkit-transform: translate(0, 0) !important;
          transform: translate(0, 0) !important;
}

/* -----------------------------------------------------------------
/* 上からスワイプ
----------------------------------------------------------------- */
.u-swipe-from-top {
  display: block;
  opacity: 0;
}
.u-swipe-from-top.animation {
  -webkit-transition: opacity ease 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity ease 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity ease 0.7s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity ease 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
}
.u-swipe-from-top.-speed_mid.animation {
  -webkit-transition: opacity ease 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity ease 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, opacity ease 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, opacity ease 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
}
.u-swipe-from-top.visible {
  opacity: 1;
  -webkit-transform: translate(0, 0) !important;
          transform: translate(0, 0) !important;
}

/* -----------------------------------------------------------------
/* 文字が下から1文字ずつスワイプ出現
----------------------------------------------------------------- */
.u-text-from-bottom-container {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.u-text-from-bottom {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  position: relative;
  overflow: hidden;
}
.u-text-from-bottom.-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.u-text-from-bottom.-active:before {
  -webkit-transform: translate(50%, 0);
          transform: translate(50%, 0);
}
.u-text-from-bottom span {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  -webkit-transform: translate(0, 100%);
          transform: translate(0, 100%);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.u-text-from-bottom span.-active {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

/* -----------------------------------------------------------------
/* .u-br-**_to_**
/* **サイズ～**サイズの区間内のみで改行する
----------------------------------------------------------------- */
.u-br-m_to_l {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .u-br-m_to_l {
    display: block;
  }
}
@media print, screen and (min-width: 80em ) {
  .u-br-m_to_l {
    display: none;
  }
}

/* -----------------------------------------------------------------
/* .u-br-over_**
/* **サイズ以上で改行する
----------------------------------------------------------------- */
.u-br-over_m {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .u-br-over_m {
    display: block;
  }
}

.u-br-over_l {
  display: none;
}
@media print, screen and (min-width: 80em ) {
  .u-br-over_l {
    display: block;
  }
}

.u-br-over_xl {
  display: none;
}
@media print, screen and (min-width: 93.75em ) {
  .u-br-over_xl {
    display: block;
  }
}

/* -----------------------------------------------------------------
/* .u-br-under_**
/* **サイズ以下で改行する
----------------------------------------------------------------- */
@media only screen and (max-width: 40em ) {
  .u-br-under_xxxs {
    display: block;
  }
}
@media print, screen and (min-width: 40.0625em ) {
  .u-br-under_xxxs {
    display: none;
  }
}

@media print, screen and (min-width: 48em ) {
  .u-br-under_xs {
    display: none;
  }
}

.browser-is-ie .u-ie-image-height.-mah760 {
  max-height: 760px;
}
.browser-is-ie .u-ie-image-height.-mah440 {
  max-height: 440px;
}
.browser-is-ie .u-ie-image-height.-strength {
  max-height: 400px;
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .u-ie-image-height.-strength {
    max-height: 500px;
  }
}
@media print, screen and (min-width: 80em ) {
  .browser-is-ie .u-ie-image-height.-strength {
    max-height: 600px;
  }
}
@media print, screen and (min-width: 93.75em ) {
  .browser-is-ie .u-ie-image-height.-strength {
    max-height: 760px;
  }
}

.u-no-break {
  display: inline-block;
}

@media print, screen and (min-width: 48em ) {
  .u-no-break.-pc {
    display: inline-block;
  }
}

.browser-is-ie .u-ie-product-visual {
  max-height: 400px;
}
@media print, screen and (min-width: 48em ) {
  .browser-is-ie .u-ie-product-visual {
    max-height: 500px;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .browser-is-ie .u-ie-product-visual {
    max-height: 640px;
  }
}

.u-position-relative {
  position: relative;
}

.u-show-S {
  display: none;
}
@media print, screen and (min-width: 48em ) {
  .u-show-S {
    display: block;
  }
}

.u-show-M {
  display: none;
}
@media print, screen and (min-width: 61.25em ) {
  .u-show-M {
    display: block;
  }
}

.u-show-L {
  display: none;
}
@media print, screen and (min-width: 80em ) {
  .u-show-L {
    display: block;
  }
}

@media print, screen and (min-width: 48em ) {
  .u-hide-S {
    display: none;
  }
}

@media print, screen and (min-width: 61.25em ) {
  .u-hide-M {
    display: none;
  }
}

@media print, screen and (min-width: 48em ) {
  .u-s-mt-48 {
    margin-top: 48px;
  }
}

@media print, screen and (min-width: 48em ) {
  .u-s-mt-56 {
    margin-top: 56px;
  }
}

@media print, screen and (min-width: 48em ) {
  .u-s-mt-24 {
    margin-top: 24px;
  }
}

@media only screen and (max-width: 47.9375em ) {
  .u-xs-mt-24 {
    margin-top: 24px;
  }
}

.u-x-auto {
  margin-left: auto;
  margin-right: auto;
}

/* ==========================================================================
* 多言語対応
========================================================================== */
html.translated-ltr,
body.-translated {
  /* 検索
  ----------------------------------------------------------------- */
}
html.translated-ltr sup,
body.-translated sup {
  font-size: inherit;
  vertical-align: inherit;
}
html.translated-ltr .p-page-visual__en,
body.-translated .p-page-visual__en {
  display: none;
}
html.translated-ltr .p-section-heading__sub,
body.-translated .p-section-heading__sub {
  display: none !important;
}
html.translated-ltr .p-special-heading__eng,
body.-translated .p-special-heading__eng {
  display: none !important;
}
html.translated-ltr .p-strong > span:before,
body.-translated .p-strong > span:before {
  display: none;
}
html.translated-ltr .p-check.-special > *:first-of-type .p-strong:first-of-type,
body.-translated .p-check.-special > *:first-of-type .p-strong:first-of-type {
  margin: 0;
}
html.translated-ltr .p-check.-special > *:first-of-type .p-strong + .p-strong,
body.-translated .p-check.-special > *:first-of-type .p-strong + .p-strong {
  margin-left: 0;
}
@media only screen and (max-width: 69.3125em ) {
  html.translated-ltr .p-page-visual__heading,
  body.-translated .p-page-visual__heading {
    padding-top: 88px;
  }
}
html.translated-ltr .c-button.-header_search input,
html.translated-ltr .c-button.-search_list input,
body.-translated .c-button.-header_search input,
body.-translated .c-button.-search_list input {
  position: relative;
  z-index: 20;
  background-color: transparent;
  border-radius: 0;
  padding-top: 20px;
  padding-bottom: 22px;
  border: none;
  font-size: 16px;
  font-size: 1rem;
  color: #fff;
  display: block;
  width: 100%;
  cursor: pointer;
}
@media only screen and (max-width: 69.3125em ) {
  html.translated-ltr .l-header__main,
  body.-translated .l-header__main {
    padding-top: 148px;
  }
}
@media only screen and (max-width: 69.3125em ) {
  html.translated-ltr .l-header__search,
  body.-translated .l-header__search {
    top: 50px;
  }
}
@media only screen and (max-width: 69.3125em ) {
  html.translated-ltr .l-ec-menu__inner,
  body.-translated .l-ec-menu__inner {
    padding-right: 0;
    padding-left: 0;
  }
}
@media only screen and (max-width: 69.3125em ) {
  html.translated-ltr .l-ec-menu__cart,
  body.-translated .l-ec-menu__cart {
    padding-right: 20px;
    padding-left: 19px;
  }
}
html.translated-ltr[lang=zh-CN],
body.-translated[lang=zh-CN] {
  /* 強み
  ----------------------------------------------------------------- */
  /* 製品
  ----------------------------------------------------------------- */
}
html.translated-ltr[lang=zh-CN] font,
body.-translated[lang=zh-CN] font {
  font-family: "Microsoft Yahei";
}
html.translated-ltr[lang=zh-CN] .p-special-layout__inner,
body.-translated[lang=zh-CN] .p-special-layout__inner {
  width: 100%;
}
html.translated-ltr[lang=zh-CN] .p-section-column__head br,
body.-translated[lang=zh-CN] .p-section-column__head br {
  display: none;
}
html.translated-ltr[lang=zh-CN] .p-tag.-size_s,
body.-translated[lang=zh-CN] .p-tag.-size_s {
  width: 6em;
}
html.translated-ltr[lang=zh-TW],
body.-translated[lang=zh-TW] {
  /* 強み
  ----------------------------------------------------------------- */
  /* 製品
  ----------------------------------------------------------------- */
}
html.translated-ltr[lang=zh-TW] font,
body.-translated[lang=zh-TW] font {
  font-family: "Microsoft Yahei";
}
html.translated-ltr[lang=zh-TW] .p-special-layout__inner,
body.-translated[lang=zh-TW] .p-special-layout__inner {
  width: 100%;
}
html.translated-ltr[lang=zh-TW] .p-section-column__head br,
body.-translated[lang=zh-TW] .p-section-column__head br {
  display: none;
}
html.translated-ltr[lang=zh-TW] .p-tag.-size_s,
body.-translated[lang=zh-TW] .p-tag.-size_s {
  width: 6em;
}
@media print, screen and (min-width: 61.25em ) {
  html.translated-ltr[lang=en] .l-header__main-item > a, html.translated-ltr[lang=en] .l-header__main-item > button,
  body.-translated[lang=en] .l-header__main-item > a,
  body.-translated[lang=en] .l-header__main-item > button {
    padding-right: 2px;
    padding-left: 2px;
    font-size: 11px;
    font-size: 0.6875rem;
  }
}
@media print, screen and (min-width: 80em ) {
  html.translated-ltr[lang=en] .l-header__main-item > a, html.translated-ltr[lang=en] .l-header__main-item > button,
  body.-translated[lang=en] .l-header__main-item > a,
  body.-translated[lang=en] .l-header__main-item > button {
    padding-right: 6px;
    padding-left: 6px;
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 93.75em ) {
  html.translated-ltr[lang=en] .l-header__main-item > a, html.translated-ltr[lang=en] .l-header__main-item > button,
  body.-translated[lang=en] .l-header__main-item > a,
  body.-translated[lang=en] .l-header__main-item > button {
    padding-right: 18px;
    padding-left: 18px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em ) {
  html.translated-ltr[lang=en] .l-footer__columns,
  body.-translated[lang=en] .l-footer__columns {
    gap: 10px;
  }
}
@media print, screen and (min-width: 48em ) {
  html.translated-ltr[lang=en] .l-footer__col,
  body.-translated[lang=en] .l-footer__col {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
html.translated-ltr[lang=en] .l-footer__col-item > a,
body.-translated[lang=en] .l-footer__col-item > a {
  word-break: break-word;
}
html.translated-ltr[lang=en] .p-strong,
body.-translated[lang=en] .p-strong {
  margin: 0;
}
html.translated-ltr[lang=en] .c-sentence,
html.translated-ltr[lang=en] .p-link-panel__desc,
html.translated-ltr[lang=en] .p-product-edit-area > p,
html.translated-ltr[lang=en] .p-voice,
body.-translated[lang=en] .c-sentence,
body.-translated[lang=en] .p-link-panel__desc,
body.-translated[lang=en] .p-product-edit-area > p,
body.-translated[lang=en] .p-voice {
  text-align: initial;
}
html.translated-ltr[lang=en] .p-outline-ec,
body.-translated[lang=en] .p-outline-ec {
  width: 160px;
}
html.translated-ltr[lang=en] .p-tag.-size_s,
body.-translated[lang=en] .p-tag.-size_s {
  width: auto;
}
@media print, screen and (min-width: 48em ) {
  html.translated-ltr[lang=en] .c-button-container .c-button,
  html.translated-ltr[lang=en] .p-home-panel__link,
  html.translated-ltr[lang=en] .p-special-layout__button,
  body.-translated[lang=en] .c-button-container .c-button,
  body.-translated[lang=en] .p-home-panel__link,
  body.-translated[lang=en] .p-special-layout__button {
    max-width: 400px;
  }
}

/* 言語切り替え
----------------------------------------------------------------- */
.translated-ltr .l-header__main-item.-lang, body.-translated .l-header__main-item.-lang {
  display: none;
}

html[lang=ja] .p-lang-button.-ja, html[lang=auto] .p-lang-button.-ja {
  display: none;
  visibility: hidden;
}
html[lang=ja] .p-lang-button.-ja + .p-lang-button, html[lang=auto] .p-lang-button.-ja + .p-lang-button {
  padding-left: 0;
  margin-left: 0;
}
html[lang=ja] .p-lang-button.-ja + .p-lang-button:after, html[lang=auto] .p-lang-button.-ja + .p-lang-button:after {
  display: none;
}
html[lang=en] .p-lang-button.-en {
  display: none;
  visibility: hidden;
}
html[lang=zh-CN] .p-lang-button.-en a:after {
  display: none;
}
html[lang=zh-CN] .p-lang-button.-cn {
  display: none;
  visibility: hidden;
}
html[lang=zh-TW] .p-lang-button.-cn a:after {
  display: none;
}
html[lang=zh-TW] .p-lang-button.-tw {
  display: none;
  visibility: hidden;
}

.p-lang-switch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 19px;
  border-bottom: 1px solid #ccc;
  max-width: 200px;
  margin-right: auto;
  margin-left: auto;
}
@media print, screen and (min-width: 61.25em ) {
  .p-lang-switch {
    display: none;
  }
}
.translated-ltr .p-lang-switch, body.-translated .p-lang-switch {
  display: none;
}
.p-lang-switch li {
  line-height: 1;
}
@media only screen and (max-width: 69.3125em ) {
  .p-lang-switch li {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media print, screen and (min-width: 61.25em ) {
  .p-lang-switch li {
    font-size: 16px;
    font-size: 1rem;
  }
}
.p-lang-switch li + li {
  position: relative;
  padding-left: 10px;
  margin-left: 10px;
}
.p-lang-switch li + li:after {
  position: absolute;
  top: 0;
  left: 0;
  height: 18px;
  width: 1px;
  background-color: #dddddd;
  content: "";
}
.p-lang-switch li a {
  color: #222222;
  text-decoration: none;
  word-break: keep-all;
}

/* ==========================================================================
Print
========================================================================== */
@media print {
  body {
    padding-left: 0;
    width: 1400px;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  body.browser-is-ff {
    -webkit-transform: none;
    transform: none;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  body.browser-is-ie {
    -webkit-transform: none;
    transform: none;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    zoom: 0.77;
  }
  body.browser-is-edge {
    -webkit-transform: none;
    transform: none;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    zoom: 0.6;
  }
  .u-swipe-from-bottom {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important;
  }
  .p-series-block::before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
/* ==========================================================================
Vendor
========================================================================== */
