/*!**********************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./src_studio/assets/css/common.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ==================================================================
CSS information
style info :RESET
================================================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-size: 100%;
  vertical-align: baseline;
}

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

html {
  overflow-y: scroll;
}

body {
  line-height: 1;
}

blockquote, q {
  quotes: none;
}

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

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

ol, ul {
  list-style: none;
}

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

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

h1, h2, h3, h4, p {
  line-height: 1;
}

img {
  vertical-align: top;
  border: none;
}

table {
  font-size: inherit;
  font: 100%;
}

/*clearfix*/
.clearfix {
  min-height: 1px;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clear:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clear {
  display: inline-table;
  zoom: 1;
}

/* \*/
* html .clear {
  height: 1%;
}

.clear {
  display: block;
}

/* */
* html .clearfix {
  height: 1px;
  /*¥*/ /*/
height: auto;
overflow: hidden;
/**/
}

/* ==================================================================
CSS information
style info :グローバル変数
================================================================== */
/* @mixin secInnerWidth(){
} */
/* @mixin spFontSize($fSize) {
	font-size: calc($fSize / $spWidth * 100vw);
}
@mixin pcFontSize($fSize) {
	font-size: calc($fSize / $pcWidth * 100vw);
} */
@font-face {
  font-family: LINESeedJPStd;
  src: url(../font/LINESeedJP_OTF_Rg.woff) format("woff"), url(../font/LINESeedJP_OTF_Rg.woff2) format("woff2");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: LINESeedJPStd;
  src: url(../font/LINESeedJP_OTF_Bd.woff) format("woff"), url(../font/LINESeedJP_OTF_Bd.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: LINESeedJPStd;
  src: url(../font/LINESeedJP_OTF_Eb.woff) format("woff"), url(../font/LINESeedJP_OTF_Eb.woff2) format("woff2");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: LINESeedENStd;
  src: url(../font/LINESeedSans_W_Rg.woff) format("woff"), url(../font/LINESeedSans_W_Rg.woff2) format("woff2");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: LINESeedENStd;
  src: url(../font/LINESeedSans_W_Bd.woff) format("woff"), url(../font/LINESeedSans_W_Bd.woff) format("woff2");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: LINESeedENStd;
  src: url(../font/LINESeedSans_W_XBd.woff) format("woff"), url(../font/LINESeedSans_W_XBd.woff2) format("woff2");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: LINESeedKRStd;
  src: url(../font/LINESeedKR-Rg.woff) format("woff"), url(../font/LINESeedKR-Rg.woff2) format("woff2");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: LINESeedKRStd;
  src: url(../font/LINESeedKR-Bd.woff) format("woff"), url(../font/LINESeedKR-Bd.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: TTNormsPro;
  src: url(../font/TTNormsProComp-Rg.woff2) format("woff2");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: TTNormsPro;
  src: url(../font/TTNormsProComp-XBd.woff2) format("woff2");
  font-weight: 800;
  font-style: normal;
}
nav ul {
  list-style: none;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #181818;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

div, h1, h2, h3, h4, h5, p,
table, table *, ul, li, ol, dl, dt, dd, a, span,
header, footer, section, aside, article,
*::before, *::after {
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/*
CSSのデフォルトとして記述しておくと便利、img要素に設定するスタイルのまとめ
https://coliss.com/articles/build-websites/operation/css/sensible-defaults-for-img-elements.html
1.width/height属性によってコントロールされるアスペクト比を維持しつつ、画像のサイズを流動的に変更できるようにします。
2.画像の下にできる余白を取り除きます。
3.altテキストを斜体にして、周囲のテキストから視覚的に相殺します。
4.オプション: LQIP(Low-Quality Image Placeholders)用に背景を設定。
5.オプション: 回り込みシェイプ用にshape-outsideのmarginを設定。
*/
img {
  max-width: 100%; /* 1 */
  height: auto; /* 1 */
  vertical-align: middle; /* 2 */
  font-style: italic; /* 3 */
  background-repeat: no-repeat; /* 4 */
  background-size: cover; /* 4 */
  shape-margin: 0.75rem; /* 5 */
}

@media screen and (max-width: 768px) {
  img {
    width: 100%;
    height: auto;
  }
}
@media screen and (min-width: 769px) {
  img {
    max-width: none;
    width: 100%;
  }
}
:root {
  --scrollbar: 0;
}

html, body {
  -webkit-text-size-adjust: none;
}

body {
  background: #fff;
  color: #000;
  overflow: hidden;
}

body {
  font-family: LINESeedJPStd, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Meiryo", "Helvetica Neue", Arial, sans-serif;
}

html:lang(en) body {
  font-family: LINESeedENStd, "Noto Sans JP", "Helvetica Neue", HelveticaNeue, Arial, sans-serif;
}

html:lang(zh-TW) body {
  font-family: LINESeedENStd, "Noto Sans TC", sans-serif, "Helvetica Neue", HelveticaNeue, Arial, sans-serif;
}

html:lang(zh-CN) body {
  font-family: LINESeedJPStd, "Noto Sans SC", sans-serif, "Helvetica Neue", HelveticaNeue, Arial, sans-serif;
}

html:lang(ko) body {
  font-family: LINESeedKRStd, "Noto Sans KR", "Helvetica Neue", Arial, sans-serif;
}

/* IE HACK */
_:-ms-input-placeholder, :root body {
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", sans-serif;
}

/* html {
	::selection {
		background: 0 0;
		color: var.$color--Key;
	}
} */
/* body {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
} */
/* ==================================================================
CSS information
style info :共通
================================================================== */
/* --------------------------------------------------------
自動翻訳でのオーバーライド
-------------------------------------------------------- */
.skiptranslate {
  display: none;
}

body {
  top: 0 !important;
}

/* --------------------------------------------------------
FONT
-------------------------------------------------------- */
body {
  font-size: calc(0.0346666667 * (100vw - var(--scrollbarW)));
}

@media screen and (min-width: 769px) {
  body {
    font-size: calc(0.009375 * (100vw - var(--scrollbarW)));
  }
}
.fontTTRg {
  font-family: "TTNormsPro", sans-serif;
  font-weight: 400;
}
.fontTTXBd {
  font-family: "TTNormsPro", sans-serif;
  font-weight: 800;
}

/* --------------------------------------------------------
#nowloading
-------------------------------------------------------- */
#nowloading {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #fff url(../img/common/bg_pattern01.png);
  z-index: 9998;
  -webkit-transition: none;
  transition: none;
}

#nowloading_icon {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20vw;
  height: 23.2vw;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  z-index: 9991;
}

#nowloading_icon img {
  -webkit-animation: nowloadingAnime 2s infinite alternate forwards running;
          animation: nowloadingAnime 2s infinite alternate forwards running;
  width: 100%;
}

@-webkit-keyframes nowloadingAnime {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
    opacity: 0.6;
  }
}

@keyframes nowloadingAnime {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
    opacity: 0.6;
  }
}
@media screen and (min-width: 769px) {
  #nowloading_icon {
    width: 7.8125vw;
    height: 9.0625vw;
  }
}
/* --------------------------------------------------------
#allWrap
-------------------------------------------------------- */
#allWrap {
  position: relative;
  min-height: 100vh;
  background: url(../img/common/bg_pattern01.png);
  padding-top: calc(0.24 * (100vw - var(--scrollbarW)));
}

@media screen and (min-width: 769px) {
  #allWrap {
    padding-top: calc(0.075 * (100vw - var(--scrollbarW)));
  }
}
/* --------------------------------------------------------
.logo
-------------------------------------------------------- */
.logo {
  display: block;
  width: auto;
  height: auto;
}
.logo.--white .st1 {
  fill: #fff;
}

/* --------------------------------------------------------
.siteHeader
-------------------------------------------------------- */
.siteHeader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  z-index: 999;
  background-color: #fff;
  padding-bottom: 4%;
  --siteHeader-before-Blur: 10px;
}
.siteHeader.--fixed {
  position: fixed;
}
.siteHeader::before {
  content: "";
  position: absolute;
  inset: 0;
  -webkit-backdrop-filter: blur(var(--siteHeader-before-Blur));
          backdrop-filter: blur(var(--siteHeader-before-Blur));
  z-index: -1;
  height: 110svh;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translateZ(0px);
          transform: translateZ(0px);
  visibility: hidden;
}
.--spOpen .siteHeader::before {
  visibility: visible;
}
.siteHeader__wrapUpper {
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  flex-wrap: nowrap;
  -webkit-box-align: center;
          align-items: center;
}
.siteHeader__logo {
  width: 36%;
  position: absolute;
  top: 9.3333333333vw;
  left: 5.3333333333vw;
  z-index: 2;
}
.siteHeader__logo a {
  display: block;
}
.siteHeader__nav {
  position: relative;
  width: 100%;
  visibility: hidden;
  --siteHeader__nav-before-Height: 0vh;
}
.siteHeader__nav::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.8);
  height: var(--siteHeader__nav-before-Height);
  z-index: -1;
  /* .--spOpen & {
  	height: 100vh;
  } */
}
.--spOpen .siteHeader__nav {
  visibility: visible;
}
.siteHeader .siteNavSpBtn {
  z-index: 2;
}

@media screen and (max-width: 768px) {
  .siteHeader {
    /* pointer-events: none;

    &__logo {
    	pointer-events: auto;
    }
    &__nav {
    	pointer-events: auto;
    }
    &__lang {
    	pointer-events: auto;
    }
    .siteNavSpBtn {
    	pointer-events: auto;
    } */
  }
}
@media screen and (min-width: 769px) {
  .siteHeader {
    padding-bottom: 0.8854166667%;
  }
  .siteHeader::before {
    display: none;
  }
  .siteHeader__wrapUpper {
    -webkit-box-pack: end;
            justify-content: flex-end;
    height: 2.5vw;
  }
  .siteHeader__logo {
    width: calc(0.1302083333 * (100vw - var(--scrollbarW)));
    position: relative;
    top: 0;
    left: 2.0833333333%;
    margin-top: -0.6770833333%;
    -webkit-transition: width 0.23s ease, margin 0.23s ease;
    transition: width 0.23s ease, margin 0.23s ease;
  }
  .siteHeader__logo a {
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  .siteHeader__logo a:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .--fixed .siteHeader__logo {
    width: calc(0.1041666667 * (100vw - var(--scrollbarW)));
    margin-top: 0.8333333333%;
  }
  .--fixed .siteHeader__logo a {
    /* &:hover {
    	transform: scale(1.1);
    } */
  }
  .siteHeader__nav {
    visibility: visible;
    width: 83.3333333333%;
    margin-right: 0;
    margin-left: auto;
  }
  .siteHeader__nav::before {
    display: none;
  }
}
/* .brandNav -------------------------------------------------------- */
.brandNav {
  height: 100%;
}
.brandNav__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: nowrap;
  width: auto;
  height: 100%;
  margin-left: 5.3333333333vw;
}
.brandNav__listItem {
  margin-right: 4.8vw;
}
.brandNav__listItem:last-of-type {
  margin-right: 0;
}
.brandNav__btn {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  position: relative;
}
.brandNav__btn::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 2px;
  background-color: #636363;
  opacity: 0;
}
.brandNav__btn.--current::before {
  opacity: 1;
}
.brandNav__btn span {
  font-family: "TTNormsPro", sans-serif;
  font-weight: 800;
  font-size: 2.9333333333vw;
  white-space: nowrap;
  color: #000;
}
@media screen and (min-width: 769px) {
  .brandNav {
    margin-left: auto;
    margin-right: 2.0833333333vw;
  }
  .brandNav__list {
    margin-left: auto;
  }
  .brandNav__listItem {
    margin-right: 2.03125vw;
  }
  .brandNav__listItem:last-of-type {
    margin-right: 0;
  }
  .brandNav__btn::before {
    min-height: 2px;
    height: 0.2083333333vw;
    -webkit-transition: all 0.23s ease;
    transition: all 0.23s ease;
  }
  .brandNav__btn span {
    font-size: 1.09375vw;
    letter-spacing: 0.05em;
    position: relative;
    -webkit-transition: color 0.23s ease;
    transition: color 0.23s ease;
  }
  .brandNav__btn:hover:not(.--current)::before {
    height: 100%;
    opacity: 1;
  }
  .brandNav__btn:hover:not(.--current) span {
    color: #fff;
  }
}
/* .langNav -------------------------------------------------------- */
.langNav {
  width: 6.6666666667vw;
  margin-right: 4%;
  position: relative;
}
.langNav__icon {
  position: relative;
  height: 6.6666666667vw;
  z-index: 101;
}
.langNav__listWrap {
  z-index: 100;
  position: absolute;
  top: 0;
  right: 0;
  width: 5em;
}
.langNav__list {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  background-color: #e9e9e9;
  border-radius: 0 0 1.3333333333vw 1.3333333333vw;
  padding: 2.5em 0 1em;
  opacity: 0;
  pointer-events: none;
  -webkit-transform: translateY(-20px);
          transform: translateY(-20px);
  -webkit-transition: opacity 0.3s, height 0.3s, -webkit-transform 0.2s;
  transition: opacity 0.3s, height 0.3s, -webkit-transform 0.2s;
  transition: opacity 0.3s, transform 0.2s, height 0.3s;
  transition: opacity 0.3s, transform 0.2s, height 0.3s, -webkit-transform 0.2s;
}
.langNav__listItem {
  display: block;
  text-decoration: none;
  font-size: 2.6666666667vw;
  text-align: right;
  padding: 1em 0.5em;
  cursor: pointer;
  overflow-wrap: anywhere;
}
html:lang(ja) .langNav__listItem[data-lang=ja], html:lang(en) .langNav__listItem[data-lang=en], html:lang(zh-CN) .langNav__listItem[data-lang=zh-CN], html:lang(zh-TW) .langNav__listItem[data-lang=zh-TW], html:lang(ko) .langNav__listItem[data-lang=ko] {
  color: #c5171e;
}
.langNav.--active .langNav__list {
  overflow: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  pointer-events: auto;
}

@media screen and (min-width: 769px) {
  .langNav {
    width: 8.0208333333%;
    margin-right: 1.0416666667%;
  }
  .langNav__icon {
    cursor: pointer;
    height: auto;
    background-color: #ebebeb;
    border-radius: 2em;
  }
  .langNav__listWrap {
    z-index: 1;
    top: 0.78125vw;
    right: 50%;
    width: 100%;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
  .langNav__list {
    padding: 12.987012987% 0 9.0909090909%;
    border-radius: 0 0 9.0909090909% 9.0909090909%;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  .langNav__listItem {
    font-size: 0.7291666667vw;
    text-align: center;
    padding: 0.7em;
    cursor: pointer;
  }
  .langNav__listItem:hover {
    color: #c5171e;
  }
  .langNav:hover .langNav__list {
    overflow: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    pointer-events: auto;
  }
}
/* .siteNavSpBtn -------------------------------------------------------- */
.siteNavSpBtn {
  border: none;
  color: inherit;
  display: block;
  font: inherit;
  outline: none;
  padding: 0;
  width: 16.6666666667%;
  height: calc(0.1066666667 * (100vw - var(--scrollbarW)));
  margin-top: calc(0.0266666667 * (100vw - var(--scrollbarW)));
  background-color: transparent;
  margin-left: auto;
  position: relative;
}
.siteNavSpBtn span {
  background-color: #000;
  display: block;
  width: 36%;
  min-height: 1px;
  height: 1.6%;
  position: absolute;
  inset: 0;
  margin: auto;
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
  will-change: transform;
}
.siteNavSpBtn span:first-child {
  -webkit-transform: translateY(-1.4666666667vw);
          transform: translateY(-1.4666666667vw);
}
.siteNavSpBtn span:nth-child(2) {
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: transform 0.6s ease-out, opacity 0.6s ease-out;
  transition: transform 0.6s ease-out, opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
}
.siteNavSpBtn span:nth-child(3) {
  -webkit-transform: translateY(1.4666666667vw);
          transform: translateY(1.4666666667vw);
}
.siteNavSpBtn.--active span:nth-child(1) {
  -webkit-transform: translateY(0vw) rotate(45deg) scaleX(136.8421052632%);
          transform: translateY(0vw) rotate(45deg) scaleX(136.8421052632%);
}
.siteNavSpBtn.--active span:nth-child(2) {
  -webkit-transform: scale(0);
          transform: scale(0);
  opacity: 0;
}
.siteNavSpBtn.--active span:nth-child(3) {
  -webkit-transform: translateY(0vw) rotate(-45deg) scaleX(136.8421052632%);
          transform: translateY(0vw) rotate(-45deg) scaleX(136.8421052632%);
}

@media screen and (min-width: 769px) {
  .siteNavSpBtn {
    display: none;
  }
}
/* .siteNav -------------------------------------------------------- */
.siteNav {
  position: absolute;
  left: 0;
  width: 100vw;
  height: 100svh;
  overflow-x: hidden;
  overflow-y: scroll;
  visibility: hidden;
  pointer-events: none;
}
.--spOpen .siteNav {
  visibility: visible;
  pointer-events: auto;
}
.siteNav__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  padding-top: 17.3333333333%;
  padding-bottom: 16%;
}
.siteNav__list > li {
  position: relative;
  will-change: transform;
  padding-bottom: 0.5em;
}
.siteNav__list > li::before {
  content: "";
  display: block;
  width: 9.3333333333%;
  height: 1px;
  margin-inline: auto;
  background-color: #d8d8d8;
  margin-bottom: 0.5em;
}
.siteNav__list > li:last-of-type::after {
  content: "";
  display: block;
  width: 9.3333333333%;
  height: 1px;
  margin-inline: auto;
  background-color: #d8d8d8;
}
.siteNav__btn {
  display: block;
  text-decoration: none;
  font-weight: 400;
  color: #000;
  letter-spacing: 0.08em;
  text-align: center;
  padding: 2.6666666667% 0;
  position: relative;
}
.siteNav__btn::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 1px;
  background-color: #c5171e;
  opacity: 0;
  z-index: 1;
}
.siteNav__btn.--current::after {
  opacity: 1;
}
.siteNav__btn strong,
.siteNav__btn span {
  display: block;
  position: relative;
  z-index: 2;
}
.siteNav__btn strong {
  font-family: "TTNormsPro", sans-serif;
  font-weight: 800;
  color: #c5171e;
  font-size: 4.6666666667vw;
  line-height: 1.2857;
}
.siteNav__btn span {
  font-size: 2.8vw;
}

@media screen and (min-width: 769px) {
  .siteNav {
    position: relative;
    inset: 0;
    width: 100%;
    height: auto;
    overflow: visible;
    visibility: visible;
    pointer-events: auto;
    margin-top: 0.5625%;
  }
  .siteNav__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-pack: end;
            justify-content: flex-end;
    padding-top: 0;
    padding-bottom: 0;
  }
  .siteNav__list > li {
    padding-bottom: 0;
  }
  .siteNav__list > li::before {
    width: 1px;
    height: 100%;
    margin-inline: 0;
    position: absolute;
    top: 0;
    right: 0px;
    margin-bottom: 0;
  }
  .siteNav__list > li:last-of-type::before, .siteNav__list > li:last-of-type::after {
    display: none;
  }
  .siteNav__btn {
    padding: 0.5208333333vw 1.1458333333vw;
  }
  .siteNav__btn::after {
    bottom: calc(-0.0088541667 * (100vw - var(--scrollbarW)));
    height: calc(0.0046875 * (100vw - var(--scrollbarW)));
    opacity: 0;
    -webkit-transition: height 0.2s ease, opacity 0.2s ease;
    transition: height 0.2s ease, opacity 0.2s ease;
  }
  .siteNav__btn strong,
  .siteNav__btn span {
    -webkit-transition: color 0.2s ease;
    transition: color 0.2s ease;
  }
  .siteNav__btn strong {
    font-size: 1.5104166667vw;
    line-height: 1.21;
  }
  .siteNav__btn span {
    font-size: 0.78125vw;
    letter-spacing: -0.025em;
  }
  .siteNav__btn:hover:not(.--current)::after {
    height: calc(100% + 0.0088541667 * (100vw - var(--scrollbarW)));
    opacity: 1;
  }
  .siteNav__btn:hover:not(.--current) strong,
  .siteNav__btn:hover:not(.--current) span {
    color: #fff;
  }
}
/* --------------------------------------------------------
main
-------------------------------------------------------- */
main::before,
main::after {
  content: "";
  display: block;
  clear: both;
}

main {
  zoom: 1;
  position: relative;
}

@media screen and (max-width: 768px) {
  main {
    padding-bottom: 34.6666666667%;
  }
}
@media screen and (min-width: 769px) {
  main {
    padding-bottom: 11.4583333333%;
  }
}
/* --------------------------------------------------------
.lowerHeroSec
-------------------------------------------------------- */
.lowerHeroSec {
  position: relative;
}
.lowerHeroSec__visual {
  position: relative;
}
.lowerHeroSec__ttlBlock {
  position: relative;
  background-color: #000;
  width: 86.6666666667%;
  margin-inline: auto;
  margin-top: -13.3333333333%;
  padding-top: 5.3333333333%;
  padding-bottom: 4%;
}
.lowerHeroSec__ttlMain {
  font-family: "TTNormsPro", sans-serif;
  font-weight: 800;
  font-size: 8.5333333333vw;
  line-height: 1;
  color: #fff;
  text-align: center;
}
.lowerHeroSec__ttlSub {
  font-size: 2.9333333333vw;
  line-height: 1;
  color: #c9b075;
  text-align: center;
  margin-top: 3.0769230769%;
}
.lowerHeroSec__text {
  font-size: 3.2vw;
  line-height: 1.61;
  color: #fff;
  text-align: center;
  margin-top: 4.6153846154%;
  padding: 0 1em;
}
.lowerHeroSec__text::before, .lowerHeroSec__text::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
}
.lowerHeroSec__text::before {
  margin-top: calc((1 - 1.61) * 0.5em);
}
.lowerHeroSec__text::after {
  margin-bottom: calc((1 - 1.61) * 0.5em);
}

@media screen and (min-width: 769px) {
  .lowerHeroSec {
    display: grid;
    grid-template-columns: 1fr minmax(calc(0.390625 * (100vw - var(--scrollbarW))), 1fr) 1fr;
    grid-template-rows: calc(0.2416666667 * (100vw - var(--scrollbarW))) calc(0.0916666667 * (100vw - var(--scrollbarW))) minmax(calc(0.0177083333 * (100vw - var(--scrollbarW))), auto) minmax(calc(0.015625 * (100vw - var(--scrollbarW))), auto);
    /* grid-template-areas: 
    	"c11 c12 c13"
    	"c11 c22 c23"
    	"... ... c34";
    } */
    /* &__item {
    	border-bottom: none;
    	&.--i1 {
    		grid-area: c11;
    	}
    } */
  }
  .lowerHeroSec__visual {
    grid-column: 1/4;
    grid-row: 1/3;
    overflow: hidden;
  }
  .lowerHeroSec__ttlBlock {
    grid-column: 2/3;
    grid-row: 2/5;
    width: 100%;
    margin: 0;
    padding-top: 5.6%;
    padding-bottom: 5.6%;
  }
  .lowerHeroSec__ttlMain {
    font-size: 4.8958333333vw;
    letter-spacing: 0.05em;
  }
  .lowerHeroSec__ttlSub {
    font-size: 0.9375vw;
    line-height: 1;
    margin-top: 0%;
  }
  .lowerHeroSec__text {
    font-size: 1.0416666667vw;
    margin-top: 4%;
  }
  .lowerHeroSec__bread {
    grid-column: 1/4;
    grid-row: 3/4;
  }
}
/* --------------------------------------------------------
.breadcrumb
-------------------------------------------------------- */
.breadcrumb {
  width: 100%;
  border-bottom: 1px solid #6f6f6f;
}
.breadcrumb ol {
  width: 86.6666666667%;
  margin-inline: auto;
  display: -webkit-box;
  display: flex;
  -webkit-column-gap: 3.0769230769%;
     -moz-column-gap: 3.0769230769%;
          column-gap: 3.0769230769%;
}
.breadcrumb ol li {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  color: #404040;
  font-size: 2.6666666667vw;
  padding: 0.7em 0;
}
.breadcrumb ol li a {
  text-decoration: none;
  color: #404040;
}
.breadcrumb ol li:first-of-type a {
  display: block;
  width: 1.2em;
  height: 1.2em;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 24"><defs><style>.cls-1 {fill: %236f6f6f;fill-rule: evenodd;}</style></defs><path id="HOME" class="cls-1" d="M72,767v8H66v-8H62v8H56v-8H50l14-16,14,16H72Z" transform="translate(-50 -751)"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.breadcrumb ol li:nth-of-type(n+2) {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 16"><style type="text/css">.st0{fill-rule:evenodd;clip-rule:evenodd;fill:%236F6F6F;}</style><path class="st0" d="M0,16l6-8L0,0h4l6,8l-6,8H0z"/></svg>');
  background-position: center left;
  background-repeat: no-repeat;
  background-size: 0.5em;
  padding-left: 4.6153846154%;
}

@media screen and (min-width: 769px) {
  .breadcrumb {
    background-color: #fff;
  }
  .breadcrumb ol {
    width: 100%;
    -webkit-column-gap: 1.25%;
       -moz-column-gap: 1.25%;
            column-gap: 1.25%;
  }
  .breadcrumb ol li {
    font-size: 0.6770833333vw;
    padding: 0.6em 0;
  }
  .breadcrumb ol li:first-of-type {
    margin-left: 2.0833333333%;
  }
  .breadcrumb ol li:first-of-type a {
    width: 1.1em;
    height: 1.1em;
  }
  .breadcrumb ol li:nth-of-type(n+2) {
    background-size: 0.4em;
    padding-left: 1.3020833333%;
  }
}
/* --------------------------------------------------------
.baseBtn
-------------------------------------------------------- */
.baseBtn {
  display: block;
  width: auto;
  padding: 3.0666666667vw 2.5em;
  text-decoration: none;
  color: #000;
  border: 2px solid #7f7f7f;
  position: relative;
}
.baseBtn span {
  display: block;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-align: center;
  position: relative;
}
.baseBtn::after {
  content: "";
  display: block;
  width: 4.1333333333vw;
  height: 1.2vw;
  background-color: #656565;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 31 9"><defs><style>.cls-1 {fill-rule: evenodd;}</style></defs><path class="cls-1" d="M1181,4178h-30v-2h25.78l-7.78-7h3l10,9h-1Z" transform="translate(-1151 -4169)"/></svg>');
          mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 31 9"><defs><style>.cls-1 {fill-rule: evenodd;}</style></defs><path class="cls-1" d="M1181,4178h-30v-2h25.78l-7.78-7h3l10,9h-1Z" transform="translate(-1151 -4169)"/></svg>');
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: calc(0.0266666667 * (100vw - var(--scrollbarW)));
  margin-top: calc(-0.006 * (100vw - var(--scrollbarW)));
}
.baseBtn.--cW {
  color: #fff;
  border-color: #fff;
}
.baseBtn.--cW::after {
  background-color: #fff;
}
.baseBtn.--win::after {
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  background-color: #000;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><defs><style>.cls-1{fill-rule:evenodd;}</style></defs><path class="cls-1" d="m15,20H0V5h2v13h13v2ZM5,0h15v15H5V0Zm2,2h11v11H7V2Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><defs><style>.cls-1{fill-rule:evenodd;}</style></defs><path class="cls-1" d="m15,20H0V5h2v13h13v2ZM5,0h15v15H5V0Zm2,2h11v11H7V2Z"/></svg>');
  margin-top: calc(-0.0133333333 * (100vw - var(--scrollbarW)));
}
@media screen and (min-width: 769px) {
  .baseBtn {
    padding: 0.9375vw 3.5em;
    overflow: hidden;
    -webkit-transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
    transition: border-color 0.3s ease, -webkit-transform 0.3s ease;
    transition: border-color 0.3s ease, transform 0.3s ease;
    transition: border-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
    /* &::before {
    	content: "";
    	position: absolute;
    	inset: 0 50%;
    	background-color: var.$color--Key;
    	border-radius: 3em;
    	opacity: 0;
    	transition: inset .3s ease, opacity .3s ease;
    } */
  }
  .baseBtn span {
    letter-spacing: 0em;
    -webkit-transition: color 0.3s ease, letter-spacing 0.3s ease;
    transition: color 0.3s ease, letter-spacing 0.3s ease;
  }
  .baseBtn::after {
    width: 1.6145833333vw;
    height: 0.46875vw;
    right: calc(0.0104166667 * (100vw - var(--scrollbarW)));
    margin-top: calc(-0.00234375 * (100vw - var(--scrollbarW)));
    -webkit-transition: background-color 0.3s ease, -webkit-transform 0.3s ease;
    transition: background-color 0.3s ease, -webkit-transform 0.3s ease;
    transition: background-color 0.3s ease, transform 0.3s ease;
    transition: background-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  .baseBtn.--win::after {
    width: 1.0416666667vw;
    height: 1.0416666667vw;
    margin-top: calc(-0.0052083333 * (100vw - var(--scrollbarW)));
  }
  .baseBtn.--back::after {
    right: inherit;
    left: calc(0.0104166667 * (100vw - var(--scrollbarW)));
    -webkit-transform: scaleX(-1);
            transform: scaleX(-1);
  }
  .baseBtn:hover {
    /* border-color: transparent;
    &::before {
    	inset: -20px;
    	opacity: 1;
    }
    span {
    	color: #fff;
    }
    &::after {
    	background-color: #fff;
    } */
    color: #c5171e;
    border-color: #c5171e;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .baseBtn:hover::after {
    background-color: #c5171e;
    -webkit-transform: translateX(30%);
            transform: translateX(30%);
  }
  .baseBtn:hover.--back::after {
    -webkit-transform: translateX(-30%) scaleX(-1);
            transform: translateX(-30%) scaleX(-1);
  }
  .baseBtn:hover span {
    letter-spacing: 0.2em;
  }
}
/*
面白いけど今回はぼつ
.baseBtn {
	display: block;
	width: auto;
	padding: calc(23px / var.$spWidth * 100vw) 2.5em;
	text-decoration: none;
	color: #000;
	position: relative;

	span {
		display: block;
		letter-spacing: .1em;
		text-align: center;
background-color: #aaa;
		//margin-left: calc(20px / var.$spWidth * var.$calc100vw);
		position: relative;
	}
	&::after {
		content: "";
		display: block;
		width: calc(31px / var.$spWidth * 100vw);
		height: calc(9px / var.$spWidth * 100vw);
		background-color: #656565;
		mask-image: url(var.$svg--BtnArrow);
		mask-size: 100%;
		mask-repeat: no-repeat;
		position: absolute;
		top: 50%;
		right: calc(20px / var.$spWidth * var.$calc100vw);
		margin-top: calc(-4.5px / var.$spWidth * var.$calc100vw);
	}
	&::before {
		content: "";
		position: absolute;
		inset: 0;
		//background: linear-gradient(120deg, #6559ae, #ff7159, #6559ae);
		background: linear-gradient(120deg,  #000 25%, var.$color--Key 50%, #000 75%);
		background-size: 200% 100%;
		background-position: 0% 0%;
		clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 2px, 2px 2px, 2px calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) 2px, 0px 2px);

		//animation: gradient 2s infinite alternate forwards running;
		//animation: gradient2 2s ease-in-out infinite;

		background-position: -50% 0%;
		animation: gradient5 1s alternate forwards running;
		transition: clip-path .3s ease;
	}
	&:hover::before {
		animation: gradient4 1s alternate forwards running;
		clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 4px, 4px 4px, 4px calc(100% - 4px), calc(100% - 4px) calc(100% - 4px), calc(100% - 4px) 4px, 0px 4px);
	}

	@keyframes gradient4 {
		0%   { background-position: -50% 0%; }
		100%  { background-position: -150% 100%; }
	}
	@keyframes gradient5 {
		0%  { background-position: -150% 100%; }
		100%   { background-position: -250% 0%; }
	}
}
*/
/* --------------------------------------------------------
.btnOv
-------------------------------------------------------- */
@media screen and (min-width: 769px) {
  .btnOv {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transition: -webkit-transform 0.1s ease-in-out;
    transition: -webkit-transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    display: block;
  }
  .btnOv:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
/* --------------------------------------------------------
.floatingBnr
-------------------------------------------------------- */
.floatingBnr {
  position: absolute;
  left: 4vw;
  bottom: 4vw;
  width: 69.8666666667vw;
  display: grid;
  grid-template-columns: 34.2666666667vw 34.2666666667vw;
  -webkit-column-gap: 1.3333333333vw;
     -moz-column-gap: 1.3333333333vw;
          column-gap: 1.3333333333vw;
}
.floatingBnr.--fixed {
  position: fixed;
  z-index: 997;
}
.floatingBnr__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  color: #fff;
}
.floatingBnr a {
  text-decoration: none;
}
.floatingBnr__box {
  width: 100%;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  padding: 1.9455252918%;
}
.floatingBnr__box dt {
  text-align: center;
  padding-top: 4.048582996%;
  padding-bottom: 5.2631578947%;
  line-height: 1;
  font-size: 2.9333333333vw;
  font-weight: 600;
}
.floatingBnr__box dd {
  background-color: #fff;
  color: #000;
  padding: 4.048582996% 2.024291498% 3.2388663968%;
}
.floatingBnr__boxLine1 {
  width: 58.7044534413%;
  margin-inline: auto;
}
.floatingBnr__boxLine2 {
  text-align: center;
  margin-top: 0.5em;
  font-size: 2.1333333333vw;
  color: #06c755;
}
.floatingBnr__boxTell1 {
  text-align: center;
  font-size: 2.9333333333vw;
  font-weight: 800;
}
.floatingBnr__boxTell2 {
  text-align: center;
  margin-top: 0.5em;
  font-size: 2.1333333333vw;
  line-height: 1.41;
  color: #505050;
}
.floatingBnr__box.--line {
  background-color: #06c755;
}
.floatingBnr__box.--tell {
  background-color: #c5171e;
}

@media screen and (min-width: 769px) {
  .floatingBnr {
    left: 50%;
    bottom: 1.0416666667vw;
    width: 27.2916666667vw;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    grid-template-columns: 13.3854166667vw 13.3854166667vw;
    -webkit-column-gap: 0.5208333333vw;
       -moz-column-gap: 0.5208333333vw;
            column-gap: 0.5208333333vw;
  }
  .floatingBnr__item {
    -webkit-transition: -webkit-transform 0.13s ease-in-out;
    transition: -webkit-transform 0.13s ease-in-out;
    transition: transform 0.13s ease-in-out;
    transition: transform 0.13s ease-in-out, -webkit-transform 0.13s ease-in-out;
  }
  .floatingBnr__item:hover {
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
    /* a {
    	color: var.$color--Key;
    } */
  }
  .floatingBnr__box dt {
    font-size: 1.0416666667vw;
  }
  .floatingBnr__boxLine2 {
    margin-top: 0.5em;
    font-size: 0.8333333333vw;
  }
  .floatingBnr__boxTell1 {
    font-size: 1.1458333333vw;
  }
  .floatingBnr__boxTell2 {
    margin-top: 0.5em;
    font-size: 0.8333333333vw;
    line-height: 1.41;
  }
}
/* --------------------------------------------------------
#pagetop
-------------------------------------------------------- */
#pagetop {
  position: absolute;
  right: 4vw;
  bottom: 4vw;
  width: 13.4666666667vw;
  height: 12.4vw;
}
#pagetop a {
  display: block;
  width: 100%;
  height: 100%;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 368.32"><defs><style>.cls-1{fill:%23fff;}.cls-2{fill:%23404040;}</style></defs><path class="cls-2" d="m218.85,82.31c0-29.76,17.01-82.31,45.53-82.31s57.75,50.52,57.75,82.31-23.12,57.56-51.64,57.56-51.64-25.77-51.64-57.56Z"/><path class="cls-2" d="m342.42,307.01c-3.17-17.76-15.85-30.83-28.88-40.32-13.03-9.49-27.4-17.08-37.93-30.24-10.85-13.56-16.55-31.73-25.55-47.09-.14-.23-.27-.46-.41-.69-23.91-39.99-82.03-39.99-105.94,0-.14.23-.27.46-.41.69-9,15.36-14.7,33.53-25.55,47.09-10.53,13.16-24.9,20.74-37.93,30.24-13.02,9.49-25.71,22.56-28.88,40.32-3.45,19.32,5.97,39.75,20.01,50.31,14.04,10.57,31.69,12.49,48.12,9.54,16.43-2.95,32.02-10.36,47.55-17.38.1-.05.2-.09.3-.14,18.91-8.54,40.58-8.54,59.5,0,.1.04.2.09.29.13,15.53,7.02,31.12,14.43,47.55,17.38,16.43,2.95,34.09,1.03,48.12-9.54,14.04-10.56,23.46-31,20.01-50.31Zm-164.04-66.5l20.01-32.01,20.01,32.01h-40.02Z"/><path class="cls-2" d="m64.29,231.41c-22.92,9.12-49.71-4.2-59.85-29.75-10.13-25.55-2.75-75.5,20.17-84.62,22.92-9.12,53.34,27.68,62.83,51.59,10.13,25.55-.23,53.65-23.15,62.77Z"/><path class="cls-2" d="m77.87,82.31C77.87,50.52,107.09,0,135.61,0s45.53,52.56,45.53,82.31c0,31.79-23.12,57.56-51.64,57.56s-51.64-25.77-51.64-57.56Z"/><path class="cls-2" d="m395.56,201.66c-10.13,25.55-36.93,38.87-59.85,29.75-22.92-9.12-33.29-37.22-23.15-62.77,9.48-23.91,39.91-60.71,62.83-51.59,22.92,9.12,30.3,59.07,20.17,84.62Z"/><path class="cls-1" d="m124.62,305.5c-.34,0-.56-.22-.56-.56v-36.96c0-.34.22-.56.56-.56h6.66c6.72,0,10.3,3.02,10.3,11.42s-3.64,11.42-10.3,11.42h-2.35c-.22,0-.34.11-.34.34v14.34c0,.34-.22.56-.56.56h-3.42Zm12.43-26.66c0-5.38-1.62-7.22-5.77-7.22h-2.35c-.22,0-.34.11-.34.34v13.78c0,.22.11.34.34.34h2.35c4.14,0,5.77-1.79,5.77-7.22Z"/><path class="cls-1" d="m153.18,267.98c.11-.34.28-.56.62-.56h3.36c.34,0,.56.22.62.56l8.01,36.96c.06.34-.17.56-.5.56h-3.36c-.39,0-.56-.22-.62-.56l-1.68-8.34h-8.46l-1.68,8.34c-.06.34-.22.56-.56.56h-3.36c-.34,0-.56-.22-.5-.56l8.12-36.96Zm5.66,24.7l-3.25-16.58h-.17l-3.47,16.58h6.89Z"/><path class="cls-1" d="m170.09,286.46c0-10.81.17-12.21.73-13.89,1.18-3.64,4.03-5.66,8.34-5.66,5.26,0,8.23,2.97,8.85,8.29.06.34-.06.62-.39.67l-3.14.62c-.39.06-.62-.11-.67-.45-.39-3.14-1.85-4.87-4.59-4.87-2.02,0-3.47.95-4.03,2.69-.39,1.12-.5,1.96-.5,12.6s.11,11.48.5,12.6c.56,1.74,2.07,2.69,4.09,2.69s3.53-.95,4.09-2.69c.34-1.06.5-1.96.5-9.74,0-.22-.11-.34-.34-.34h-3.75c-.34,0-.56-.22-.56-.56v-2.97c0-.34.22-.56.56-.56h7.9c.34,0,.56.22.56.56v1.62c0,10.19-.17,11.59-.73,13.27-1.12,3.64-4.03,5.66-8.34,5.66s-7.17-2.02-8.34-5.66c-.56-1.68-.73-3.08-.73-13.89Z"/><path class="cls-1" d="m194.62,267.98c0-.34.22-.56.56-.56h14.39c.34,0,.56.22.56.56v3.08c0,.34-.22.56-.56.56h-10.08c-.22,0-.34.11-.34.34v11.87c0,.22.11.34.34.34h8.74c.34,0,.56.22.56.56v3.08c0,.34-.22.56-.56.56h-8.74c-.22,0-.34.11-.34.34v12.26c0,.22.11.34.34.34h10.08c.34,0,.56.22.56.56v3.08c0,.34-.22.56-.56.56h-14.39c-.34,0-.56-.22-.56-.56v-36.96Z"/><path class="cls-1" d="m220.99,305.5c-.34,0-.56-.22-.56-.56v-32.98c0-.22-.11-.34-.34-.34h-6.27c-.34,0-.56-.22-.56-.56v-3.08c0-.34.22-.56.56-.56h17.75c.34,0,.56.22.56.56v3.08c0,.34-.22.56-.56.56h-6.27c-.22,0-.34.11-.34.34v32.98c0,.34-.22.56-.56.56h-3.42Z"/><path class="cls-1" d="m237.06,300.35c-.56-1.68-.73-3.08-.73-13.89s.17-12.21.73-13.89c1.18-3.64,4.03-5.66,8.34-5.66s7.22,2.02,8.34,5.66c.56,1.68.73,3.08.73,13.89s-.17,12.21-.73,13.89c-1.12,3.64-4.03,5.66-8.34,5.66s-7.17-2.02-8.34-5.66Zm12.38-1.29c.34-1.12.45-1.96.45-12.6s-.11-11.48-.45-12.6c-.56-1.74-2.02-2.69-4.03-2.69s-3.42.95-3.98,2.69c-.39,1.12-.5,1.96-.5,12.6s.11,11.48.5,12.6c.56,1.74,1.96,2.69,3.98,2.69s3.47-.95,4.03-2.69Z"/><path class="cls-1" d="m261.71,305.5c-.34,0-.56-.22-.56-.56v-36.96c0-.34.22-.56.56-.56h6.66c6.72,0,10.3,3.02,10.3,11.42s-3.64,11.42-10.3,11.42h-2.35c-.22,0-.34.11-.34.34v14.34c0,.34-.22.56-.56.56h-3.42Zm12.43-26.66c0-5.38-1.62-7.22-5.77-7.22h-2.35c-.22,0-.34.11-.34.34v13.78c0,.22.11.34.34.34h2.35c4.14,0,5.77-1.79,5.77-7.22Z"/></svg>') center center no-repeat;
  background-size: contain;
}
#pagetop span {
  display: block;
  text-indent: 101%;
  overflow: hidden;
  font-size: 0;
}
#pagetop.--fixed {
  position: fixed;
  z-index: 998;
}

@media screen and (min-width: 769px) {
  #pagetop {
    position: absolute;
    right: 1.5625vw;
    bottom: 1.0416666667vw;
    width: 5.2604166667vw;
    height: 4.84375vw;
    /* html:lang(en) & {
    	bottom: calc(200px / var.$pcWidth * 100vw);
    } */
  }
  #pagetop a {
    -webkit-transition: -webkit-transform 0.23s ease-in-out;
    transition: -webkit-transform 0.23s ease-in-out;
    transition: transform 0.23s ease-in-out;
    transition: transform 0.23s ease-in-out, -webkit-transform 0.23s ease-in-out;
  }
  #pagetop a:hover {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}
/* --------------------------------------------------------
.siteFooter
-------------------------------------------------------- */
.siteFooter {
  position: relative;
  background-color: #202020;
  padding-top: 10.6666666667%;
  padding-bottom: 6%;
}
.siteFooter__contents {
  width: 86.6666666667%;
  margin-inline: auto;
}
.siteFooter__copyright {
  width: 86.6666666667%;
  margin-inline: auto;
  margin-top: 9.3333333333%;
  text-align: center;
}
.siteFooter__copyright p {
  font-size: 2.6666666667vw;
  color: #b3b3b3;
}
.siteFooter__blockLogo {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.siteFooter__logo {
  width: 41.5384615385%;
}
.siteFooter__sns {
  width: 55.3846153846%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
          align-items: center;
  color: #969696;
}
.siteFooter__sns dt {
  text-align: right;
}
.siteFooter__sns dd {
  margin-left: 8.3333333333%;
  width: 19.4444444444%;
}
.siteFooter__sns .snsbtn {
  display: block;
}
.siteFooter__blockNav {
  position: relative;
  margin-top: 9.2307692308%;
}
.siteFooter .footerGnav ul {
  border-top: 1px solid #404040;
}
.siteFooter .footerGnav__item {
  border-bottom: 1px solid #404040;
}
.siteFooter .footerGnav__btn {
  display: block;
  position: relative;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 12.594 22" xml:space="preserve"><defs><style>.cls-1 {fill: %23969696;fill-rule: evenodd;}</style></defs><path class="cls-1" d="M679.272,8991.13l-9.869-9.97a1.138,1.138,0,0,0-1.454,0l-0.949.95,8.925,9.02a1.11,1.11,0,0,1,0,1.56L667,9001.71l0.949,0.87a0.981,0.981,0,0,0,1.454,0l9.869-9.89a1.114,1.114,0,0,0,0-1.56h0Z" transform="translate(-667 -8980.91)"/></svg>');
  background-repeat: no-repeat;
  background-size: 1.7333333333% 100%;
  background-position: right 3.1397174254% center;
  font-size: 3.2vw;
  padding: 1.2em 2em 1.2em 0;
  line-height: 1.21;
  text-decoration: none;
  color: #fff;
  font-family: "LINESeedJPStd", sans-serif;
  -webkit-font-smoothing: antialiased;
}
.siteFooter .footerGnav__btn::before, .siteFooter .footerGnav__btn::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
}
.siteFooter .footerGnav__btn::before {
  margin-top: calc((1 - 1.21) * 0.5em);
}
.siteFooter .footerGnav__btn::after {
  margin-bottom: calc((1 - 1.21) * 0.5em);
}
.siteFooter .footerBrandNav {
  margin-top: 9.2307692308%;
}
.siteFooter .footerBrandNav__item + li {
  margin-top: 3.0769230769%;
}
.siteFooter .footerBrandNav__btn {
  display: block;
  position: relative;
  font-size: 4vw;
  padding: 0.6em 0;
  line-height: 1;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  color: #fff;
  /* &.--photostudio img {
  	width: calc(364px / var.$spWidth--Conts * 100%);
  }
  &.--salon img {
  	width: calc(220px / var.$spWidth--Conts * 100%);
  }
  &.--brandsite img {
  	width: calc(314px / var.$spWidth--Conts * 100%);
  }
  &.--store img {
  	width: calc(240px / var.$spWidth--Conts * 100%);
  } */
}

@media screen and (min-width: 769px) {
  .siteFooter {
    padding-top: 2.6041666667%;
    padding-bottom: 0.78125%;
  }
  .siteFooter__contents {
    width: 83.3333333333%;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
            justify-content: space-between;
  }
  .siteFooter__copyright {
    width: 83.3333333333%;
    margin-top: 1.5625%;
  }
  .siteFooter__copyright p {
    font-size: 0.625vw;
  }
  .siteFooter__blockLogo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-pack: start;
            justify-content: flex-start;
  }
  .siteFooter__logo {
    width: 10.625vw;
  }
  .siteFooter__sns {
    width: 10.625vw;
    margin-top: 1.5625vw;
    -webkit-box-pack: start;
            justify-content: flex-start;
  }
  .siteFooter__sns dt {
    text-align: left;
    font-size: 0.8333333333vw;
  }
  .siteFooter__sns dd {
    margin-left: 0.6770833333vw;
    width: 1.5625vw;
  }
  .siteFooter__sns .snsbtn {
    -webkit-transition: -webkit-transform 0.23s ease;
    transition: -webkit-transform 0.23s ease;
    transition: transform 0.23s ease;
    transition: transform 0.23s ease, -webkit-transform 0.23s ease;
  }
  .siteFooter__sns .snsbtn:hover {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  .siteFooter__blockNav {
    width: 78.125%;
    margin-top: 0;
  }
  .siteFooter .footerGnav ul {
    border: none;
    display: grid;
    grid-row-gap: 0.8em;
    grid-template-columns: 28.8% 21.6% 24% 18.4%;
    -webkit-column-gap: 2.4%;
       -moz-column-gap: 2.4%;
            column-gap: 2.4%;
    grid-template-areas: "c11 c12 c13 c14" "c11 c22 c23 c24" "... ... ... c34";
  }
  .siteFooter .footerGnav__item {
    border-bottom: none;
  }
  .siteFooter .footerGnav__item.--i1 {
    grid-area: c11;
  }
  .siteFooter .footerGnav__item.--i2 {
    grid-area: c12;
  }
  .siteFooter .footerGnav__item.--i3 {
    grid-area: c22;
  }
  .siteFooter .footerGnav__item.--i4 {
    grid-area: c13;
  }
  .siteFooter .footerGnav__item.--i5 {
    grid-area: c14;
  }
  .siteFooter .footerGnav__item.--i6 {
    grid-area: c23;
  }
  .siteFooter .footerGnav__item.--i7 {
    grid-area: c24;
  }
  .siteFooter .footerGnav__item.--i8 {
    grid-area: c34;
  }
  .siteFooter .footerGnav__btn {
    display: inline-block;
    background: none;
    font-size: 0.8333333333vw;
    padding: 0;
  }
  .siteFooter .footerGnav__btn:hover {
    text-decoration: underline;
  }
  .siteFooter .footerBrandNav {
    width: 100%;
    margin-top: 1.875%;
    padding-top: 1.25%;
    border-top: 1px solid #646464;
  }
  .siteFooter .footerBrandNav ul {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
            justify-content: space-between;
    gap: 1em;
  }
  .siteFooter .footerBrandNav__item + li {
    margin-top: 0;
  }
  .siteFooter .footerBrandNav__btn {
    display: inline-block;
    font-size: 1.0416666667vw;
    padding: 0;
    text-align: left;
  }
  .siteFooter .footerBrandNav__btn:hover {
    color: #c5171e;
  }
}

@media screen and (min-width: 769px){
  .siteFooter .footerGnav__item.--i1 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .siteFooter .footerGnav__item.--i2 {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .siteFooter .footerGnav__item.--i3 {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .siteFooter .footerGnav__item.--i4 {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .siteFooter .footerGnav__item.--i5 {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
  }
  .siteFooter .footerGnav__item.--i6 {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  .siteFooter .footerGnav__item.--i7 {
    -ms-grid-row: 3;
    -ms-grid-column: 7;
  }
  .siteFooter .footerGnav__item.--i8 {
    -ms-grid-row: 5;
    -ms-grid-column: 7;
  }
}
/* --------------------------------------------------------
汎用クラス
-------------------------------------------------------- */
@media screen and (max-width: 768px) {
  .nosp {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .nopc {
    display: none;
  }
}
/* --------------------------------------------------------
.swiperCustom
-------------------------------------------------------- */
/*
.swiperCustom {
	overflow: visible;
//background-color: rgba(#000, .3);

	.swiperPagination {
//background-color: rgba(#f00, 0.3);
		.swiper-pagination-bullet {
			width: calc(40px / var.$spWidth * 100vw);
			height: calc(40px / var.$spWidth * 100vw);
			margin: 0 calc(10px / var.$spWidth * 100%);
			border-radius: 0;
			border: 1px solid #808080;
			background: transparent;
			opacity: 1;
			position: relative;
			&::before {
				content: "";
				position: absolute;
				inset: calc(6px / 38px * 100%);
				background-color: transparent;
			}
			&-active {
				background: transparent;
				opacity: 1;
				&::before {
					background-color: #fff;
				}
			}
		}
	}

	.swiperCtrl {
//background: rgba(255,0,0,0.1);
		display: block;
		width: calc(60px / var.$spWidth * var.$calc100vw);
		height: 100%;
		top: 0;
		margin-top: 0;

		&::after {
			content: "";
			display: block;
			background: #646464;
			width: calc(25px / var.$spWidth * 100vw);
			height: calc(40px / var.$spWidth * 100vw);
			position: absolute;
			inset: 50%;
			margin-top: calc(-20px / var.$spWidth * 100vw);
			margin-left: calc(-12px / var.$spWidth * 100vw);
			clip-path: polygon(0% 0%, 16% 0%, 100% 50%, 16% 100%, 0% 100%, 80% 50%);
			transform-origin: center center;
		}

		&.--prev {
			left: calc(-60px / var.$spWidth * var.$calc100vw);
			&::after {
				transform: rotate(180deg);
			}
		}
		&.--next {
			right: calc(-60px / var.$spWidth * var.$calc100vw);
		}
	}
}
@media screen and (min-width: 769px) {
	.swiperCustom {

		.swiperPagination {
			//background-color: rgba(#f00, 0.3);
			.swiper-pagination-bullet {
				width: calc(22px / var.$screenWidth * 100vw);
				height: calc(22px / var.$screenWidth * 100vw);
				margin: 0 calc(4px / var.$screenWidth * 100vw);

				&::before {
					inset: calc(3px / 20px * 100%);
				}
				&-active,
				&:hover {
					background: transparent;
					opacity: 1;
					&::before {
						background-color: #fff;
					}
				}
			}
		}

		.swiperCtrl {
			//background: rgba(255,0,0,0.1);
			width: calc(150px / var.$screenWidth * var.$calc100vw);

			&::after {
				width: calc(38px / var.$screenWidth * 100vw);
				height: calc(72px / var.$screenWidth * 100vw);
				margin-top: calc(-36px / var.$screenWidth * 100vw);
				margin-left: calc(-19px / var.$screenWidth * 100vw);
				clip-path: polygon(0% 0%, 8% 0%, 100% 50%, 8% 100%, 0% 100%, 88% 50%);
				transition: transform .23s ease;
			}

			&.--prev {
				left: calc(-150px / var.$screenWidth * var.$calc100vw);
			}
			&.--next {
				right: calc(-150px / var.$screenWidth * var.$calc100vw);
			}

			&:hover {
				&::after {
					transform: scale(1.4);
				}
				&.--prev::after {
					transform: scale(1.4) rotate(180deg);
				}
			}
		}
	}
}
*/
/* ----------------------------------------------------------------------------------------------------------------
magnific
---------------------------------------------------------------------------------------------------------------- */
.modal_mfpYt.mfp-bg,
.modal_mfpImg.mfp-bg,
.modal_mfpIframe.mfp-bg,
.modal_mfpImgGallery.mfp-bg,
.modal_mfpInline.mfp-bg {
  z-index: 9998;
  opacity: 0.9;
}

.modal_mfpYt.mfp-wrap,
.modal_mfpImg.mfp-wrap,
.modal_mfpIframe.mfp-wrap,
.modal_mfpImgGallery.mfp-wrap,
.modal_mfpInline.mfp-wrap {
  z-index: 9999;
}

.modal_mfpYt .mfp-iframe-holder .mfp-content {
  max-width: 1080px;
}

.modal_mfpImg .mfp-iframe-holder .mfp-content,
.modal_mfpImgGallery .mfp-iframe-holder .mfp-content {
  max-width: 1280px;
}

.modal_mfpIframe .mfp-iframe-holder .mfp-content {
  max-width: 1280px;
}

.modal_mfpInline .mfp-content {
  padding-top: calc(0.16 * (100vw - var(--scrollbarW)));
  padding-bottom: calc(0.08 * (100vw - var(--scrollbarW)));
}

.modal_mfpYt .mfp-iframe-holder .mfp-close,
.modal_mfpImg .mfp-image-holder .mfp-close,
.modal_mfpIframe .mfp-iframe-holder .mfp-close,
.modal_mfpImgGallery .mfp-image-holder .mfp-close,
.modal_mfpInline .mfp-inline-holder .mfp-close {
  position: fixed;
  top: 0;
  right: 0;
  height: calc(0.16 * (100vw - var(--scrollbarW)));
  background: url(../img/btn_close.svg) top right no-repeat;
  background-size: auto 66.6666666667%;
  background-position: calc(100% - 20px) center;
}

.modal_mfpImg img,
.modal_mfpIframe img,
.modal_mfpImgGallery img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  touch-callout: none;
  user-select: none;
}

@media screen and (min-width: 641px) {
  .modal_mfpInline .mfp-content {
    padding-top: calc(0.0588235294 * (100vw - var(--scrollbarW)));
    padding-bottom: calc(0.0220588235 * (100vw - var(--scrollbarW)));
  }
  .modal_mfpYt .mfp-iframe-holder .mfp-close,
  .modal_mfpImg .mfp-image-holder .mfp-close,
  .modal_mfpIframe .mfp-iframe-holder .mfp-close,
  .modal_mfpImgGallery .mfp-image-holder .mfp-close,
  .modal_mfpInline .mfp-inline-holder .mfp-close {
    height: calc(0.0588235294 * (100vw - var(--scrollbarW)));
    background-size: auto 50%;
    background-position: calc(100% - 20px) center;
  }
}
@media screen and (min-width: 1361px) {
  .modal_mfpInline .mfp-content {
    padding-top: 80px;
    padding-bottom: 30px;
  }
  .modal_mfpYt .mfp-iframe-holder .mfp-close,
  .modal_mfpImg .mfp-image-holder .mfp-close,
  .modal_mfpIframe .mfp-iframe-holder .mfp-close,
  .modal_mfpImgGallery .mfp-image-holder .mfp-close,
  .modal_mfpInline .mfp-inline-holder .mfp-close {
    height: 80px;
  }
}
/* 左右ボタン */
.modal_mfpImgGallery .mfp-arrow,
.modal_mfpInline .mfp-arrow {
  opacity: 0.5;
  width: 20%;
  height: 80%;
  top: 10%;
  margin-top: 0;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-transform-origin: center;
          transform-origin: center;
}

.modal_mfpImgGallery .mfp-arrow:active,
.modal_mfpInline .mfp-arrow:active {
  margin-top: 0;
}

.modal_mfpImgGallery .mfp-arrow:before,
.modal_mfpImgGallery .mfp-arrow:after,
.modal_mfpInline .mfp-arrow:before,
.modal_mfpInline .mfp-arrow:after {
  display: none;
}

/* .modal_mfpInline .mfp-arrow-left { background: #fff url(../img/btn_arrow.svg) 50% 50% no-repeat; background-size: calc(34px / var.$spWidth * 100vw); }
.modal_mfpInline .mfp-arrow-right { background: url(../img/btn_next.png) 80% center no-repeat; } */
.modal_mfpImgGallery .mfp-arrow-left::before,
.modal_mfpImgGallery .mfp-arrow-right::before,
.modal_mfpInline .mfp-arrow-left::before,
.modal_mfpInline .mfp-arrow-right::before {
  display: block;
  background: url(../img/btn_arrow.svg) center center no-repeat;
  background-size: contain;
  border: none;
  margin: 0;
  width: 4.5333333333vw;
  height: 18.4vw;
  top: 50%;
}

.modal_mfpImgGallery .mfp-arrow-left::before,
.modal_mfpInline .mfp-arrow-left::before {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  left: 15%;
}

.modal_mfpImgGallery .mfp-arrow-right::before,
.modal_mfpInline .mfp-arrow-right::before {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: inherit;
  right: 15%;
}

@media screen and (min-width: 641px) {
  .modal_mfpImgGallery .mfp-arrow,
  .modal_mfpInline .mfp-arrow {
    opacity: 0.5;
    width: 100px;
  }
  .modal_mfpImgGallery .mfp-arrow-left::before,
  .modal_mfpImgGallery .mfp-arrow-right::before,
  .modal_mfpInline .mfp-arrow-left::before,
  .modal_mfpInline .mfp-arrow-right::before {
    width: 1.25vw;
    height: 5.0735294118vw;
  }
  .modal_mfpImgGallery .mfp-arrow-left::before,
  .modal_mfpInline .mfp-arrow-left::before {
    left: 30%;
  }
  .modal_mfpImgGallery .mfp-arrow-right::before,
  .modal_mfpInline .mfp-arrow-right::before {
    right: 30%;
  }
  .modal_mfpImgGallery .mfp-arrow:hover,
  .modal_mfpInline .mfp-arrow:hover {
    opacity: 1;
  }
}

/*# sourceMappingURL=common.css.map*/