@charset "UTF-8";
/*
Theme Name: Monogatari Basic
Text Domain: mngtr
Version: 1.0
Requires at least: 5.3
Requires PHP: 7.2
Description: 物語コーポレーション各業態Webサイトの基本となるテーマ
Author: Monogatari Corporation
Author URI: https://www.monogatari.co.jp/
*/
/* 基本
============================================== */
.bsd-button--outline {
        background-color: transparent;
        border: 1px solid #1a1919;
        color: #1a1919;
      }
      .bsd-button--outline.bsd-button--grey-dark:active,
      .bsd-button--outline.bsd-button--grey-dark:focus,
      .bsd-button--outline.bsd-button--grey-dark:hover {
          background-color: #1a1919;
          color: #fff;
      }
    .bsd-button {
        border-radius: .1875rem;
        display: inline-block;
        font-size: .9375rem;
        line-height: 1.3125rem;
        font-weight: 700;
        padding: .75rem 1.25rem .625rem;
        text-align: center;
        text-transform: uppercase;
        text-decoration: none;
        width: 100%;
    }


*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  position: relative;
  font-size: 10px;
  line-height: 1;
  text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
}

body {
  position: relative;
  background: #fff;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "YuMincho",  "Yu Mincho", "MS PMincho", serif;
  color: #111111;
  font-size: 1.6rem;
  line-height: 1.6;
  text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
}
@media (max-width: 767px) {
  body {
    font-size: 1.4rem;
    line-height: 1.6;
  }
}


a {
  transition: all 0.5s;
  text-decoration: none;
  color:#141414;
  outline: none;
}

img {
  max-width: 100%;
  -webkit-backface-visibility: hidden;
  height:auto;
}

address {
  font-weight: normal;
  font-style: normal;
}

/* 汎用クラス
============================================== */
.btn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #000;
  border: solid 2px #000;
  border-radius: 3px;
  transition: .4s;
}

.btn-flat-border:hover,
.btn-flat-border:active,
.btn-flat-border:focus {
  background-color: #000;
  color: #fff;
}
/* フォント */
.gothic{
  font-family: 'Noto Sans JP', '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', sans-serif;
}
.noto-serif{
  font-family: 'Noto Serif Japanese', serif;
}
.f-medium{
  font-weight: 500;
}
.f-semibold{
  font-weight: 600;
}
.f-bold{
  font-weight: 700;
}
.indent{
  padding-left:1em;
  text-indent:-1em;
}
.f-small-ss{
  font-size: 1rem;
}
.f-small{
  font-size: 1.4rem;
}
.f-large-s{
  font-size: 1.8rem;
}
.f-large-m{
  font-size: 2.0rem;
}
.f-large-l{
  font-size: 2.5rem;
}
.f-large-ll{
  font-size: 3.0rem;
}
.f-large-lll{
  font-size: 3.6rem;
}
@media (max-width: 767px){
  .f-large-s{
    font-size: 1.2rem;
  }
  .f-large-m{
    font-size: 1.5rem;
  }
  .f-large-l{
    font-size: 1.7rem;
  }
  .f-large-ll{
    font-size: 1.8rem;
  }
  .f-large-lll{
  font-size: 3.3rem;
}
}

/* margin */
.m_auto{
  margin:auto;
}
.mt_10{
  margin-top: 1rem;
}
.mt_20{
  margin-top: 2rem;
}
.mt_30{
  margin-top: 3rem;
}
.mt_40{
  margin-top: 4rem;
}
.mt_50{
  margin-top: 5rem;
}
.mt_60{
  margin-top: 6rem;
}
.mt_70{
  margin-top: 7rem;
}
.mt_80{
  margin-top: 8rem;
}
.mt_90{
  margin-top: 9rem;
}
.mt_100{
  margin-top: 10rem;
}
.mb_10{
  margin-bottom: 1rem;
}
.mb_20{
  margin-bottom: 2rem;
}
.mb_30{
  margin-bottom: 3rem;
}
.mb_40{
  margin-bottom: 4rem;
}
.mb_50{
  margin-bottom: 5rem;
}
.mb_60{
  margin-bottom: 6rem;
}
.mb_70{
  margin-bottom: 7rem;
}
.mb_80{
  margin-bottom: 8rem;
}
.mb_90{
  margin-bottom: 9rem;
}
.mb_100{
   margin-bottom: 10rem;
}

/* padding */
.pt_10{
  padding-top: 1rem;
}
.pt_20{
  padding-top: 2rem;
}
.pt_30{
  padding-top: 3rem;
}
.pt_40{
  padding-top: 4rem;
}
.pt_50{
  padding-top: 5rem;
}
.pt_60{
  padding-top: 6rem;
}
.pt_70{
  padding-top: 7rem;
}
.pt_80{
  padding-top: 8rem;
}
.pt_90{
  padding-top: 9rem;
}
.pt_100{
  padding-top: 10rem;
}
.pb_10{
  padding-bottom: 1rem;
}
.pb_20{
  padding-bottom: 2rem;
}
.pb_30{
  padding-bottom: 3rem;
}
.pb_40{
  padding-bottom: 4rem;
}
.pb_50{
  padding-bottom: 5rem;
}
.pb_60{
  padding-bottom: 6rem;
}
.pb_70{
  padding-bottom: 7rem;
}
.pb_80{
  padding-bottom: 8rem;
}
.pb_90{
  padding-bottom: 9rem;
}
.pb_100{
  padding-bottom: 10rem;
}

@media (max-width: 767px){
  /* margin */
  .mt_10{
    margin-top: 0.5rem;
  }
  .mt_20{
    margin-top: 1rem;
  }
  .mt_30{
    margin-top: 1.5rem;
  }
  .mt_40{
    margin-top: 2rem;
  }
  .mt_50{
    margin-top: 2.5rem;
  }
  .mt_60{
    margin-top: 3rem;
  }
  .mt_70{
    margin-top: 3.5rem;
  }
  .mt_80{
    margin-top: 4rem;
  }
  .mt_90{
    margin-top: 4.5rem;
  }
  .mt_100{
    margin-top: 5rem;
  }
  .mb_10{
    margin-bottom: 0.5rem;
  }
  .mb_20{
    margin-bottom: 1rem;
  }
  .mb_30{
    margin-bottom: 1.5rem;
  }
  .mb_40{
    margin-bottom: 2rem;
  }
  .mb_50{
    margin-bottom: 2.5rem;
  }
  .mb_60{
    margin-bottom: 3rem;
  }
  .mb_70{
    margin-bottom: 3.5rem;
  }
  .mb_80{
    margin-bottom: 4rem;
  }
  .mb_90{
    margin-bottom: 4.5rem;
  }
  .mb_100{
    margin-bottom: 5rem;
  }

  /* padding */
  .pt_10{
    padding-top: 0.5rem;
  }
  .pt_20{
    padding-top: 1rem;
  }
  .pt_30{
    padding-top: 1.5rem;
  }
  .pt_40{
    padding-top: 2rem;
  }
  .pt_50{
    padding-top: 2.5rem;
  }
  .pt_60{
  padding-top: 3rem;
  }
  .pt_70{
    padding-top: 3.5rem;
  }
  .pt_80{
    padding-top: 4rem;
  }
  .pt_90{
    padding-top: 4.5rem;
  }
  .pt_100{
    padding-top: 5rem;
  }
  .pb_10{
    padding-bottom: 0.5rem;
  }
  .pb_20{
    padding-bottom: 1rem;
  }
  .pb_30{
    padding-bottom: 1.5rem;
  }
  .pb_40{
    padding-bottom: 2rem;
  }
  .pb_50{
    padding-bottom: 2.5rem;
  }
  .pb_60{
    padding-bottom: 3rem;
  }
  .pb_70{
    padding-bottom: 3.5rem;
  }
  .pb_80{
    padding-bottom: 4rem;
  }
  .pb_90{
    padding-bottom: 4.5rem;
  }
  .pb_100{
    padding-bottom: 5rem;
  }
  .sp_mt_10{
    margin-top: 1rem;
  }
  .sp_mb_10{
    margin-bottom: 1rem;
  }
  .sp_mt_20{
    margin-top: 2rem;
  }
  .sp_mt_30{
    margin-top: 3rem;
  }
  .sp_mb_20{
    margin-bottom: 2rem;
  }
  .sp_mb_30{
    margin-bottom: 3rem;
  }
  .sp_pt_10{
    padding-top: 1rem;
  }
  .sp_pb_10{
    padding-bottom: 1rem;
  }
  .sp_pt_20{
    padding-top: 2rem;
  }
  .sp_pt_30{
    padding-top: 3rem;
  }
  .sp_pb_20{
    padding-bottom: 2rem;
  }
  .sp_pb_30{
    padding-bottom: 3rem;
  }
}

.l-height-2 {
    line-height: 2;
}
.l-height-4 {
  line-height: 4rem;
}
.l-height-6 {
  line-height: 6rem;
}
.l-space-3 {
  letter-spacing: 3px;
}
.l-space-4 {
  letter-spacing: 4px;
}

.d-none{
  display: none;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media (min-width: 768px){
  .flex_pc {
    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;
  }
  .flex_pc > * {
    -ms-flex-preferred-size: 48%;
    flex-basis: 48%;
    max-width: 48%;
  }
}
@media (max-width: 767px){
  .flex_pc > *:not(:last-child) {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px){
  .flex_sp {
    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;
  }
  .flex_sp > * {
    -ms-flex-preferred-size: 48%;
    flex-basis: 48%;
    max-width: 48%;
  }
}
.align-items_end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.align-items_baseline {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}
.align-items_center {
  -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.flex-direction_column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.flexCenter {
  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-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flexCenter_y {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex--between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;}

.flexCenter--between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flexCenter--between--start {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.container2{
  width: calc((100% - 10px) / 2);
  max-width: 520px;
}
.container2--sp-pc{
  width: calc((100% - 10px) / 2);
  max-width: 520px;
}
.container4{
  width: calc((100% - 60px) / 3);
  max-width: 340px;
}

@media (max-width: 767px){
  .container2{
    width:100%;
  }
  .container4{
  width: 100%;
  }
  .container4:first-child,
  .container4 + .container4{
    margin:3% 0;
  }
}
.contentBox{
  padding:6% 0;
}
@media (max-width: 767px){
  .contentBox{
    padding:12% 0;
  }
}
.txt--center{
  text-align: center;
}
@media (min-width: 768px){
  .txt--center-pc {
    text-align: center;
  }
}
.txt--left{
  text-align: left;
}
.txt--right{
  text-align: right;
}
@media (max-width: 768px){
  .txt--left-sp {
    text-align: left;
  }
}
.color_white{
  color:#fff;
}
.color_red{
  color:#AC000C;
}
/* 出し分け */
.pcOnly{
  display: block !important;
}
@media (max-width: 767px) {
  .pcOnly{
    display: none !important;
  }
}
.spOnly{
  display: none !important;
}
@media (max-width: 767px) {
  .spOnly{
    display: block !important;
  }
}
/* スクリーンリーダー */
.screenReaderOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* サイド余白 */
.gutter--sp {
    padding-left: 2.4rem;
    padding-right: 2.4rem;
  }

/* インライン表示切替 */
.inline--pcOnly {
  display: inline;
}
@media (max-width: 767px) {
  .inline--pcOnly {
    display: none;
  }
}

.inline--spOnly {
  display: none;
}
@media (max-width: 767px) {
  .inline--spOnly {
    display: inline;
  }
}

/* ブロック表示切替 */
.block--pcOnly {
  display: block;
}
@media (max-width: 767px) {
  .block--pcOnly {
    display: none;
  }
}

.block--spOnly {
  display: none;
}
@media (max-width: 767px) {
  .block--spOnly {
    display: block;
  }
}

/* インラインブロック表示切替 */
.inlineBlock--pcOnly {
  display: inline-block;
}
@media (max-width: 767px) {
  .inlineBlock--pcOnly {
    display: none;
  }
}

.inlineBlock--spOnly {
  display: none;
}
@media (max-width: 767px) {
  .inlineBlock--spOnly {
    display: inline-block;
  }
}

/* ボタン */
.btnContainer {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .btnContainer {
    flex-direction: row;
  }
}

.btn {
  display: inline-block;
  font-size: 1.5rem;
  border: solid 3px transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 1.1rem;
  width:80%;
  text-align: center;
}
@media (min-width: 768px) {
  .btn{
    width: 48%;
    font-size: 2.3rem;
    padding: 1.5rem 3rem 1.3rem;
  }
  .btn.-lg{
    width: 70%;
  }
  .btn.-full{
    width:100%;
  }
}

.btn--primary {
  padding: .5em 1em;
  color: #F4902D;
  border: solid 2px #F4902D;
  border-radius: 50px;
  /* transition: .4s;
  -webkit-tap-highlight-color: rgba( 0, 0, 0, 1); */
}
@media (min-width: 768px){
  .btn--primary{
    border: solid 3px #F4902D;
    padding: .3em 1em;
  }
}

.btn--primary:active,
.btn--primary:focus,
.btn--primary:hover {
  background: #F4902D;
  color: #fff;
}

.btn.arrow{
  position: relative;
}
.btn.arrow::after {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-top: 2px solid;
    border-right: 2px solid;
    transform: rotate(45deg);
    content: "";
    position: absolute;
    top: 35%;
    right: 7%;
}
@media (min-width: 768px){
  .btn.arrow::after{
    width: 11px;
    height: 11px;
    top: 40%;
  }
}


/* 緊急時お知らせティッカー
============================================== */
.systemTicker {
  display: block;
  padding: 2rem 1.5rem;
  text-align: center;
}
.systemTicker + .systemTicker{
  padding-top:0;
}

.systemTicker_title, .systemTicker__title {
  display: inline-block;
  padding: 1.5rem 4rem 1.5rem 2rem;
  text-align: left;
  background: #fff;
  color:#C40410;
  border-radius: 10px;
  width: 650px;
  position: relative;
  text-decoration: underline;
  font-weight: 500;
  font-size: 1.8rem;
  text-decoration: none;
  border: 2px solid;
}

.systemTicker_title::after{
  background: no-repeat url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 265 436.7"><path fill="%23C40410" d="M258,235.4L63.7,429.6c-9.3,9.4-24.4,9.4-33.8,0.1c0,0-0.1-0.1-0.1-0.1L7.1,407c-9.4-9.3-9.4-24.4-0.1-33.8c0,0,0.1-0.1,0.1-0.1l154-154.7L7.1,63.7c-9.3-9.4-9.3-24.5,0-33.9L29.8,7c9.3-9.4,24.4-9.4,33.8-0.1c0,0,0.1,0.1,0.1,0.1L258,201.4C267.4,210.8,267.4,225.9,258,235.4z" /></svg>');
  content: "";
  width: 10px;
  height: 16px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .systemTicker_title, .systemTicker__title {
    padding: 1rem 3rem 1rem 1.5rem;
    width: 100%;
    font-size: 1.3rem;
    min-width: 200px;
  }
  .systemTicker_title::after{
    width: 8.5px;
    height: 12.5px;
    right: 10px;
  }
  .systemTicker + .systemTicker{
    margin-top: -1rem;
  }
}
@media (hover: hover){
  .systemTicker_title:hover, .systemTicker__title:hover{
    background: #C40410;
    color: #fff;
    border: 2px solid #C40410;
  }
  .systemTicker_title:hover::after{
    background: no-repeat url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 265 436.7"><path fill="%23fff" d="M258,235.4L63.7,429.6c-9.3,9.4-24.4,9.4-33.8,0.1c0,0-0.1-0.1-0.1-0.1L7.1,407c-9.4-9.3-9.4-24.4-0.1-33.8c0,0,0.1-0.1,0.1-0.1l154-154.7L7.1,63.7c-9.3-9.4-9.3-24.5,0-33.9L29.8,7c9.3-9.4,24.4-9.4,33.8-0.1c0,0,0.1,0.1,0.1,0.1L258,201.4C267.4,210.8,267.4,225.9,258,235.4z" /></svg>');
  }
}

/* ヘッダー
============================================== */
.header {
  /*position: relative;
  border-top: solid 3px #991010;
  min-width: 1280px;
  /*height: 82px;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);*/
}
@media (max-width: 767px) {
  .header {
    min-width: auto;
    height: auto;
  }
}

.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
  }


.headerNavContainer .headerNav{
      width: 75%;
}
/*@media (min-width: 1800px) {
  .headerNavContainer .headerNav{
      width: 76%;
  }
}*/
@media (max-width: 767px) {
  .headerNavContainer .headerNav{
      width: 100%;
  }
}

.headerNavContainer {
    width: 100%;
    background-color:#fff;
    z-index:99;
    margin: 0 auto;
    border-bottom: 1px solid #646464;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
@media (max-width: 767px) {
  .headerNavContainer {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    height: 6rem;
  }
}

.headerNavContainer_inner {
    margin: auto;
    position: relative;
}

.headerNavContainer .navItemArea {
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
  align-items: center;
  }

.siteTitle {
  margin: 0 1.5% 0 1.5%;
  width: 135px;
  height:75px;
}
@media (max-width: 980px){
  .siteTitle{
    height: auto;
  }
}
@media (max-width: 767px) {
  .siteTitle {
  width: 97px;
  margin: auto;
  height: auto;
  }
}

.reservTitle {
    width: 240px;
    height: 100px;
    margin-left: auto;
    text-align: right;
    position: unset;
    background-color: #AC000C;
    display: flex;
    justify-content: center;
    align-items: center;
  }

@media (max-width: 767px) {
  .reservTitle {
    width: 6rem;
    height:5.9rem;
    text-align: left;
    position: absolute;
    left:0;
    top:0;
  }
}

.reservTitle img{
    margin-top: 5%;
    width: 18.4rem;
  }
@media (max-width: 767px) {
  .reservTitle img{
   /* margin-top: 15.5%;*/
    margin-left: 3%;
    width: 4.8rem;
    height: 4.8rem;
  }
}

@media screen and (min-width:797px) and ( max-width:980px) {
  .reservTitle {
    width: 24%;
    padding: 0 1%;
  }
}
@media screen and (min-width:768px) and ( max-width:796px) {
  .reservTitle {
    width: 20%;
    padding: 0 1%;
  }
}




.headerNavContainer .navItemArea .siteTitle img{
  padding: 0;
  width: 135px;
  max-width: initial;
}
@media (max-width: 767px) {
  .headerNavContainer .navItemArea .siteTitle img{
    padding: 3.5% 0;
    width: 97px;
  }
}
@media screen and (min-width:767px) and ( max-width:980px) {
  .headerNavContainer .navItemArea img,
  .headerNavContainer .navItemArea .siteTitle img{
    max-width:100%;
  }
}


.toggleBtn {
  position: absolute;
    display: none;
    top: 0.6rem;
    right: 0.6rem;
    width: 4rem;
    height: 4.5rem;
    content: '';
    cursor: pointer;
    z-index: 10;
    background: url(img/toggleBtn.svg) no-repeat 6px center;
    background-size: 70px;
    -webkit-tap-highlight-color: transparent;
}
@media (max-width: 767px) {
  .toggleBtn {
    display: block;
  }
}

@media (max-width: 767px) {
  .headerNav {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    content: '';
    z-index: -1;
    opacity: 0;
    transition: all 0.3s;
  }
}
.headerNav .headerNav--primary {
  visibility: visible;
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  list-style-type: none;
  transition: all 0.5s;
}
@media (max-width: 767px) {
  .headerNav .headerNav--primary {
    display: block;
    padding-top: 2%;
    margin-bottom: 40px;
    color:#fff;
    padding-bottom: 15%;
  }
}
.headerNav .headerNav--primary .toggleBtn--close {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  border-bottom: none;
  width: 55px;
  height: 52px;
  background: none;
  padding-top: 16px;
  padding-left: 24px;
  cursor: pointer;
}
@media (max-width: 767px) {
  .headerNav .headerNav--primary .toggleBtn--close {
    display: block;
  }
}
.headerNav .headerNav--primary li {
  flex-basis: auto;
  margin-left: 4%;
  font-size: 1.7rem;
}
.headerNav .headerNav--primary li.first{
   margin-left: 0;
}
.headerNav ul.sub-menu{
    display:none;
  }
@media (max-width: 767px) {
  .headerNav ul.sub-menu {
    display:none;
  }
}
@media (max-width: 1192px) {
  .headerNav .headerNav--primary li {
    margin-left: 3%;
    font-size: 1.5rem;
  }
}
@media (max-width: 1099px) {
  .headerNav .headerNav--primary li {
    margin-left: 2.5%;
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .headerNav .headerNav--primary li {
    margin-left: 0;
    padding-left: 2em;
    text-indent: -2em;
  }
  .headerNav .headerNav--primary li a::before {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 14px 1px 0;
    border-top: 2px solid #141414;
    border-right: 2px solid #141414;
    transform: rotate(45deg);
    content: "";
  }

  /*アコーディオン+から-*/
  .headerNav .headerNav--primary .free .free_a{
    display: block;
    position: relative;
    padding: 10px 44px;
  }
  .headerNav .headerNav--primary .free .free_a::before,
  .headerNav .headerNav--primary .free .free_a::after {
    content: '';
    display: block;
    width: 15px;
    height: 2px;
    border-radius: 5px;
    background: #141414;
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
  }
  /* 2本の横棒のうち一本は縦棒にする */
  .headerNav .headerNav--primary .free .free_a::before {
    /*background: #fff;*/
    /* 横棒を縦にするために90℃回転させる */
    transform: translateY(-50%) rotate(90deg);
    /* プラスからマイナスへの切り替えをゆっくり行いアニメーションさせる */
    transition: 0.5s;
  }
  
  /*
  プラスがクリックされたら縦棒を横にしてマイナスにする疑似要素
  jQueryで付け外しを行う
  */
  .headerNav .headerNav--primary .open .link a::before {
    transform: rotate(0);
    transition: 0.5s;
  }
  /**/

  .headerNav .headerNav--primary .sub-menu li{
    padding: 0 18px;
    font-size: 1.3rem;
  }

  a.free_a{
    pointer-events: none;
  }

 .headerNav--primary .link {
    cursor: pointer;
    display: block;
    position: relative;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  /*アイコン逆にする*/
  .accordion li.open i.fa-chevron-down {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
  }

  .sub-menu {
    display: none;
 }

 .sub-menu a {
    display: block;
    text-decoration: none;
    padding: 12px;
    padding-left: 42px;
    -webkit-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all 0.25s ease;
 }

 .sub-menu a:hover {
    color: #FFF;
 }
}
.headerNav .headerNav--primary li a {
  color: #000000;
  text-decoration: none;
}
.headerNav .headerNav--primary li a:hover{
  color:#EB7721;
}
@media (max-width: 767px) {
  .headerNav .headerNav--primary li a {
    display: block;
    margin-left: 0;
    padding: 10px 20px;
    color: #141414;
  }
  .headerNav .headerNav--primary li a .free_a{
    padding: 10px 30px;
  }
  /*.headerNav .headerNav--primary li a:hover{
    color:#FFF;
  }*/

}
@media (max-width: 767px) {
  .headerNav .headerNav--primary li.nav--home a {
    border-top: solid 1px #d3d3d3;
  }
}
.headerNav .headerNav--sns {
  display: none;
  visibility: hidden;
  padding: 22px 22px 26px;
}
.headerNav .headerNav--sns li {
  flex-basis: 46px;
  height: 46px;
}
.headerNav .headerNav--sns li.nav--facebook {
  margin-left: 1.8rem;
}
@media (max-width: 767px) {
  .headerNav .headerNav--sns li.nav--facebook {
    margin-left: 1rem;
  }
}
.headerNav .headerNav--sns li.nav--instagram {
  margin-left: 1.8rem;
}
@media (max-width: 767px) {
  .headerNav .headerNav--sns li.nav--instagram {
    margin-left: 1rem;
  }
}
.headerNav .headerNav--sns li a {
  display: block;
  background: #ffffff;
  border-radius: 50%;
  width: 100%;
  height: 46px;
  text-align: center;
}
.headerNav .headerNav--sns li a img {
  vertical-align: -15px;
}

@media (max-width: 767px) {
  .toggleBtn.open {
    background-position: -33px; /*ボタンの画像切り替え*/
  }
}

@media (max-width: 767px) {
  .open ~ .siteTitle {
    position: fixed;
    top: 0.9rem;
    left: 1.5rem;
    z-index: 11000;
  }
}

@media (max-width: 767px) {
  .open ~ .headerNav {
    visibility: visible;
    display: block;
    opacity: 1;
    width: 100%;
    height: 100%;
    background: #141414;
    z-index: 11;
    margin-top:6rem;
    position: absolute;
    top:0;
    /*background-color: rgba(20, 20, 20, 0.8);*/
  }
  .headerNav{
    width: 100%;
  }
  .none{
    display: none;
  }
  .scroll-prevent {
    /*動き固定*/
    position: fixed;
    /*奥行きを管理*/
    z-index: -1;
    /*下2つで背景を元のサイズのまま表示することができる*/
    width: 100%;
    height: 100%;
  }

  .headerNav .arrow-left {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin: 0 10px;
  border-left: 4px solid #000;
  border-bottom: 4px solid #000;
  transform: rotate(45deg);
}
}

@media (max-width: 767px) {
  .open ~ .headerNav .headerNav--primary {
    visibility: visible;
    background-color: #FCF6DB;
    overflow: scroll;
    position: fixed;
    height: 100%;
    width: 100%;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 767px) {
  .open ~ .headerNav .headerNav--sns {
    visibility: visible;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    list-style-type: none;
    justify-content: center;
    background: #991010;
  }
}


/* メインコンテンツ
============================================== */
.sectionTitle {
  text-align: center;
  margin: 0 auto 5rem;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .sectionTitle {
    width: 100%;
    padding: 0;
    margin: 0 auto 3rem;
  }
}
.sectionTitle .sectionTitle--ja {
  display: block;
  color: #231815;
  font-size: 2.9rem;
  font-weight: 500;
}
@media (max-width: 767px) {
  .sectionTitle .sectionTitle--ja {
    font-size: 2rem;
  }
}

.sectionBody {
  text-align: center;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .sectionBody {
    width: 100%;
    padding: 0;
  }
}

/* バナーセクション
============================================== */
.part--banner {
  /*background: #faf0e4;*/
}
.part--banner .sectionBody {
  width: 100%;
}
.part--banner .sectionBody .bannerContainer {
  margin: 0 auto;
  padding: 72px 120px 75px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
@media (max-width: 767px) {
  .part--banner .sectionBody .bannerContainer {
    width: 100%;
    padding: 3.5rem 2.4rem 1.9rem;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
.part--banner .sectionBody .bannerContainer .bannerContainer__item {
  flex-basis: 239px;
  margin-left: 2.6rem;
}
@media (max-width: 767px) {
  .part--banner .sectionBody .bannerContainer .bannerContainer__item {
    flex-basis: calc(50% - 0.5rem);
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 1.8rem;
  }
}
.part--banner .sectionBody .bannerContainer .bannerContainer__item:nth-child(4n-3) {
  margin-left: 0;
}
@media (max-width: 767px) {
  .part--banner .sectionBody .bannerContainer .bannerContainer__item:nth-child(2n-1) {
    margin-right: 1rem;
  }
}

/* ページのトップへ戻る
============================================== */
body{
  position: relative;
}
.backToTop {
  position: relative;
}
/* @media (max-width: 767px){
  .backToTop {
    display: none; //フローティングバナー表示時
  }
} */
.scrollBackToTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
.scrollBackToTop {
  position: fixed;
  display: block;
  width: 5.5rem;
  height: 5.5rem;
  bottom: 8rem;
  right: 4.2rem;
  content: '';
  border-radius: 50%;
  background: #AC000C url(img/icon--upArrow--white.svg) no-repeat center center/16px 10px;
  z-index: 10;
}

@media (max-width: 767px) {
  .scrollBackToTop {
    width: 4.2rem;
    height: 4.2rem;
    bottom: 2.4rem;
    right: 2.4rem;
    background: #991010 url(img/icon--upArrow--white.svg) no-repeat center center/12px 8px;
  }
}

/* フッター
============================================== */
.footer {
  border-top: 1px solid #141414;
  background-color: #FFFED6;
}
.footer .footerNav {
  max-width: 1200px;
  padding: 3% 0;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media (max-width: 767px) {
  .footer .footerNav {
    width: 100%;
    padding: 6% 5%;
    flex-direction: column;
  }
}
/*.footer .footerNav .brandNav {
  flex-basis: 271px;
}*/
@media (max-width: 1110px){
  .footer .footerNav .brandNav {
    padding-left: 2%;
  }
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav {
    /*width: 213px;*/
    margin: 0 auto;
    order: 2;
    padding-left: 0;
  }
}
.footer .sitemapNav{
  max-width:100%;
}
.footer .footerNav .brandNav .brandNav--logo {
  margin-bottom: 2rem;
  text-align: center;
  width:272px;
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--logo {
    margin: 0 auto 1.3rem;
    width: 186px;
  }
}
.footer .footerNav .brandNav .brandNav--sns {
  display: flex;
  flex-direction: row;
  justify-content: center;
  list-style-type: none;
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--sns {
    justify-content: center;
  }
}
.footer .footerNav .brandNav .brandNav--sns li {
  flex-basis: 46px;
  height: 46px;
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--sns li {
    flex-basis: 34px;
    height: 34px;
  }
}
.footer .footerNav .brandNav .brandNav--sns li.nav--facebook {
  margin-left: 2rem;
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--sns li.nav--facebook {
    margin-left: 1.5rem;
  }
}
.footer .footerNav .brandNav .brandNav--sns li.nav--instagram {
  margin-left: 2rem;
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--sns li.nav--instagram {
    margin-left: 1.5rem;
  }
}
.footer .footerNav .brandNav .brandNav--sns li a {
  display: block;
  background: #000;
  border-radius: 50%;
  width: 100%;
  height: 46px;
  text-align: center;
}

@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--sns li a {
    width: 36px;
    height: 36px;
  }
  .lp_footerNav_sns img {
    width: 16px;
  }
}
.footer .footerNav .brandNav .brandNav--sns li a img {
   max-width: 20px;
  -webkit-backface-visibility: hidden;
  vertical-align: -13px;
  padding-left: 1px;
}
.footer .footerNav .brandNav .brandNav--sns li.nav--twitter a img{
  max-width: 18px;
}
@media (max-width: 767px) {
  .footer .footerNav .brandNav .brandNav--sns li a img {
    vertical-align: -9px;
    max-width: 18px;
  }
  .footer .footerNav .brandNav .brandNav--sns li.nav--twitter a img{
    max-width: 16px;
  }
}

@media (max-width: 767px) {
  .footer .footerNav .sitemapNav {
    flex-basis: 85px;
    position: relative;
    order: 1;
  }
}
.footer .footerNav .sitemapNav .sitemapNav--primary {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  /*flex-wrap: wrap;*/
  margin: 0 0 4%;
  list-style-type: none;
  column-gap: 2em;
}

@media (max-width: 767px) {
  .footer .footerNav .sitemapNav .sitemapNav--primary {
    margin: 0 auto 3%;
    flex-wrap: wrap;
    width: 80%;
    column-gap: 0;
  }
}
@media (max-width: 450px){
  .footer .footerNav .sitemapNav .sitemapNav--primary{
    width: 100%;
  }
}


.footer .footerNav .sitemapNav .sitemapNav--primary li {
  /*flex-basis: 50%;*/
  margin-bottom: 8px;
}
@media (max-width: 767px){
  .footer .footerNav .sitemapNav .sitemapNav--primary li{
    width:47%;
  }
}
.footer .footerNav .sitemapNav .sitemapNav--primary li a {
  display: block;
  font-size: clamp(1.3rem, 0.73vw + 1.03rem, 1.9rem);
  text-decoration: none;
}
@media (max-width: 767px) {
  .footer .footerNav .sitemapNav .sitemapNav--primary li a {
    padding: 0 0 1rem 0;
  }
}
.footer .footerNav .sitemapNav .sitemapNav--primary li a::before{
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 11px 2px 0;
    border-top: 2px solid #141414;
    border-right: 2px solid #141414;
    transform: rotate(45deg);
    content: "";
  }
@media (max-width: 767px) {
  .footer .footerNav .sitemapNav .sitemapNav--primary li a::before{
    width: 7px;
    height: 7px;
    margin: 0 7px 1px 0;
    border-top: 1px solid #141414;
    border-right: 1px solid #141414;
  }
}
.footer .footerNav .sitemapNav .sitemapNav--secondary {
  list-style-type: none;
}
@media (max-width: 767px) {
  .footer .footerNav .sitemapNav .sitemapNav--secondary {
    padding: 2.3rem 2.4rem 1.9rem;
  }
}
.footer .footerNav .sitemapNav .sitemapNav--secondary .nav--banner {
  width: 100%;
  height: auto;
  text-align: center;
}
.footer .footerNav .sitemapNav .sitemapNav--secondary .nav--banner a {
  display: block;
  text-decoration: none;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  background: #991010;
}
.footer .footerNav .sitemapNav .sitemapNav--secondary .nav--banner a img {
  width: 100%;
}
.footer .copyright {
  text-align: center;
  padding: 20px;
  background: #141414;
  color: #fff;
}
.footer .copyright small {
  font-size: 1.8rem;
  letter-spacing: 0.72px;
}
@media (max-width: 767px) {
  .footer .copyright small {
    font-size: 1rem;
  }
}

/*iphone5,SE対応*/
@media (max-width: 320px){
  .footer .footerNav .sitemapNav .sitemapNav--primary li a {
    padding: 0 0.5rem 1rem 0.6rem;
  }
  .footer .footerNav {
    padding: 5% 2%;
  }
}

/* 下層ページ共通
============================================== */
.pageHeader {
  text-align: center;
  min-height: 15rem;
}
@media (max-width: 767px) {
  .pageHeader {
    min-height: 11rem;
  }
}

.pageTitle {
  font-size: 4.0rem;
  font-weight: bold;
  line-height: 4rem;
  padding: 5.5rem 2.4rem;
  color: #141414;
  letter-spacing: 4px;
}
.pageTitle.news_ttl{
  line-height: 6rem;
}
@media (max-width: 767px) {
  .pageTitle {
    font-size: 2.0rem;
    line-height: 3rem;
    padding: 4rem 2.4rem;
    letter-spacing: 2px;
  }
  .pageTitle.news_ttl{
  line-height: 3rem;
}
}

.pageBody {
   padding: 5rem 0 13rem;
}
@media (max-width: 767px) {
  .pageBody {
    padding: 0 0 4rem;
  }
}

.intro__logo{
  text-align: center;
}

.contentWrapper--full {
  max-width: 1080px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contentWrapper--full {
    width: 100%;
    padding: 0;
  }
}

.contentWrapper {
  max-width: 1080px;
  padding: 0 2%;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contentWrapper {
    width: 100%;
    padding: 0 2%;
  }
}

.contentWrapperSm--full {
  max-width: 1080px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contentWrapperSm--full {
    width: 100%;
    padding: 0;
  }
}

.contentWrapperSm {
  max-width: 480px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contentWrapperSm {
    width: 100%;
  }
}

/*ぱんくず
-----------------------*/
.breadcrumb {
   padding: 0 2%;
}
@media (max-width: 767px) {
  .breadcrumb {
    /*width: 100%;
    padding: 1.2rem 2.4rem;*/
    display: none;
  }
}
.breadcrumb ul {
  list-style-type: none;
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
}
.breadcrumb ul li {
  font-size: 1.2rem;
  color: #575757;
}
@media (max-width: 767px) {
  .breadcrumb ul li {
    font-size: 1rem;
  }
}
.breadcrumb ul li a {
  text-decoration: underline;
  color: #575757;
}

ol.p-breadcrumb__lists {
    list-style: none;
    display: flex;
    max-width: 1080px;
    padding: 1rem 0 2rem;
    margin: 0 auto;
}
li.p-breadcrumb__item {
    margin-right: 1.5%;
    font-size: 1.4rem;
}
li.p-breadcrumb__item.arrow::before {
    display: inline-block;
    transform: rotate(45deg);
    content: "";
    width: 6px;
    height: 6px;
    margin: 0 15px 3px 0;
    border-top: 1.5px solid #19191A;
    border-right: 1.5px solid #19191A;
}


/* トップページ
============================================== */
.contentArea{
  max-width:1080px;
  margin: auto;
  -webkit-animation: fadein 1.5s forwards;
          animation: fadein 1.5s forwards;
}
@media (max-width: 1100px) {
  .contentArea{
    margin: 0 2%;
  }
}
.bg_lightyellow{
  background-color: #FFFED6;
}
.bg_blue{
  background-color: #010133;
}
.bg_season{
  background-color: #D7063A;
  color: #fff;
}
.bg_white{
  background-color: #fff;
  color: #000;
}
.bg_brass{
  background-color: #D0A000;
}



/* 下層ページ共通
============================================== */
h2 {
  font-size: 100%;
  font-weight: inherit;
}
h3 {
    font-size: inherit;
    font-weight: inherit;
}


/* プライバシーポリシーページ
============================================== */
.page--privacy .pageBody {
  padding-bottom: 1rem;
}
.page--privacy .contentBlock {
  margin-bottom: 7.4rem;
}
@media (max-width: 767px) {
  .page--privacy .contentBlock {
    margin-bottom: 3rem;
  }
}
.page--privacy .contentBlock .contentBlock__info {
  margin-bottom: 5rem;
}
.page--privacy .contentBlock h2 {
  color: #ffffff;
  font-size: 2rem;
  font-weight: bold;
  padding: 1.2rem 2rem;
  background: #AC000C;
}
@media (max-width: 767px) {
  .page--privacy .contentBlock h2 {
    font-size: 1.8rem;
    padding: 1.4rem 2.4rem;
  }
}
.page--privacy .contentBlock h3 {
  color: #AC000C;
  font-size: 2rem;
  font-weight: bold;
  border-left: solid 3px #AC000C;
  padding: 5px 15px;
  margin-bottom: 1.8rem;
}
@media (max-width: 767px) {
  .page--privacy .contentBlock h3 {
    font-size: 1.8rem;
  }
}
.page--privacy .contentBlock ul {
  list-style-type: none;
  margin-left: 0;
}
.page--privacy .contentBlock ul li {
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .page--privacy .contentBlock ul li {
    font-size: 1.4rem;
  }
}
.page--privacy .contentBlock p {
  /*margin-bottom: 3rem;*/
}
@media (max-width: 767px) {
  .page--privacy .contentBlock p {
    font-size: 1.4rem;
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
  .page--privacy .contentBlock address {
    padding-top: 3rem;
  }
}
.page--privacy .contentBlock__inner {
  padding: 2rem 2.4rem;
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .page--privacy .contentBlock__inner {
    padding: 1.2rem 2.4rem;
    margin-bottom: 2rem;
  }
}

.menu_attention_txt{
  padding-left:1em;
  text-indent:-1em;
}
/*# sourceMappingURL=style.css.map */


/* お問い合わせページ
============================================== */
.contactArea .bg_yellow{
  background-color: #FCF6DB;
}
.contactArea .container2{
  padding:3% 2% 4%;
  margin-bottom:5%;
}
@media (max-width: 767px){
  .contactArea .container2{
    padding: 6% 2% 8%;
  }
  .contactArea .flex--between{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.contactArea .btn{
  width:85%;
  background: #515050;
  font-size:2.0rem;
}
@media (max-width: 767px){
  .contactArea .btn{
    font-size:1.5rem;
  }
}
.contactArea .btn--primary{
  color:#fff;
  background-color: #6D6D6D;
  border: solid 1px #6D6D6D;
  border-radius: 10px;
}
.contactArea .arrow::before{
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
.contactArea .btn--primary:hover {
    background: #fff;
    color: #191818;
    border: solid 1px #191818;
}
.contactArea .arrow:hover::before {
    border-top: 2px solid #191818;
    border-right: 2px solid #191818;
}
.contactArea .tell span{
  font-size: 3rem;
  margin-left:2%;
}
.contactArea .tell img{
    width: 30px;
  }
@media (min-width: 767px){
  .contactArea .tell img{
    width: 55px;
  }
  .contactArea .tell span{
  font-size: 5rem;
  margin-left:1%;
}
}
.contact--attention .ttl{
  color: #ffffff;
    padding: 1.2rem 2rem;
    background: #AC000C;
}
.contact--attention p{
  line-height: 1.7;
}

@media screen and (max-width:767px) {
  .flex--center{
    display: flex;
    justify-content: center;
  }
}

/* 別窓リンク時アイコン
============================================== */
.icon-outlink{
  display: inline-block;
  content: "";
  width: 0.8em;
  height: 0.8em;
  margin-left: 0.2em;
  margin-bottom: 0.2em;
  vertical-align: middle;
  background: url(img/icon-outlink.svg) 50% 50% no-repeat;
  background-size: contain;
}
.icon-outlink.-red{
  background: url(img/icon-outlink-red.svg) 50% 50% no-repeat;
  margin-left: 0.1em;
}

/* modal
============================================== */
body.modal-open {
  overflow: hidden;
}
.modal {
  display: none;
}
.modal_wrap{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 20;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal_content {
  /* background-color: #fff; */
  padding: 20px;
  border-radius: 5px;
  position: relative;
}
@media screen and (max-width:767px){
  .modal_content{
    padding: 0;
    max-width: 310px;
  }
}
.modal_content img{
  vertical-align:top;
}
.modal-open .headerNavContainer{
  z-index: 19;
}
.close {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  z-index: 1;
}
@media screen and (max-width:767px){
  .close {
    top: -15px;
    right: -15px;
    width: 33px;
    height: 33px;
  }
}

/* floating-banner
============================================== */
.floating {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  z-index: 5;
}
@media screen and (max-width:767px){
  .floating{
    width: 100%;
  }
}
.floating.is-active{
  opacity: 1;
  transition: all 0.3s ease;
}
.floating.is-hidden {
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
}


/* fade
============================================== */
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes fadeup {
  from {
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fadeup {
  from {
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes fadedown {
  from {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fadedown {
  from {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes fadeleft {
  from {
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fadeleft {
  from {
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

@-webkit-keyframes faderight {
  from {
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

@keyframes faderight {
  from {
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

.fade {
  opacity: 0;
}

.scroll-in.fade-in {
  -webkit-animation: fadein 1.5s forwards;
          animation: fadein 1.5s forwards;
}
.scroll-in.fade-in.fade-fast {
  -webkit-animation: fadein 1s forwards;
          animation: fadein 1s forwards;
}
.scroll-in.fade-up {
  -webkit-animation: fadeup 1.5s forwards;
          animation: fadeup 1.5s forwards;
}

.scroll-in.fade-down {
  -webkit-animation: fadedown 1.5s forwards;
          animation: fadedown 1.5s forwards;
}

.scroll-in.fade-left {
  -webkit-animation: fadeleft 1.5s forwards;
          animation: fadeleft 1.5s forwards;
}

.scroll-in.fade-right {
  -webkit-animation: faderight 1.5s forwards;
          animation: faderight 1.5s forwards;
}