@charset "UTF-8";

/* ////////////////////////////////////////////////////////////////////
///// 全ページ共通CSS ///////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////// */

/* ==================================================
FONT SETTING
================================================== */

html {
  font-size: 31.25%;
}

@media screen and (min-width: 961px) {
  html {
    font-size: 62.5%;
  }
}

@media screen and (min-width: 1601px) {
  html {
    font-size: calc(10px + 0.05vw);
  }
}

body {
  /*ゴシック系*/
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  /*明朝系
    font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;*/
  letter-spacing: 0.05em;
  background: #ffffff;
  font-size: 1rem;
  line-height: 1.67;
  -ms-font-feature-settings: "normal";
  /* -webkit-font-feature-settings: "palt"; */
  font-feature-settings: "palt";
}

.enGothic {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: italic;
}

p {
  line-height: 1.75;
}

.StrongTitle {
  font-size: 12rem;
  letter-spacing: 0.01em;
  line-height: 1.3;
}

.MainTitle {
  font-size: 4.8rem;
  letter-spacing: 0em;
  line-height: 1.3;
}

.SubTitle {
  font-size: 4.1rem;
  letter-spacing: 0.02em;
  line-height: 1.35;
}

.STitle {
  font-size: 3.6rem;
  letter-spacing: 0.03em;
  line-height: 1.35;
}

.XlTxt {
  font-size: 3.2rem;
  letter-spacing: 0.03em;
  line-height: 1.4;
}

.LTxt {
  font-size: 2.9rem;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.SlTxt {
  font-size: 2.5rem;
}

.MlTxt {
  font-size: 2rem;
}

.MTxt {
  font-size: 2rem;
}

.STxt {
  font-size: 1.5rem;
}

.XsTxt {
  font-size: 1rem;
}

.fs400 {
  font-size: 400%;
}

.fs300 {
  font-size: 300%;
}

.fs200 {
  font-size: 200%;
}

.fs180 {
  font-size: 180%;
}

.fs160 {
  font-size: 160%;
}

.fs150 {
  font-size: 150%;
}

.fs140 {
  font-size: 140%;
}

.fs130 {
  font-size: 130%;
}

.fs120 {
  font-size: 120%;
}

.fs110 {
  font-size: 110%;
}

.fs90 {
  font-size: 90%;
}

.fs80 {
  font-size: 80%;
}

.fs70 {
  font-size: 70%;
}

.fs60 {
  font-size: 60%;
}

.fs50 {
  font-size: 50%;
}

.fwBold {
  font-weight: bold;
}

.fsItalic {
  font-style: italic;
}

.campaignTtl {
  font-size: 4.1rem;
}

@media screen and (min-width: 641px) {
}

@media screen and (min-width: 961px) {
  .SubTitle {
    font-size: 3.3rem;
  }
  .XlTxt {
    font-size: 2.8rem;
  }
  .LTxt {
    font-size: 2.3rem;
  }
  .SlTxt,
  .MTxt {
    font-size: 1.6rem;
  }
  .STxt {
    font-size: 1.2rem;
  }
}

@media screen and (min-width: 1281px) {
  .swiper-slide .MainTitle {
    font-size: 7.1rem;
  }
  .swiper-slide .STitle {
    /* font-size: 5.1rem; */
  }
  .swiper-slide .XlTxt {
    font-size: 3.2rem;
  }
}

/* ==================================================
font line height
================================================== */

.nowloading .spinner {
  width: 41vw;
  height: 16vw;
  max-width: 410px;
  max-height: 160px;
}

/* ==================================================
color
================================================== */

body {
  color: #2b2b2b;
}

.mainColor {
  color: #2b2b2b;
}

.keyColor {
  color: #c41948;
}

.weakColor {
  color: #666666;
}

.backColor {
  color: #ffffff;
}

.attention {
  color: #bb1039;
}

/* ==================================================
各カラー設定
================================================== */
:root {
  --clrfw-bg: #f8f8ef;
  --clrfw-txt: #c40e18;
  --clrkeep-bg: #fff1f7;
  --clrkeep-txt: #ea550a;
  --clrlash-bg: #ebf3f8;
  --clrlash-txt: #e54989;
  --clrlashup-bg: #f4fbfb;
  --clrlashup-txt: #c4579c;
  --clrlasting01-bg: #f6eff8;
  --clrlasting01-txt: #e54989;
  --clrlasting04-bg: #f9f8ea;
  --clrlasting04-txt: #4dbbaa;
  --clrgcp-bg: #f5f6ef;
  --clrgcp-txt: #21a9da;
  --clrshort-bg: #eff8f9;
  --clrshort-txt: #b657b2;
  --clrstay-bg: #f6f3ef;
  --clrstay-txt: #ed7100;
  --clrebc-bg: #f9f3ee;
  --clrebc-txt: #e63b35;
}

/*fiberwig*/

.fw .MainClr {
  color: #dedf2b;
}

.fw .BtlClr {
  color: #c40e18;
}

.fw .LimitedClr {
  color: #8f9019;
}

.fw.puSet .MainClr {
  color: #dedf2b;
}

/*keep*/

.keep .MainClr {
  color: #ef93bb;
}

.keep .BtlClr {
  color: #ea550a;
}

.keep .boardTxt {
  background: #ef93bb;
}

.keep.puSet .MainClr {
  color: #ef93bb;
}

/*lash*/

.lash .MainClr {
  color: #85bade;
}

.lash .BtlClr {
  color: #e54989;
}

.lash .boardTxt {
  background: #85bade;
}

.lash.puSet .MainClr {
  color: #85bade;
}

/*lashup*/

.lashup .MainClr {
  color: #c4579c;
}

.lashup .BtlClr {
  color: #c4579c;
}
.lashup .limitedClr {
  color: #387765;
}

.lashup .boardTxt {
  background: #c4579c;
}

.lashup.puSet .MainClr {
  color: #5fc1c7;
}

/*lasting01*/

.lasting01 .MainClr {
  color: #ac7eb6;
}

.lasting01 .BtlClr {
  color: #e54989;
}

.lasting01 .boardTxt {
  background: #ac7eb6;
}

.lasting01.puSet .MainClr {
  color: #ac7eb6;
}

/*lasting03*/

.lasting03 .MainClr {
  color: #7ac283;
}

.lasting03 .BtlClr {
  color: #c40e18;
}

.lasting03 .boardTxt {
  background: #7ac283;
}

.lasting03.puSet .MainClr {
  color: #7ac283;
}

/*lasting04*/

.lasting04 .MainClr {
  color: #ede000;
}

.lasting04 .BtlClr {
  color: #4dbbaa;
}

.lasting04 .LimitedClr {
  color: #b6ad0b;
}

.lasting04 .boardTxt {
  background: #ede000;
}

.lasting04.puSet .MainClr {
  color: #ede000;
}

/*gcp*/

.gcp .MainClr {
  color: #9cdc48;
}

.gcp .BtlClr {
  color: #21a9da;
}

.gcp .LimitedClr {
  color: #000000;
}

.gcp .boardTxt {
  background: #9cdc48;
}

.gcp.puSet .MainClr {
  color: #9cdc48;
}

/*short*/

.short .MainClr {
  color: #85cfd6;
}

.short .BtlClr {
  color: #b657b2;
}

.short .LimitedClr {
  color: #85cfd6;
}

.short .boardTxt {
  background: #85cfd6;
}

.short.puSet .MainClr {
  color: #85cfd6;
}

/*stay*/

.stay .MainClr {
  color: #5bc2d9;
}

.stay .BtlClr {
  color: #ed7100;
}

.stay .boardTxt {
  background: #5bc2d9;
}

.stay.puSet .MainClr {
  color: #5bc2d9;
}

/*tiny*/

.tiny .MainClr {
  color: #dd8db9;
}

.tiny .BtlClr {
  color: #c40e18;
}

.tiny .boardTxt {
  background: #dd8db9;
}

.tiny.puSet .MainClr {
  color: #dd8db9;
}

/*ebc*/

.ebc .MainClr {
  color: #e63b35;
}

.ebc .BtlClr {
  color: #e63b35;
}

.ebc .boardTxt {
  background: #e63b35;
}

.ebc.puSet .MainClr {
  color: #e63b35;
}

.ebc .LimitedClr {
  color: #d8ae85;
}

/* ==================================================
link
 ================================================== */

a:link {
  color: #c41948;
  text-decoration: none;
}

a:visited {
  color: #c41948;
  text-decoration: none;
}

a:active {
  color: #c41948;
  text-decoration: none;
}

p a {
  color: #c41948;
  text-decoration: underline;
}

p a:link {
  color: #c41948;
  text-decoration: underline;
}

p a:visited {
  color: #c41948;
  text-decoration: underline;
}

p a:active {
  color: #c41948;
  text-decoration: underline;
}

.gNaviSet a:link {
  color: #292929;
  text-decoration: none;
}

.gNaviSet a:visited {
  color: #292929;
  text-decoration: none;
}

.gNaviSet a:active {
  color: #292929;
  text-decoration: none;
}

.weakColor a:link {
  color: #888888;
  text-decoration: underline;
}

.weakColor a:visited {
  color: #888888;
  text-decoration: underline;
}

.weakColor a:active {
  color: #888888;
  text-decoration: underline;
}

/* ==================================================
common
================================================== */

.new::after {
  color: #bb1039;
  padding: 0 0 0 1rem;
}

.cs::before {
  font-weight: 600;
  letter-spacing: 0.07em;
  font-size: 3em;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10;
}

svg {
  fill: #333333;
}

input {
  -webkit-appearance: none;
}

.scrollArrow span {
  width: 1px;
}

.slideIn {
  -webkit-transition: all 2.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 2.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.nowPage {
  position: relative;
}

.subMenuSet li a.nowPage::after {
  bottom: 0;
  width: 105%;
}

@media screen and (min-width: 641px) {
}

@media screen and (min-width: 961px) {
}

@media screen and (min-width: 1281px) {
  .menuOnline {
    display: none;
  }
}

/* ==================================================
BtnSet
================================================== */

.BtnCenter {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: 0.8s all ease-in;
  transition: 0.8s all ease-in;
}

.BtnCenter svg {
  height: 1.2em;
  width: 1.2em;
  margin: 0 10px 0 0;
}

.BtnCenter a {
  padding: 12px 10px 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  z-index: 10;
  width: 100%;
  text-align: center;
}

.BtnCenter a figure,
.BtnCenter a .efTxtSet,
.BtnCenter.menuBtn .efTxtSet {
  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;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.BtnCenter a .efTxtSet {
  color: #c41948;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: 0.3s all ease-out;
  transition: 0.3s all ease-out;
}

.BtnCenter a .efTxtSet .arrowImg {
  margin: 0 -10px 0 10px;
  height: 0.8em;
  line-height: 0;
  position: relative;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: 0.3s all ease-out;
  transition: 0.3s all ease-out;
}

.BtnCenter a .efTxtSet .arrowImg img {
  height: 100%;
  width: auto;
}

.BtnCenter.menuBtn {
  position: relative;
  display: inline-block;
}

.itemSet li .categorySet > a {
  opacity: 1;
  -webkit-transition: 0.8s opacity ease-out;
  transition: 0.8s opacity ease-out;
}

a .BtnCenter.menuBtn {
  color: #c41948;
}

.BtnCenter.menuBtn::after {
  content: "";
  display: block;
  position: absolute;
  right: 10%;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  height: 48px;
  width: 48px;
  border-radius: 25px;
  border: 1px solid #c41948;
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
}

.BtnCenter.menuBtn .efTxtSet .arrowImg {
  margin: 0 -10px 0 10px;
  height: 0.8em;
  line-height: 0;
  position: relative;
  -webkit-transition: 0.3s all ease-out;
  transition: 0.3s all ease-out;
}

.BtnCenter.menuBtn .efTxtSet .arrowImg img {
  height: 100%;
  width: auto;
}

.BtnCenter.efBtn::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  height: 48px;
  width: 48px;
  border-radius: 25px;
  border: 1px solid #c41948;
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

.efBtn {
  opacity: 0.4;
  position: relative;
  display: inline-block;
}

.BtnCenter.efBtn a {
  padding: 0;
  text-decoration: none;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.BtnCenter.efBtn a.nowPage {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

.BtnCenter.efBtn a.nowPage::after {
  display: none;
}

.efBtn.efOn {
  opacity: 1;
}

.BtnCenter.efOn a .efTxtSet {
  -webkit-transition: 0.3s all ease-out;
  transition: 0.3s all ease-out;
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
}

.BtnCenter.efOn a .efTxtSet .arrowImg {
  -webkit-transition: 0.3s all ease-out;
  transition: 0.3s all ease-out;
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
}

.efBtn.efOn::after {
  right: 0;
  width: 64px;
  height: 64px;
  border-radius: 34px;
  -webkit-transition: 0.3s all ease-out;
  transition: 0.3s all ease-out;
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
}

.kadoRBtn {
  border-radius: 6px;
}

.roundBtn {
  border-radius: 4em;
}

.btnLine.mainBtn {
  background: rgba(255, 255, 255, 1);
  border: 2px solid #c41948;
}

.btnLine.bkBtn {
  background: rgba(255, 255, 255, 1);
  border: 1px solid #0079b5;
  width: 100%;
  max-width: 230px;
  margin: 0 auto;
}

.btnLine.grBtn {
  background: #cccccc;
  border: 1px solid #cccccc;
  width: 100%;
  max-width: 230px;
  margin: 0 auto;
}

.btnLine.whBtn {
  background: rgba(220, 4, 42, 1);
  border: 1px solid #ffffff;
}

.btnLine.mainBtn a {
  color: #000;
}

.btnLine.bkBtn a {
  color: #0079b5;
}

.btnLine.grBtn a {
  color: #ffffff;
}

.btnLine.whBtn a {
  color: #ffffff;
}

.footerArea .btnLine.whBtn {
  background: rgba(255, 255, 255, 0);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.btnBeta {
  overflow: hidden;
  position: relative;
}

.btnBeta.whBtn {
  background: #ffffff;
  border: 1px solid #ffffff;
}

.btnBeta.bkBtn {
  background: #292929;
  border: 1px solid #292929;
}

.btnBeta.grBtn {
  background: #a0a0a0;
  border: 1px solid #a0a0a0;
}

.btnBeta.mainBtn {
  background: #c41948;
  border: 2px solid #c41948;
}

.btnBeta.mainBtn a,
.btnBeta.grBtn a,
.btnBeta.bkBtn a {
  color: #ffffff;
}

.btnBeta.whBtn a {
  color: #dc042a;
}

.btnBeta.mainBtn svg,
.btnBeta.bkBtn svg {
  fill: #ffffff;
}

.btnBeta.whBtn svg {
  fill: #dc042a;
}

.mainBtn p,
.grBtn p,
.bkBtn p,
.whBtn p {
  position: relative;
  padding: 0 0 0 3px;
  display: inline-block;
  line-height: 1;
}

.grBtn p::after,
.bkBtn p::after,
.whBtn p::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 8px;
  height: 8px;
  -webkit-transform: translate(0, -50%) rotate(-45deg);
  transform: translate(0, -50%) rotate(-45deg);
  -webkit-transition: 0.8s all ease-in;
  transition: 0.8s all ease-in;
}

.btnBeta.grBtn p::after,
.btnBeta.mainBtn p::after .btnBeta.bkBtn p::after {
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
}

.btnBeta.whBtn p::after {
  border-right: 1px solid #dc042a;
  border-bottom: 1px solid #dc042a;
}

.btnLine.bkBtn p::after {
  border-right: 1px solid #292929;
  border-bottom: 1px solid #292929;
}

.btnLine.mainBtn p::after {
  border-right: 1px solid #dc042a;
  border-bottom: 1px solid #dc042a;
}

.btnLine.whBtn p::after {
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
}

.footerArea .whBtn p::after {
  border-right: 1px solid rgba(255, 255, 255, 0.7);
  border-bottom: 1px solid rgba(255, 255, 255, 0.7);
}

.innerLinkBtn a p {
  letter-spacing: 0.15em;
  border-bottom: 1px solid #999999;
  padding: 0 10px 8px;
  margin: 0 auto;
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
}

@media screen and (min-width: 961px) {
  .BtnCenter a {
    padding: 18px 16px 16px;
  }
}

/* ==================================================
nowloading
================================================== */

.double-bounce1,
.double-bounce2 {
  background-color: #292929;
}

button.nl {
  height: 60px;
  width: 40px;
  background: rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  border-top: 2px solid #0081c3;
  border-right: 2px solid transparent;
  border-bottom: none;
  border-left: none;
  -webkit-animation: spinner5 700ms linear infinite;
  animation: spinner5 700ms linear infinite;
}

@-webkit-keyframes spinner5 {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spinner5 {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.loadingSet {
  display: none;
  width: 90%;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.loadingSet p img {
  max-width: 80px;
  width: 30%;
  height: auto;
}

.loadingSet figure {
  width: 100%;
  margin: 20px auto 0;
}

.loadingSet figure svg {
  width: 140px;
  height: 32px;
  fill: #dc042a;
}

.loadingSet figure figcaption {
  line-height: 1.5;
  margin: 5px auto 0;
  text-align: center;
  font-weight: bold;
}

.nowloading .loadingSet {
  display: block;
}

/* ==================================================
header
================================================== */

#contsHead {
  height: 50px;
  text-align: center;
  position: fixed;
  z-index: 1020;
}
#contsHead.scDown #globalNavi {
  top: -80px;
  transition: 0.6s ease top;
}
.navion #contsHead.scDown #globalNavi {
  top: 0px;
  transition: 0.6s ease top;
}

#contsHead.scUp #globalNavi {
  top: 0;
  transition: 0.6s ease top;
}

.noMain #contsHead {
  position: relative;
}

.maskNavi {
  overflow: hidden;
  width: 200vw;
  height: 200vh;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 50%;
}

#contsHead div#globalNavi {
  position: fixed;
  width: 100%;
  padding: 0 2%;
  left: 0;
  top: 0;
  z-index: 15;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#contsHead div#globalNavi div.logoSet {
  width: calc(100% - 100px);
}

#contsHead div#globalNavi div.logoSet a {
  width: 100%;
  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;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#contsHead div#globalNavi div.logoSet h1 {
  display: inline;
  margin: 0 auto 0 2%;
}

#contsHead div#globalNavi div.logoSet h1 svg {
  width: calc(41vw * 0.5);
  height: calc(16vw * 0.5);
  max-width: calc(410px * 0.2);
  max-height: calc(160px * 0.2);
  display: block;
  fill: #bb1039;
}

.noMain #contsHead div#globalNavi div.logoSet h1 svg,
.scrolledMenu #contsHead div#globalNavi div.logoSet h1 svg {
}

#contsHead div#globalNavi div.sideBarSet {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
}

#contsHead div#globalNavi div.sideBarSet::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 50px;
  width: 100%;
  z-index: -1;
  background: #ffffff;
  opacity: 0;
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.05));
}

.noMain #contsHead div#globalNavi div.sideBarSet::after,
.scrolledMenu #contsHead div#globalNavi div.sideBarSet::after {
  opacity: 1;
  -webkit-transition: 0.8s ease opacity;
  transition: 0.8s ease opacity;
}

#contsHead div#globalNavi ul.language {
  display: flex;
  margin-right: 1em;
}
#contsHead div#globalNavi ul.language li {
  border-right: 1px solid;
  padding-right: 1em;
  margin-right: 1em;
}
#contsHead div#globalNavi ul.language li:last-child {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}
#contsHead div#globalNavi ul.language li a {
  font-size: 3rem;
}

#contsHead div#globalNavi div.hamburger {
  margin: 0;
  z-index: 12;
}

#contsHead div#globalNavi figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#contsHead div#globalNavi figure svg {
  width: 2em;
  height: 2em;
  display: block;
}

#contsHead div#globalNavi div.gNaviSet {
  padding: 80px 20px;
  width: 100%;
  height: 100vh;
  background: linear-gradient(15deg, #f0f0f0 0%, #f0f0f0 30%, #ffffff 30%, #ffffff 100%);
  position: fixed;
  top: 0;
  right: -100vw;
  opacity: 0;
  z-index: -1;
  overflow-y: auto;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#contsHead div#globalNavi div.gNaviSet .itemSet {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li {
  width: 100%;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet {
  width: 100%;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet > a {
  width: 100%;
  margin: 0 auto 40px;
  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;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet > a h2 {
  display: inline-block;
  text-align: left;
  margin: 0;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet .csList {
  width: 100%;
  margin: 30px auto 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet .csList .nowPage {
  color: #c41948;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet .csList .nowPage::after {
  content: "";
  display: none;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li {
  margin: 0 0 40px;
  width: calc(95% / 2);
}

#contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li a {
  opacity: 1;
  text-align: center;
  width: 100%;
  -webkit-transition: 0.8s opacity ease-out;
  transition: 0.8s opacity ease-out;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li a.nowPage {
  opacity: 0.5;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li figure {
  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;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet ul.csList li img {
  width: 60%;
  margin: 0 0 5px;
  -webkit-filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.2));
}

#contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li figure figcaption {
  width: 100%;
  margin: 10px auto 0;
}

.navion #contsHead div#globalNavi div.gNaviSet {
  right: 0;
  opacity: 1;
  -webkit-transition: 0.3s opacity ease;
  transition: 0.3s opacity ease;
}

#contsHead div#globalNavi div.gNaviSet .rightMenu {
  width: 100%;
  max-width: 480px;
}

#contsHead div#globalNavi div.gNaviSet ul.menuSet {
  margin: 20px auto 0;
  padding: 0;
  width: 100%;
}

#contsHead div#globalNavi div.gNaviSet ul.menuSet li {
  width: 100%;
  line-height: 1;
  letter-spacing: 0.2rem;
  text-align: left;
}

#contsHead div#globalNavi div.gNaviSet ul.menuSet li a {
  padding: 20px 40px;
  width: 100%;
  text-align: center;
}

#contsHead div#globalNavi div.gNaviSet ul.menuSet li a svg {
  fill: #292929;
  width: 16px;
  height: 16px;
  position: relative;
  right: 0;
  top: 0;
  vertical-align: super;
}

#contsHead div#globalNavi div.gNaviSet ul.snsSet {
  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;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 12vw auto;
  width: 100%;
}

#contsHead div#globalNavi div.gNaviSet ul.snsSet li {
  margin: 0 4vw;
}

#contsHead div#globalNavi div.gNaviSet ul.snsSet li svg {
  width: 30px;
  height: 30px;
}

#contsHead div#globalNavi div.gNaviSet ul.subMenuSet {
  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;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 0 24vw;
  width: 100%;
  margin: 0 auto;
}

#contsHead div#globalNavi div.gNaviSet ul.subMenuSet li {
  width: 100%;
  margin: 5px auto;
}

@media screen and (min-width: 641px) {
  #contsHead {
    height: 50px;
  }
  #contsHead div#globalNavi div.sideBarSet {
    display: flex;
    align-items: center;
    flex-direction: row;
  }
  #contsHead div#globalNavi div.sideBarSet::after {
    height: 50px;
  }
  #contsHead div#globalNavi figure svg {
    width: 2em;
    height: 2em;
    display: block;
  }
  #contsHead div#globalNavi div.logoSet {
    width: auto;
  }
  #contsHead div#globalNavi ul.language {
    margin-right: 2em;
  }
  #contsHead div#globalNavi ul.language li a {
    font-size: 1.5rem;
  }
  #contsHead div#globalNavi div.gNaviSet {
    padding: 80px 0;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet {
    width: 100%;
    margin: 0 auto;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet .csList {
    margin: 40px auto 30px;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li {
    width: 200px;
    margin: 0 0 80px;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet ul.csList li img {
    width: 120px;
    margin: 0 0 5px;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li figure figcaption {
    margin: 15px auto 0;
  }
  #contsHead div#globalNavi div.gNaviSet ul.menuSet {
    margin: 60px auto 0;
    padding: 0;
    width: 100%;
  }
  #contsHead div#globalNavi div.gNaviSet ul.menuSet li {
    width: 100%;
    line-height: 1;
    letter-spacing: 0.2rem;
    text-align: center;
  }
  #contsHead div#globalNavi div.gNaviSet ul.menuSet li a {
    padding: 30px 50px;
  }
  #contsHead div#globalNavi div.gNaviSet ul.snsSet {
    margin: 80px auto;
  }
  #contsHead div#globalNavi div.gNaviSet ul.snsSet li {
    margin: 0 30px;
  }
  #contsHead div#globalNavi div.gNaviSet ul.subMenuSet {
    padding: 0 0 120px;
  }
}

@media screen and (min-width: 961px) {
  #contsHead {
    height: 60px;
  }
  #contsHead div#globalNavi div.logoSet h1 svg {
    max-width: calc(410px * 0.3);
    max-height: calc(160px * 0.3);
  }
  #contsHead div#globalNavi div.sideBarSet::after {
    height: 60px;
  }
  #contsHead div#globalNavi div.gNaviSet ul.menuSet li a {
    width: auto;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet {
    max-width: inherit;
    margin: 0 5% 0 0;
    width: 390px;
  }
  #contsHead div#globalNavi div.gNaviSet {
    padding: 150px 0;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet > a {
    width: calc(100% - 60px);
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet > a h2 {
    width: 100%;
    margin: 0 0 20px;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet ul.csList li {
    width: 150px;
    margin: 0 0 40px;
    max-width: inherit;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList li figure figcaption {
    text-align: center;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet ul.csList li img {
    width: 70px;
    margin: 0 0 5px;
  }
  #contsHead div#globalNavi div.gNaviSet ul.subMenuSet li {
    margin: 10px auto;
  }
}

@media screen and (min-width: 1281px) {
  #contsHead {
    height: 70px;
  }
  #contsHead div#globalNavi div.gNaviSet {
    background: linear-gradient(120deg, #f8f8f8 0%, #f8f8f8 50%, #f0f0f0 50%, #f0f0f0 100%);
  }
  #contsHead div#globalNavi div.sideBarSet::after {
    height: 70px;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet {
    max-width: inherit;
    margin: 0 100px 0 0;
    padding: 0 0 100px;
    width: 650px;
  }
  #contsHead div#globalNavi div.gNaviSet .rightMenu {
    width: 480px;
    margin: 0;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet > a h2 {
    width: auto;
    margin: 0;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet .BtnCenter {
    margin: 0 0 0 auto;
  }
  #contsHead div#globalNavi div.gNaviSet .itemSet li .categorySet .csList {
    margin: 20px auto 80px;
  }
  #contsHead div#globalNavi div.gNaviSet ul.subMenuSet li {
    margin: 15px auto;
  }
}

@media screen and (min-width: 1601px) {
  #contsHead {
    height: 80px;
  }
  #contsHead div#globalNavi div.sideBarSet::after {
    height: 80px;
  }
  #contsHead div#globalNavi div.gNaviSet ul.subMenuSet li {
    margin: 20px auto;
  }
}

/* ==================================================
humberger-menu animation
================================================== */

.hamburger {
  width: 50px;
  height: 50px;
}

.menu-trigger {
  position: relative;
  width: 100%;
  height: 100%;
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.menu-trigger span {
  position: absolute;
  left: 15px;
  width: 20px;
  height: 2px;
  background-color: #c41948;
}

.scrolledMenu .menu-trigger span,
.noMain .menu-trigger span {
  background-color: #c41948;
}

.menu-trigger span:nth-of-type(1) {
  top: 18px;
}

.menu-trigger span:nth-of-type(2) {
  top: 24px;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 18px;
}

.menu-trigger span:nth-of-type(1) {
  -webkit-animation: menu-bar01 0.75s forwards;
  animation: menu-bar01 0.75s forwards;
}

.menu-trigger span:nth-of-type(2) {
  -webkit-transition: all 0.25s 0.25s;
  transition: all 0.25s 0.25s;
  opacity: 1;
}

.menu-trigger span:nth-of-type(3) {
  -webkit-animation: menu-bar02 0.75s forwards;
  animation: menu-bar02 0.75s forwards;
}

.navion .menu-trigger span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 0.75s forwards;
  animation: active-menu-bar01 0.75s forwards;
}

.navion .menu-trigger span:nth-of-type(2) {
  opacity: 0;
}

.navion .menu-trigger span:nth-of-type(3) {
  -webkit-animation: active-menu-bar02 0.75s forwards;
  animation: active-menu-bar02 0.75s forwards;
}

@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(6px) rotate(45deg);
    transform: translateY(6px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
    transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(6px) rotate(45deg);
    transform: translateY(6px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
    transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-6px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
    transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-6px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
    transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
    transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(6px) rotate(45deg);
    transform: translateY(6px) rotate(45deg);
  }
}

@keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
    transform: translateY(-6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(6px) rotate(45deg);
    transform: translateY(6px) rotate(45deg);
  }
}

@-webkit-keyframes active-menu-bar02 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
    transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-6px) rotate(-45deg);
  }
}

@keyframes active-menu-bar02 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
    transform: translateY(6px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-6px) rotate(-45deg);
  }
}

@-webkit-keyframes menu-bar03 {
  0% {
    -webkit-transform: translateY(11px) rotate(45deg);
    transform: translateY(11px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(-11px) rotate(0);
    transform: translateY(-11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar03 {
  0% {
    -webkit-transform: translateY(11px) rotate(45deg);
    transform: translateY(11px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(-11px) rotate(0);
    transform: translateY(-11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@-webkit-keyframes menu-bar04 {
  0% {
    -webkit-transform: translateY(-11px) rotate(-45deg);
    transform: translateY(-11px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(11px) rotate(0);
    transform: translateY(11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar04 {
  0% {
    -webkit-transform: translateY(-11px) rotate(-45deg);
    transform: translateY(-11px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(11px) rotate(0);
    transform: translateY(11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-11px) rotate(0);
    transform: translateY(-11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(11px) rotate(45deg);
    transform: translateY(11px) rotate(45deg);
  }
}

@keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-11px) rotate(0);
    transform: translateY(-11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(11px) rotate(45deg);
    transform: translateY(11px) rotate(45deg);
  }
}

@-webkit-keyframes active-menu-bar04 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(11px) rotate(0);
    transform: translateY(11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-11px) rotate(-45deg);
    transform: translateY(-11px) rotate(-45deg);
  }
}

@keyframes active-menu-bar04 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(11px) rotate(0);
    transform: translateY(11px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-11px) rotate(-45deg);
    transform: translateY(-11px) rotate(-45deg);
  }
}

@media screen and (min-width: 641px) {
  .hamburger {
    width: 50px;
    height: 50px;
  }
  .menu-trigger span {
    left: 15px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 18px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 24px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 18px;
  }
}

@media screen and (min-width: 961px) {
  .hamburger {
    width: 60px;
    height: 60px;
  }
  .menu-trigger span {
    left: 20px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 23px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 29px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 23px;
  }
}

@media screen and (min-width: 1281px) {
  .hamburger {
    width: 70px;
    height: 70px;
  }
  .menu-trigger span {
    left: 15px;
    width: 40px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 23px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 34px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 23px;
  }
  .menu-trigger span:nth-of-type(1) {
    -webkit-animation: menu-bar03 0.75s forwards;
    animation: menu-bar03 0.75s forwards;
  }
  .menu-trigger span:nth-of-type(3) {
    -webkit-animation: menu-bar04 0.75s forwards;
    animation: menu-bar04 0.75s forwards;
  }
  .navion .menu-trigger span:nth-of-type(1) {
    -webkit-animation: active-menu-bar03 0.75s forwards;
    animation: active-menu-bar03 0.75s forwards;
  }
  .navion .menu-trigger span:nth-of-type(3) {
    -webkit-animation: active-menu-bar04 0.75s forwards;
    animation: active-menu-bar04 0.75s forwards;
  }
}

@media screen and (min-width: 1601px) {
  .hamburger {
    width: 80px;
    height: 80px;
  }
  .menu-trigger span {
    left: 20px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 28px;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 39px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 28px;
  }
}

/* ==================================================
footer
================================================== */

.footerArea {
  background: #f0f0f0;
  margin: 0;
  text-align: center;
  z-index: 1010;
  padding: 8rem 0 12rem;
  -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;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.footerArea a {
  text-decoration: none;
}

.footerArea .logoSet {
  width: 100%;
}

.footerArea .logoSet svg {
  width: 32.8vw;
  height: 14.4vw;
  max-width: 205px;
  max-height: 80px;
  fill: #c41948;
}

.footerArea .ftrSnsSet {
  width: 100%;
  margin: 4rem auto;
  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;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.footerArea .ftrSnsSet li {
  width: 40px;
  height: 40px;
  margin: 0 0.5em;
}

.footerArea .ftrSnsSet li a {
  width: 100%;
  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;
}

.footerArea .ftrSnsSet li svg {
  width: 70%;
  height: 70%;
}

.footerArea .copyright {
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

@media screen and (min-width: 641px) {
}

@media screen and (min-width: 961px) {
}

/* ==================================================
swiper
================================================== */

.swiper-wrapper,
.swiper-slide {
  height: inherit;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

.swiper-button-disabled {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  background: none;
  width: 38px;
  height: 100%;
  top: 0;
  margin-top: 0;
}

.swiper-button-next {
  right: 10%;
}

.swiper-button-prev {
  left: 10%;
}

.swiper-button-prev::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  border-bottom: 2px solid #c41948;
  border-left: 2px solid #c41948;
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
  -webkit-transform: translate(0, -100%) rotate(45deg);
  transform: translate(0, -100%) rotate(45deg);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.swiper-button-next::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  border-bottom: 2px solid #c41948;
  border-right: 2px solid #c41948;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: translate(0, -100%) rotate(-45deg);
  transform: translate(0, -100%) rotate(-45deg);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (min-width: 641px) {
  .swiper-button-next::before,
  .swiper-button-prev::before {
    width: 50px;
    height: 50px;
  }
}

/* ==================================================
section
================================================== */

.cntsSlide {
  overflow: hidden;
}

.areaBlk + .areaBlk {
  margin-top: 80px;
}

@media screen and (min-width: 641px) {
  .areaBlk + .areaBlk {
    margin-top: 120px;
  }
}

@media screen and (min-width: 961px) {
  .areaBlk + .areaBlk {
    margin-top: 160px;
  }
}

@media screen and (min-width: 1281px) {
  .areaBlk + .areaBlk {
    margin-top: 160px;
  }
}

/* ==================================================
pickup
================================================== */
:root {
  --XsTxt: 1.88vw;
  --STxt: 2.19vw;
  --MTxt: 2.81vw;
  --LTxt: 3.75vw;
  --XsTitle: 4.4vw;
  --STitle: 4.69vw;
  --MTitle: 7.19vw;
  --LTitle: 9.38vw;
  --XlTitle: 8.75vw;
}
@media screen and (min-width: 641px) {
  :root {
    --XsTxt: 1.2vw;
    --STxt: 1.4vw;
    --MTxt: 1.6vw;
    --LTxt: 1.8vw;
    --XsTitle: 2vw;
    --STitle: 2.41vw;
    --MTitle: 4vw;
    --LTitle: 5vw;
    --XlTitle: 5.6vw;
  }
}
@media screen and (min-width: 961px) {
  :root {
    --XsTxt: 1.25vw;
    --STxt: 1.46vw;
    --MTxt: 1.88vw;
    --LTxt: 2.5vw;
    --XsTitle: 2.85vw;
    --STitle: 3.13vw;
    --MTitle: 4.79vw;
    --LTitle: 6.25vw;
    --XlTitle: 5.63vw;
  }
}
.pickupArea .XsTxt {
  font-size: clamp(6px, var(--XsTxt), 12px);
}
.pickupArea .STxt {
  font-size: clamp(7px, var(--STxt), 14px);
}
.pickupArea .MTxt {
  font-size: clamp(9px, var(--MTxt), 18px);
}
.pickupArea .LTxt {
  font-size: clamp(12px, var(--LTxt), 24px);
}
.pickupArea .XsTitle {
  font-size: clamp(15px, var(--XsTitle), 24px);
}
.pickupArea .STitle {
  font-size: clamp(15px, var(--STitle), 30px);
}
.pickupArea .MTitle {
  font-size: clamp(23px, var(--MTitle), 46px);
}
.pickupArea .LTitle {
  font-size: clamp(30px, var(--LTitle), 60px);
}
.pickupArea .XlTitle {
  font-size: clamp(36px, var(--XlTitle), 72px);
}

.puBlk {
  margin: 6rem auto;
  position: relative;
}

.puBlk .titSet {
  margin: 0 auto 3rem;
}

.puBlk .slideBlk {
  max-width: 1260px;
  margin: 0 auto;
}

.puBlk .slideBlk .pickupSlide {
  padding: 80px 40px 38px;
}

.puBlk .slideBlk .pickupSlide .swiper-wrapper .puSet {
  background: #ffffff;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.puBlk .slideBlk .pickupSlide .swiper-wrapper .puSet .psImg {
  -webkit-transform: translate(0, -80px);
  transform: translate(0, -80px);
  margin: 0 0 -60px;
}

.puBlk .slideBlk .pickupSlide .swiper-wrapper .puSet .psImg img {
  width: 90%;
  margin: 0 auto;
}

.puBlk .slideBlk .pickupSlide .swiper-wrapper .puSet .psImg .psTxt {
  width: 90%;
  margin: 4rem auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
}

.puBlk .slideBlk .pickupSlide .swiper-wrapper .puSet .psImg .psTxt p.pstItem {
  margin: 1rem auto;
}

.puBlk .slideBlk .pickupSlide .swiper-wrapper .puSet .efBtn {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
  padding: 0 5px;
}

@media screen and (min-width: 961px) {
}

/* ==================================================
popupArea
================================================== */

.popup {
  background: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease-in;
}

.popup.popOn {
  z-index: 10000;
  visibility: visible;
  opacity: 1;
  transition: all 0.3s ease-out;
}

.popup .popupClose {
  position: relative;
  cursor: pointer;
  margin: 1rem auto 0 5%;
  text-align: center;
  color: #c41948;
}

.popup .popupClose::before,
.popup .popupClose::after {
  content: "";
  height: 2px;
  width: 30px;
  display: block;
  background: #c41948;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.4s ease-in;
  transition: all 0.4s ease-in;
  right: 6em;
  margin: 0 auto;
}

.popup .popupClose::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.popup .popupSet {
  background: #ffffff;
  padding: 20px 20px 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 90%;
  max-height: 85vh;
  overflow-y: auto;
  max-width: 800px;
}

.popup .popupSet h2 {
  margin: 0 auto 20px;
}

.popup .popupSet .btnSet {
  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;
  -ms-flex-flow: wrap;
  flex-flow: wrap;
  width: 100%;
  margin: 40px auto;
}

.popup .popupSet .btnSet li {
  width: 46%;
  margin: 0 2%;
}

.popup .popupSet .attentionTxt {
  text-align: left;
}

@media screen and (min-width: 641px) {
  .popup .popupSet {
    padding: 50px;
  }
  .popup .popupSet .attentionTxt {
    text-align: center;
  }
  .popup .popupSet .btnSet {
    width: 80%;
    margin: 40px auto;
  }
  .popup .popupSet .btnSet li {
    width: 40%;
  }
}

@media screen and (min-width: 961px) {
  .prdPopup .prdPopupSet {
    padding: 80px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

#contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList.mascara li:nth-child(2) {
  /* margin: 0 0% 40px 0; */
}

@media screen and (min-width: 961px) {
  #contsHead div#globalNavi div.gNaviSet .itemSet li ul.csList.mascara li:nth-child(2) {
    margin: 0 0% 40px 0;
  }
}
