@charset "UTF-8";

/* デザインに合わせて変更する */

select {

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

  border: none;

  outline: none;

  background: transparent;

}



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

  a[href*="tel:"] {

    pointer-events: none;

    cursor: default;

    text-decoration: none;

  }

}



.u-inner {

  width: 88%;

  max-width: 600px;

  margin: 0 auto;

}



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

  .u-inner {

    max-width: 1100px;

  }

}



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

  .u-inner {

    width: 90%;

  }

}



/*==================================================

** header

==================================================*/

.header {

  background-color: #f29079;

  position: fixed;

  width: 100%;

  z-index: 2;

  height: 60px;

  top: 0;

  background-image: url(../images/common/bg_header-sp.jpg);

}



.header .logo {

  width: 134px;

  position: relative;

}



.header .logo a {

  display: block;

  -webkit-transition: opacity .3s ease-in-out;

  transition: opacity .3s ease-in-out;

}



.header .logo a:hover {

  opacity: 0.7;

}



.header .logo img {

  width: 100%;

  line-height: 1;

}



.header__top {

  height: 60px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

}



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

  .header {

    position: relative;

    height: 110px;

    background-color: #fff;

    position: relative;

    top: auto;

  }

  .header:after {

    content: "";

    background-image: url(../images/common/header/bg_header01.png);

    width: 100%;

    height: 325px;

    position: absolute;

    top: -75px;

    left: 0;

    z-index: -1;

    background-size: cover;

  }

}



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

  .header:after {

    top: -80px;

  }

}



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

  .header.is-min:after {

    height: 290px;

  }

  .header.is-min .logo {

    width: 55px;

  }

  .header.is-min .main-nav {

    margin-left: 43px;

    -webkit-transform: translateY(15px);

            transform: translateY(15px);

  }

  .header.fixed {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    -webkit-animation-name: fadeInDown;

            animation-name: fadeInDown;

    -webkit-animation-duration: 1s;

            animation-duration: 1s;

  }

  .header.fixed:after {

    height: 275px;

  }

  .header.fixed .logo {

    width: 55px;

  }

  .header.fixed .main-nav {

    margin-left: 43px;

    -webkit-transform: translateY(15px);

            transform: translateY(15px);

  }

  .header__top {

    padding: 1em 0;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

    height: 220px;

  }

  .is-min .header__top {

    height: 220px;

  }

  .fixed .header__top {

    height: 200px;

  }

  .header .logo {

    width: 83px;

    margin-top: 0;

  }

  .header .logo::before {

    top: 4px;

    left: -60px;

    width: 64px;

    height: 69px;

  }

  .header__tel {

    letter-spacing: 0.02em;

    line-height: 1.1;

  }

  .header__tel-wrap {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: end;

        -ms-flex-align: end;

            align-items: flex-end;

  }

  .header__tel-wrap span {

    display: inline;

    font-size: 3rem;

    line-height: 1.1;

    margin-left: 20px;

  }

  .header__tel-wrap span a {

    text-decoration: none;

  }

  .header__tel-wrap span:before {

    content: '\f879';

    font-family: 'Font Awesome 5 Free';

    font-weight: 900;

    font-size: 20px;

    padding-right: 10px;

  }

  .header__reserve {

    background-color: #f29079;

    color: #fff;

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;

    text-transform: uppercase;

  }

  .header__reserve:hover {

    border-radius: 20px;

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;

  }

  .header__reserve a {

    display: block;

    padding: 0.4em 0.5em;

    text-decoration: none;

	color: #FFFFFF;
  }
	
  .header__cancel {

    background-color: #8d8d8d;

    color: #fff;

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;

    text-transform: uppercase;

  }

  .header__cancel:hover {

    border-radius: 20px;

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;

  }

  .header__cancel a {

    display: block;

    padding: 0.4em 0.5em;

    text-decoration: none;
	  
	color: #FFFFFF;

  }	

  .header__reserve-wrap {

    /*display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;*/

    margin-top: 15px;

  }
	
 .header__reserve-wrap p{
	 text-align: center;
	 margin-bottom: 10px;
	}	

  .header__mail {

    background-color: #fff;

    /*margin-left: 10px;*/
	  
	display: flex;
	
	margin: 0 auto;

  }

  .header__info-wrap {

    margin-left: 60px;

  }

  .header__link-wrap {

    letter-spacing: 0.06em;

  }

}



.main-nav {

  display: none;

}



.open .main-nav {

  padding-top: 1.5em;

  display: block;

  margin-top: 3.5em;

  background-image: url(../images/common/bg_header-sp.jpg);

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  background-size: cover;

  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;

  -webkit-box-orient: vertical;

  -webkit-box-direction: normal;

      -ms-flex-direction: column;

          flex-direction: column;

  padding-bottom: 1.5em;

}



.open .main-nav .main-nav__list {

  width: 100%;

  padding: 0 30px;

}



.open .main-nav .main-nav__item {

  position: relative;

  z-index: 1;

}



.open .main-nav .main-nav__item:after {

  content: "";

  background-image: url(../images/common/img_line.png);

  background-size: contain;

  display: inline-block;

  position: absolute;

  bottom: 0;

  width: 100%;

  height: 2px;

}



.open .main-nav .main-nav__item a {

  padding: 0.6em 0;

  display: block;

  text-decoration: none;

  padding-left: 1em;

}



.open .main-nav .main-nav__item a:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.open .main-nav .header__tel {

  letter-spacing: 0.02em;

  line-height: 1.1;

}



.open .main-nav .header__tel-wrap {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: end;

      -ms-flex-align: end;

          align-items: flex-end;
	
  margin-top: 10px;

}



.open .main-nav .header__tel-wrap span {

  display: inline;

  font-size: 3rem;

  line-height: 1.1;

  margin-left: 20px;

}



.open .main-nav .header__tel-wrap span a {

  text-decoration: none;

  font-size: 2.4rem;

}



.open .main-nav .header__tel-wrap span:before {

  content: '\f879';

  font-family: 'Font Awesome 5 Free';

  font-weight: 900;

  font-size: 20px;

  padding-right: 10px;

}



.open .main-nav .header__reserve {

  background-color: #f29079;

  text-transform: uppercase;

  color: #fff;

  -webkit-transition: border-radius .3s ease-in-out;

  transition: border-radius .3s ease-in-out;
	
  max-width: 280px;	
  width: 100%;
}



.open .main-nav .header__reserve:hover {

  border-radius: 20px;

  -webkit-transition: border-radius .3s ease-in-out;

  transition: border-radius .3s ease-in-out;

}



.open .main-nav .header__reserve a {

  display: block;

  padding: 0.4em 1em;

  text-decoration: none;

  text-align: center;

}

.open .main-nav .header__cancel {

  background-color: #8d8d8d;

  text-transform: uppercase;

  color: #fff;

  -webkit-transition: border-radius .3s ease-in-out;

  transition: border-radius .3s ease-in-out;
	
　max-width: 280px;	
  width: 100%;
}



.open .main-nav .header__cancel:hover {

  border-radius: 20px;

  -webkit-transition: border-radius .3s ease-in-out;

  transition: border-radius .3s ease-in-out;

}



.open .main-nav .header__cancel a {

  display: block;

  padding: 0.4em 1em;

  text-decoration: none;

  text-align: center;

}

.open .main-nav .header__reserve-wrap p {
	margin: 10px auto 0;
	display: table;
}

.open .main-nav .header__reserve-wrap {

 margin-top: 10px;

  /* display: -webkit-box;

  display: -ms-flexbox;

  display: flex;*/

}



.open .main-nav .header__mail {

  width: 40px;

  height: 40px;

  border-radius: 50%;

  border: 1px solid #f29079;

  background-color: #fff;

  margin-left: 15px;

}



.open .main-nav .header__mail a {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;

  width: 100%;

  height: 100%;

}



.open .main-nav .header__mail img {

  line-height: 1.1;

  width: 18px;

  height: 14px;

  display: block;

}



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

  .header.open .main-nav {

    margin-top: 0;

    background-color: transparent;

    padding-top: 0;

    position: relative;

    top: auto;

    left: auto;

    right: auto;

    display: block;

    width: 742px;

    padding-bottom: 0;

    background-image: none;

  }

  .header.open .main-nav .main-nav__list {

    width: 742px;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;

  }

  .header.open .main-nav .main-nav__item {

    background-image: none;

  }

  .header.open .main-nav .main-nav__item a {

    padding: 0;

  }

  .header__mail {

    width: 40px;

    height: 40px;

    border-radius: 50%;

    border: 1px solid #f29079;

  }

  .header__mail a {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

    width: 100%;

    height: 100%;

  }

  .header__mail img {

    line-height: 1.1;

    width: 18px;

    height: 14px;

    display: block;

  }

}



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

  .header__reserve a {

    padding: 0.4em 0.5em;

  }

}



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

  .header__mail {

    /*width: 50px;*/

  }

}



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

  .main-nav {

    display: block;

    margin-left: 30px;

    -webkit-transform: translateY(-13px);

            transform: translateY(-13px);

  }

  .main-nav__list {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

  }

  .main-nav__item a {

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 1.8rem;

    display: block;

    position: relative;

    color: #000;

    text-decoration: none;

    padding-left: 1em;

    padding-right: 1em;

    position: relative;

    height: 150px;

    width: 65px;

  }

  .main-nav__item a:hover {

    opacity: 0.7;

    -webkit-transition: all .3s ease-in-out;

    transition: all .3s ease-in-out;

  }

  .main-nav__item a img {

    padding-bottom: 0.5em;

  }

  .main-nav__item a:after {

    content: url(../images/common/img_line-ver.png);

    position: absolute;

    right: -13px;

    top: 0;

  }

  .fixed .main-nav__item a:after {

    content: url(../images/common/img_line-ver-fixed.png);

  }

  .is-min .main-nav__item a:after {

    content: url(../images/common/img_line-ver-fixed.png);

  }

}



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

  .header__tel-wrap {

    display: block;

  }

}



@-moz-document url-prefix() {

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

    .main-nav__list {

      width: 426px;

      justify-content: space-between;

    }

    .header__info-wrap {

      margin-left: 90px;

    }

  }

}



@media screen and (-webkit-min-device-pixel-ratio: 0) {

  _::-webkit-full-page-media, _:future, :root .main-nav__list {

    width: 426px;

    -webkit-box-pack: justify;

            justify-content: space-between;

  }

}



@-webkit-keyframes fadeInDown {

  0% {

    opacity: 0;

    -webkit-transform: translateY(-20px);

    transform: translateY(-20px);

  }

  100% {

    opacity: 1;

    -webkit-transform: translateY(0);

    transform: translateY(0);

  }

}



@keyframes fadeInDown {

  0% {

    opacity: 0;

    -webkit-transform: translateY(-20px);

    transform: translateY(-20px);

  }

  100% {

    opacity: 1;

    -webkit-transform: translateY(0);

    transform: translateY(0);

  }

}



.fadeInDown {

  -webkit-animation-name: fadeInDown;

  animation-name: fadeInDown;

}



/*==================================================

** gnav

==================================================*/

/*==================================================

** hamburger

==================================================*/

.button-hamburger {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

  width: 60px;

  height: 60px;

  position: fixed;

  top: 0;

  right: 0;

  z-index: 1100;

  cursor: pointer;

}



.button-hamburger__bars, .button-hamburger__bar {

  display: block;

  -webkit-transition: all 0.4s;

  transition: all 0.4s;

  -webkit-box-sizing: border-box;

          box-sizing: border-box;

}



.button-hamburger__bars {

  position: relative;

  width: 30px;

  height: 22px;

}



.button-hamburger__bar {

  position: absolute;

  left: 0;

  width: 100%;

  height: 1px;

  background-color: #000;

  border-radius: 4px;

}



.button-hamburger__bar:nth-of-type(1) {

  top: 0;

}



.open .button-hamburger__bar:nth-of-type(1) {

  -webkit-transform: translateY(15px) rotate(-45deg);

          transform: translateY(15px) rotate(-45deg);

}



.button-hamburger__bar:nth-of-type(2) {

  top: 10px;

}



.open .button-hamburger__bar:nth-of-type(2) {

  left: 50%;

  opacity: 0;

}



.button-hamburger__bar:nth-of-type(3) {

  bottom: 0;

}



.open .button-hamburger__bar:nth-of-type(3) {

  -webkit-transform: translateY(-5px) rotate(45deg);

          transform: translateY(-5px) rotate(45deg);

}



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

  .button-hamburger {

    display: none;

  }

}



.main {

  width: 100%;

  overflow: hidden;

}



#top .main {

  background-image: url(../images/common/header/bg_header01-main.jpg);

}



_:-ms-lang(x)::-ms-backdrop, .main {

  display: block;

}



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

  .main {

    padding-top: 0;

  }

}



/*========= ローディング画面のためのCSS ===============*/

#splash {

  position: fixed;

  width: 100%;

  height: 100%;

  background: #fff8f4;

  z-index: 9999999;

  text-align: center;

  color: #fff;

}



#splash-logo {

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

          transform: translate(-50%, -50%);

}



/*========= 画面遷移のためのCSS ===============*/

/*画面遷移アニメーション*/

.splashbg {

  display: none;

}



/*bodyにappearクラスがついたら出現*/

body.appear .splashbg {

  display: block;

  content: "";

  position: fixed;

  z-index: 999;

  width: 100%;

  height: 100vh;

  top: 0;

  left: 0;

  -webkit-transform: scaleX(0);

          transform: scaleX(0);

  background-color: #f29079;

  /*伸びる背景色の設定*/

  -webkit-animation-name: PageAnime;

          animation-name: PageAnime;

  -webkit-animation-duration: 1.2s;

          animation-duration: 1.2s;

  -webkit-animation-timing-function: ease-in-out;

          animation-timing-function: ease-in-out;

  -webkit-animation-fill-mode: forwards;

          animation-fill-mode: forwards;

}



@-webkit-keyframes PageAnime {

  0% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

  50% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(1);

            transform: scaleX(1);

  }

  50.001% {

    -webkit-transform-origin: right;

            transform-origin: right;

  }

  100% {

    -webkit-transform-origin: right;

            transform-origin: right;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

}



@keyframes PageAnime {

  0% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

  50% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(1);

            transform: scaleX(1);

  }

  50.001% {

    -webkit-transform-origin: right;

            transform-origin: right;

  }

  100% {

    -webkit-transform-origin: right;

            transform-origin: right;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

}



/*画面遷移の後現れるコンテンツ設定*/

#container {

  opacity: 0;

  /*はじめは透過0に*/

}



/*bodyにappearクラスがついたら出現*/

body.appear #container {

  -webkit-animation-name: PageAnimeAppear;

          animation-name: PageAnimeAppear;

  -webkit-animation-duration: 1s;

          animation-duration: 1s;

  -webkit-animation-delay: 0.8s;

          animation-delay: 0.8s;

  -webkit-animation-fill-mode: forwards;

          animation-fill-mode: forwards;

  opacity: 0;

}



@-webkit-keyframes PageAnimeAppear {

  0% {

    opacity: 0;

  }

  100% {

    opacity: 1;

  }

}



@keyframes PageAnimeAppear {

  0% {

    opacity: 0;

  }

  100% {

    opacity: 1;

  }

}



.l-footer {

  background-image: url(../images/common/footer/bg_footer_sp@2x.jpg);

  background-size: cover;

  padding-top: 50px;

  padding-bottom: 25px;

}



.l-footer__nav-item a {

  font-size: 1.6rem;

}



.l-footer__nav-item a:hover {

  opacity: 0.7;

  -webkit-transition: opacity .3s ease-in-out;

  transition: opacity .3s ease-in-out;

  text-decoration: none;

}



.l-footer__info {

  margin-top: 24px;

  text-align: center;

}



.l-footer__logo {

  width: 134px;

  margin: 0 auto;

}



.l-footer__logo img {

  width: 100%;

}



.l-footer__address {

  font-style: normal;

}



.l-footer__info-item {

  letter-spacing: 0.06em;

}



.l-footer__check-list {

  margin-top: 2px;

}



.l-footer__tel {

  font-size: 2.4rem;

  padding-left: 10px;

  position: relative;

  margin-left: 15px;

  letter-spacing: 0.04em;

}



.l-footer__tel:before {

  content: '\f879';

  font-family: 'Font Awesome 5 Free';

  font-weight: 900;

  font-size: 17px;

  padding-right: 10px;

  vertical-align: middle;

  position: absolute;

  top: 50%;

  left: 0;

  -webkit-transform: translateY(-50%);

          transform: translateY(-50%);

}



.l-footer__tel a {

  padding-left: 12px;

}



.l-footer__tel-wrap {

  margin-top: 10px;

  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;

}



.l-footer__link {

  display: inline-block;

  background-color: #f29079;

  color: #fff;

  padding: 7px 10px;

  text-transform: uppercase;

	width: 100%;
    max-width: 280px;
    display: table;
    margin: 0 auto 10px;
}
.l-footer__link-cancel {

  display: inline-block;

  background-color: #8d8d8d;

  color: #fff;

  padding: 7px 10px;

  text-transform: uppercase;

	width: 100%;
    max-width: 280px;
    display: table;
    margin: 0 auto 10px;
	
}



.l-footer__link-info {

  /*margin-top: 10px;*/

 /* 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;*/
	
	display: table;
    margin: 10px auto 0;
}



.l-footer__link-mail {

  width: 100%;

  height: 100%;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

}



.l-footer__link-mail-wrap {

  width: 40px;

  height: 40px;

  border-radius: 50%;

  border: 1px solid #f29079;

  background-color: #fff;

  /*margin-left: 10px;*/
	
 display: flex;
 margin: 0 auto;

}



.l-footer__link-mail img {

  line-height: 1.1;

  width: 17px;

  height: 14px;

  display: block;

}



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

  .l-footer {

    background-image: url(../images/common/footer/bg_footer@2x@2x.jpg);

    background-size: cover;

    padding-top: 35px;

    padding-bottom: 10px;

  }

  .l-footer__space {

    display: inline-block;

    margin-left: 20px;

  }

  .l-footer__nav {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

  }

  .l-footer__nav-item + .l-footer__nav-item {

    margin-left: 35px;

  }

  .l-footer__content {

    margin-top: 40px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

  }

  .l-footer__logo {

    width: 83px;

    margin: 0;

  }

  .l-footer__info {

    margin-top: 20px;

    margin-left: 80px;

    text-align: left;

  }

  .l-footer__address {

    margin-top: 10px;

  }

  .l-footer__info-list {

    margin-top: 10px;

  }

  .l-footer__check-list {

    margin-top: 10px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

  }

  .l-footer__tel-info-wrap {

    margin-top: 20px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

  }

  .l-footer__tel-wrap {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .l-footer__tel {

    font-size: 3rem;

    padding-left: 30px;

  }

  .l-footer__tel:before {

    top: 55%;

    font-size: 20px;

    left: 9px;

  }

  .l-footer__link {

    padding: 5px 20px;

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;
	  
	  text-align: center;
	  width: auto;
	  margin-bottom: 0px;

  }

  .l-footer__link:hover {

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;

    border-radius: 20px;

    text-decoration: none;

  }

  .l-footer__link a {

    text-decoration: none;

  }
    .l-footer__link-cancel {

    padding: 5px 20px;

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;
	text-align: center;
	width: auto;
	margin-bottom: 0px;
	margin-left: 10px;
  }

  .l-footer__link-cancel:hover {

    -webkit-transition: border-radius .3s ease-in-out;

    transition: border-radius .3s ease-in-out;

    border-radius: 20px;

    text-decoration: none;

  }

  .l-footer__link-cancel a {

    text-decoration: none;

  }
	
.l-footer__link-mail-wrap{
		margin-left: 10px;
	}

  .l-footer__link-info {

    /*margin-left: 30px;*/
	  margin: 0;
	  
	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;

  }

}



/*==================================================

** footer-bottom

==================================================*/

.footer__bottom {

  margin-top: 20px;

}



.footer__bottom .u-inner {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;

}



.footer__bottom-img {

  margin-right: 10px;

}



.footer__bottom-img img {

  vertical-align: middle;

  line-height: 1;

}



.footer__bottom small {

  display: block;

  font-size: t(23px);

}



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

  .footer__bottom {

    margin-top: 40px;

  }

}



/*==================================================

** kv

==================================================*/

/*==================================================

** kv

==================================================*/

.kv {

  background-image: url(../images/cuisine/mv01.jpg);

  background-position: center;

  background-size: cover;

  height: 150px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;

  width: 100%;

  margin-top: 60px;

}



.kv.is-facility {

  background-image: url(../images/facility/mv01.jpg);

}



.kv.is-spa {

  background-image: url(../images/spa/mv01.jpg);

}



.kv.is-access {

  background-image: url(../images/access/mv01.jpg);

}



.kv.is-contact {

  background-image: url(../images/contact/mv01.jpg);

}



.kv.is-news {

  background-image: url(../images/news/mv01.jpg);

}



.kv__ttl {

  font-size: 2rem;

  color: #fff;

  font-weight: 500;

  letter-spacing: 0.15em;

}



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

  .kv {

    height: 500px;

    margin-top: 90px;

  }

  .kv__ttl {

    font-size: 4rem;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

  }

}



/*==================================================

** banner

==================================================*/

.banner {

  text-align: center;

  margin: 0 auto;

}



.banner.is-bg-white {

  background-image: url(../images/common/bg__banner.jpg);

}



.banner__inner {

  width: 100% !important;

  padding-top: 30px;

}



.is-bg-pink .banner__inner {

  padding-top: 50px;

  padding-bottom: 50px;

}



.is-bg-white .banner__inner {

  padding-top: 50px;

  padding-bottom: 50px;

}



.banner__img {

  max-width: 550px;

  margin: 0 auto;

}



.banner a {

  display: block;

  margin: 0 auto;

}



.banner a img {

  width: 100%;

}



.banner a:hover {

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}

.cancel_banner{
	margin-top: 15px;
}
.cancel_banner a{
	background-color: #8d8d8d;
	padding: 10px;
	color: #FFFFFF;
	font-size: 1.2em;
	text-shadow: 0 0 6px #000;
}
.cancel_banner a span{
	font-size: 0.8em;
	font-weight: bold;
	margin-left: 5px;
	background-color: #FFFFFF;
	padding: 5px 15px 3px 10px;
	border-radius: 20px;
	color: #000;
	text-shadow: none;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
.cancel_banner a:hover {
    border-radius: 40px;
    -webkit-transition: border-radius .3s ease-in-out;
    transition: border-radius .3s ease-in-out;
	text-decoration: none;
  }



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

  .banner.is-bg-pink {

    background-image: url(../images/common/bg_pink-light-pc.jpg);

  }

  .banner__inner {

    width: 100%;

    padding-top: 80px;

  }

  .is-bg-pink .banner__inner {

    padding-top: 70px;

    padding-bottom: 80px;

  }

  .is-bg-white .banner__inner {

    padding-top: 90px;

    padding-bottom: 90px;

  }

  .banner__img {

    max-width: 1100px;

  }

}



/*==================================================

** banner-colona

==================================================*/

.banner-colona {

  text-align: center;

  max-width: 550px;

  margin: 0 auto;

}



.banner-colona a {

  display: block;

  margin: 0 auto;

  margin-top: 30px;

}



.banner-colona a img {

  width: 100%;

}



.banner-colona a:hover {

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.banner-colona__ttl {

  color: #7d0022;

  text-align: center;

  font-size: 2rem;

}



.banner-colona__txt {

  text-align: center;

  font-size: 1.4rem;

}



.banner-colona__ttl-sub {

  color: #7d0022;

  margin-top: 15px;

  font-size: 1.8rem;

}



.banner-colona__list {

  margin-top: 5px;

  font-size: 1.4rem;

}



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

  .banner-colona {

    margin-top: 60px;

    max-width: 1100px;

  }

  .banner-colona .u-inner {

    width: 100%;

  }

  .banner-colona__ttl {

    font-size: 2.4rem;

  }

  .banner-colona__txt {

    font-size: 1.6rem;

  }

  .banner-colona__ttl-sub {

    font-size: 2rem;

  }

  .banner-colona__list {

    font-size: 1.6rem;

  }

}



/*==================================================

** secttl

==================================================*/

.sec__ttl {

  text-align: center;

  position: relative;

}



.sec__ttl:before {

  content: "";

  display: inline-block;

  background-size: contain;

  position: absolute;

  z-index: 0;

  width: 81px;

  height: 81px;

  top: -30px;

  left: 50%;

  -webkit-transform: translateX(-50%);

          transform: translateX(-50%);

  background-image: url(../images/common/img_ttl-deco.png);

}



.sec__ttl-ja {

  font-size: 1.9rem;

  line-height: 1.3;

  position: relative;

  z-index: 1;

  display: block;

  font-weight: 500;

}



.sec__ttl-ja.is-large {

  font-size: 2.1rem;

}



.sec__ttl-ja.is-small {

  font-size: 1.6rem;

}



.sec__ttl-ja.is-left {

  text-align: left;

}



.sec__ttl-en {

  display: block;

  font-size: 1rem;

  line-height: 1.1;

  display: block;

  position: relative;

  z-index: 1;

}



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

  .sec__ttl:before {

    width: 163px;

    height: 163px;

    top: -70px;

  }

  .sec__ttl-ja {

    font-size: 3.6rem;

  }

  .sec__ttl-ja.is-large {

    font-size: 3.6rem;

  }

  .sec__ttl-ja.is-small {

    font-size: 2.8rem;

  }

  .sec__ttl-en {

    font-size: 1.4rem;

  }

}



/*==================================================

** sec-pagettl

==================================================*/

/*==================================================

blur

===================================*/

.blur {

  -webkit-animation-name: blurAnime;

          animation-name: blurAnime;

  -webkit-animation-duration: 1s;

          animation-duration: 1s;

  -webkit-animation-fill-mode: forwards;

          animation-fill-mode: forwards;

}



@-webkit-keyframes blurAnime {

  from {

    -webkit-filter: blur(10px);

            filter: blur(10px);

    -webkit-transform: scale(1.02);

            transform: scale(1.02);

    opacity: 0;

  }

  to {

    -webkit-filter: blur(0);

            filter: blur(0);

    -webkit-transform: scale(1);

            transform: scale(1);

    opacity: 1;

  }

}



@keyframes blurAnime {

  from {

    -webkit-filter: blur(10px);

            filter: blur(10px);

    -webkit-transform: scale(1.02);

            transform: scale(1.02);

    opacity: 0;

  }

  to {

    -webkit-filter: blur(0);

            filter: blur(0);

    -webkit-transform: scale(1);

            transform: scale(1);

    opacity: 1;

  }

}



.blurTrigger {

  opacity: 0;

}



/*==================================================

c-head01

===================================*/

.c-head01-ja {

  font-size: 1.9rem;

  display: inline-block;

  position: relative;

  z-index: 0;

}



.c-head01-ja:before {

  content: "";

  display: inline-block;

  background-size: contain;

  position: absolute;

  z-index: -1;

  width: 81px;

  height: 81px;

  top: -30px;

  left: -20px;

  background-image: url(../images/common/img_ttl-deco.png);

}



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

  .c-head01-ja {

    font-size: 2.8rem;

  }

  .c-head01-ja:before {

    width: 217px;

    height: 217px;

  }

}



/*==================================================

** top-top

==================================================*/

.top-btn {

  max-width: 970px;

  width: 25px;

  height: 25px;

  position: fixed;

  bottom: 50px;

  right: 20px;

	z-index: 10000;

}



/*----- .top-btn -----*/

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

  .top-btn {

    max-width: 970px;

    width: 37px;

    height: 37px;

    position: fixed;

    bottom: 50px;

    right: 30px;

	z-index: 10000;

  }

}



.top-btn:hover {

  cursor: pointer;

}



/*==================================================

** video

==================================================*/

.movie {

  padding-top: 60px;

}



.movie video {

  width: 100%;

}



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

  .movie {

    padding-top: 0;

  }

}



/*==================================================

** greeting

==================================================*/

.greeting {

  padding-top: 15px;

  padding-bottom: 45px;

  background-image: url(../images/top/bg_intro01_sp@2x.jpg);

  background-size: cover;

}



.greeting__ttl {

  font-size: t(45px);

  color: #805e79;

  text-align: center;

  position: relative;

}



.greeting__leader {

  font-size: 1.8rem;

  font-weight: 500;

  margin-top: 25px;

  line-height: 1.8;

}



.greeting__leader-txt {

  font-size: 1.6rem;

  line-height: 1.75;

  margin-top: 10px;

}



.greeting__leader-txt-in {

  text-combine-upright: all;

}



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

  .greeting {

    padding-top: 150px;

    padding-bottom: 155px;

    background-image: url(../images/top/bg_intro01.jpg);

    margin-top: 140px;

  }

  .fixed .greeting {

    margin-top: 100px;

  }

  .greeting:after {

    content: none;

  }

  .greeting__ttl {

    text-align: left;

    display: block;

  }

  .greeting__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

    width: 950px;

    max-width: 100%;

    height: 465px;

    margin: 0 auto;

    position: relative;

  }

  .greeting__ttl {

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 29px;

    margin-right: 25px;

  }

  .greeting__leader {

    margin-top: 0;

    margin-right: 50px;

    font-size: 30px;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    text-align: left;

    line-height: 2;

  }

  .greeting__leader .block {

    margin-top: 70px;

  }

  .greeting__leader-txt {

    margin-top: 60px;

    margin-right: 70px;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 18px;

    line-height: 2.9;

  }

}



/*==================================================

** attr

==================================================*/

.attr {

  background-image: url(../images/common/bg__pink.jpg);

}



.attr__inner {

  padding-top: 70px;

  padding-bottom: 75px;

}



.attr__item + .attr__item {

  margin-top: 70px;

}



.attr__link {

  text-decoration: none;

}



.attr__link:hover {

  text-decoration: none;

}



.attr__link:hover .attr__img {

  overflow: hidden;

}



.attr__link:hover .attr__img img {

  -webkit-transform: scale(1.2, 1.2);

          transform: scale(1.2, 1.2);

}



.attr__link:hover .attr__btn {

  background-color: #f29079;

  border-radius: 20px;

}



.attr__txtbox {

  text-align: center;

}



.attr__num {

  display: block;

  width: 50px;

  position: relative;

  z-index: 1;

}



.attr__num:after {

  content: "";

  display: inline-block;

  background-size: contain;

  position: absolute;

  z-index: 0;

  width: 109px;

  height: 109px;

  top: -30px;

  left: -24px;

  background-image: url(../images/common/img_ttl-deco.png);

}



.attr__num img {

  position: relative;

  z-index: 1;

  width: 100%;

}



.attr__ttl {

  position: relative;

  z-index: 1;

  font-size: 1.9rem;

  font-weight: 500;

  text-align: left;

  margin-top: 5px;

}



.attr__ttl-in {

  display: inline-block;

}



.attr__txt {

  position: relative;

  z-index: 1;

  margin-top: 15px;

  text-align: left;

  font-size: 1.6rem;

}



.attr__img {

  position: relative;

  z-index: 1;

  margin-top: 20px;

  position: relative;

  z-index: 0;

}



.attr__img img {

  -webkit-transition: all .6s ease-out 0.1s;

  transition: all .6s ease-out 0.1s;

}



.attr__img:after {

  content: "";

  background-image: url(../images/common/img_sakura01.png);

  width: 83px;

  height: 62px;

  display: inline-block;

  background-size: contain;

  position: absolute;

  bottom: -17px;

  left: -40px;

  z-index: 1;

}



.is-reverse .attr__img:after {

  left: auto;

  right: -15px;

}



.attr__btn {

  margin-top: 25px;

  display: inline-block;

  padding: 14px 80px;

  font-size: 1.6rem;

  background-color: #fff;

  background-image: url(../images/common/bg_btn-pink.png);

  background-size: cover;

  color: #fff;

  -webkit-transition: all .6s ease-out 0.1s;

  transition: all .6s ease-out 0.1s;

}



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

  .attr__inner {

    padding-top: 120px;

    padding-bottom: 95px;

  }

  .attr__item {

    position: relative;

    z-index: 0;

  }

  .attr__item + .attr__item {

    margin-top: 115px;

  }

  .attr__item:after {

    content: "";

    background-image: url(../images/common/img_sakura01.png);

    width: 133px;

    height: 100px;

    display: inline-block;

    background-size: contain;

    position: absolute;

    bottom: -20px;

    left: -54px;

    z-index: 1;

  }

  .attr__item.is-reverse:after {

    left: auto;

    bottom: -40px;

    right: -15px;

  }

  .attr__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;

    -webkit-box-align: start;

        -ms-flex-align: start;

            align-items: flex-start;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .is-reverse .attr__content {

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

  }

  .attr__img {

    margin-top: 0;

    width: 47.7%;

  }

  .attr__img:after {

    content: none;

  }

  .attr__txtbox {

    width: 48.7%;

    text-align: center;

  }

  .attr__num {

    width: 90px;

    text-align: left;

  }

  .attr__num:after {

    top: -72px;

    left: -62px;

    width: 217px;

    height: 217px;

  }

  .attr__ttl {

    margin-top: 10px;

    font-size: 3.2rem;

    text-align: left;

  }

  .attr__txt {

    font-size: 1.6rem;

    text-align: left;

    line-height: 2.3;

  }

  .attr__txt-in {

    display: inline-block;

  }

  .attr__btn {

    margin-top: 55px;

    text-align: center;

  }

}



/*========= レイアウトのためのCSS ===============*/

/*========= 背景色の動きのCSS ===============*/

/*背景色が伸びて出現 共通*/

.bgextend {

  -webkit-animation-name: bgextendAnimeBase;

          animation-name: bgextendAnimeBase;

  -webkit-animation-duration: 1s;

          animation-duration: 1s;

  -webkit-animation-fill-mode: forwards;

          animation-fill-mode: forwards;

  position: relative;

  overflow: hidden;

  /*　はみ出た色要素を隠す　*/

  opacity: 0;

}



@-webkit-keyframes bgextendAnimeBase {

  from {

    opacity: 0;

  }

  to {

    opacity: 1;

  }

}



@keyframes bgextendAnimeBase {

  from {

    opacity: 0;

  }

  to {

    opacity: 1;

  }

}



/*中の要素*/

.bgappear {

  -webkit-animation-name: bgextendAnimeSecond;

          animation-name: bgextendAnimeSecond;

  -webkit-animation-duration: 1s;

          animation-duration: 1s;

  -webkit-animation-delay: 0.6s;

          animation-delay: 0.6s;

  -webkit-animation-fill-mode: forwards;

          animation-fill-mode: forwards;

  opacity: 0;

}



@-webkit-keyframes bgextendAnimeSecond {

  0% {

    opacity: 0;

  }

  100% {

    opacity: 1;

  }

}



@keyframes bgextendAnimeSecond {

  0% {

    opacity: 0;

  }

  100% {

    opacity: 1;

  }

}



/*--------- 左から --------*/

.bgLRextend::before {

  -webkit-animation-name: bgLRextendAnime;

          animation-name: bgLRextendAnime;

  -webkit-animation-duration: 1s;

          animation-duration: 1s;

  -webkit-animation-fill-mode: forwards;

          animation-fill-mode: forwards;

  content: "";

  position: absolute;

  width: 100%;

  height: 100%;

  background-color: #f29079;

  /*伸びる背景色の設定*/

  opacity: 0.7;

}



@-webkit-keyframes bgLRextendAnime {

  0% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

  50% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(1);

            transform: scaleX(1);

  }

  50.001% {

    -webkit-transform-origin: right;

            transform-origin: right;

  }

  100% {

    -webkit-transform-origin: right;

            transform-origin: right;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

}



@keyframes bgLRextendAnime {

  0% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

  50% {

    -webkit-transform-origin: left;

            transform-origin: left;

    -webkit-transform: scaleX(1);

            transform: scaleX(1);

  }

  50.001% {

    -webkit-transform-origin: right;

            transform-origin: right;

  }

  100% {

    -webkit-transform-origin: right;

            transform-origin: right;

    -webkit-transform: scaleX(0);

            transform: scaleX(0);

  }

}



/*==================================================

** search

==================================================*/

.search {

  background-color: #fddad4;

  padding: 25px 0;

}



.search__ttl {

  text-align: center;

}



.search__ttl-in {

  font-size: 1.9rem;

  line-height: 1.3;

}



.search__ttl-en {

  font-size: 1rem;

  line-height: 1.1;

  display: block;

}



.search input[type=text] {

  background-color: #fff;

  width: 100%;

  padding: 0.5em 1em;

}



.search select {

  background-color: #fff;

  width: 100%;

  padding: 0.5em 1em;

  -webkit-appearance: none;

     -moz-appearance: none;

          appearance: none;

  position: relative;

  background-image: url(../images/top/chevron-down-solid.svg);

  background-repeat: no-repeat;

  background-position: center right 10px;

  background-size: 10px;

}



.search .line + .line {

  margin-top: 0.5em;

}



.search .undecided {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

}



.search .price {

  text-align: center;

}



.search .price .title {

  text-align: left;

}



.search_btn {

  margin-top: 20px;

  text-align: center;

}



.search_btn input[type=image] {

  width: 150px;

}



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

  .search {

    background-image: url(../images/top/bg_search01.jpg);

    background-size: 100% auto;

    background-repeat: no-repeat;

    padding: 40px 0 55px;

  }

  .search__ttl {

    position: relative;

  }

  .search__ttl:before {

    content: "";

    width: 1px;

    height: 150px;

    background-color: #000;

    opacity: 0.17;

    position: absolute;

    top: 0;

    right: -45px;

  }

  .search .plan-wrap {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .search .form-wrap {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;

    margin-left: 100px;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .search .form_box {

    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;

    width: 650px;

  }

  .search .title {

    font-size: 1.8rem;

  }

  .search input[type=text] {

    margin-left: 18px;

    padding-left: 0.5em;

  }

  .search select {

    margin-left: 20px;

    background-position: center right 5px;

  }

  .search .line {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .search .line.line {

    margin-top: 10px;

  }

  .search .check_in {

    margin-right: 50px;

  }

  .search .undecided {

    margin-right: 40px;

  }

  .search .type {

    margin-right: 30px;

  }

  .search .guests {

    margin-top: 10px;

  }

  .search .price {

    text-align: left;

    margin-top: 10px;

    margin-left: 40px;

  }

  .search .price .title {

    margin-right: 30px;

  }

  .search .price select {

    margin-left: 0;

  }

  .search .price span {

    display: block;

    margin-left: 10px;

    margin-right: 10px;

  }

  .search input[type=text] {

    width: 85px;

    padding: 0.3em 0.5em;

  }

  .search select {

    width: 70px;

    padding: 0.3em 0.5em;

  }

  .search .price select {

    width: 90px;

  }

  .search_btn {

    text-align: left;

  }

  .search_btn input[type=image] {

    width: 194px;

  }

}



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

  .search_btn {

    width: 194px;

    margin: 20px auto 0;

  }

}



/*==================================================

** news

==================================================*/

.news {

  background-color: #fff;

}



/*==================================================

** plan

==================================================*/

.plan {

  padding-top: 70px;

  text-align: center;

}



.plan .sec__ttl {

  display: inline-block;

  position: relative;

}



.plan_rss {

  margin-top: 20px;

}



.plan .mini {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  background-color: #fff;

  padding-bottom: 20px;

}



.plan .mini + .mini {

  margin-top: 30px;

}



.plan .mini a {

  text-decoration: none;

}



.plan .mini a:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.plan_text {

  padding-left: 20px;

  padding-right: 20px;

}



.plan h3 {

  font-size: 1.6rem;

  text-align: center;

  font-weight: 500;

  overflow: hidden;

  display: -webkit-box;

  -webkit-box-orient: vertical;

  -webkit-line-clamp: 1;

  text-overflow: ellipsis;

  margin-top: 10px;

}



.plan_txt {

  font-size: 1.6rem;

  font-weight: 400;

  text-align: justify;

  overflow: hidden;

  display: -webkit-box;

  -webkit-box-orient: vertical;

  -webkit-line-clamp: 3;

  text-overflow: ellipsis;

  padding-top: 10px;

  position: relative;

}



.plan_img a {

  width: 100%;

  display: block;

}



.plan_img a:hover {

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.plan_img img {

  width: 100%;

}



.plan_btn {

  display: block;

  padding: 5px 40px;

  background-color: #f29079;

  -webkit-box-shadow: 0 0 2px 2px #f29079;

          box-shadow: 0 0 2px 2px #f29079;

  color: #fff;

  text-align: center;

  max-width: 275px;

  margin: 30px auto 0;

}



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

  .plan {

    padding-top: 110px;

  }

  .plan_rss {

    width: 100%;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: start;

        -ms-flex-pack: start;

            justify-content: flex-start;

    margin-top: 50px;

  }

  .plan .mini {

    width: 23.6%;

  }

  .plan .mini:nth-child(n+2) {

    margin-left: 2%;

  }

  .plan .mini + .mini {

    margin-top: 0;

  }

  .plan h3 {

    font-size: 1.8rem;

    line-height: 1.3;

    margin-top: 10px;

    text-align: left;

  }

  .plan_txt {

    font-size: 1.4rem;

    overflow: hidden;

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 3;

    text-overflow: ellipsis;

  }

  .plan_btn {

    margin-top: 15px;

  }

}



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

  .plan_btn {

    font-size: 1.4rem;

    padding: 5px 10px;

  }

}



/*==================================================

** update

==================================================*/

.update__wrap {

  background-image: url(../images/common/bg__pink.jpg);

  padding-bottom: 50px;

}



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

  .update {

    margin-top: 65px;

  }

  .update__wrap {

    padding-bottom: 115px;

    background-size: cover;

  }

  .update__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

  }

  .update .u-inner {

    width: 95%;

  }

}



/*==================================================

** news

==================================================*/

.news {

  margin-top: 25px;

  padding: 25px;

  padding-top: 43px;

}



.news .u-inner {

  width: 100%;

}



.news__list {

  margin-top: 30px;

}



.news__item {

  padding-bottom: 10px;

  position: relative;

}



.news__item:after {

  content: "";

  background-image: url(../images/common/img_line-black@0.5x.png);

  background-size: contain;

  display: inline-block;

  position: absolute;

  bottom: 0;

  width: 100%;

  height: 2px;

}



.news__item:nth-child(n+2) {

  margin-top: 25px;

}



.news__item a {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  text-decoration: none;

}



.news__item a:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.news__img {

  width: 23.2%;

}



.news__img img {

  width: 100%;

}



.news__txtbox {

  width: 70.5%;

  margin-left: 20px;

}



.news__ttl {

  font-size: 1.6rem;

}



.news__txt {

  font-size: 1.6rem;

  line-height: 1.3;

  overflow: hidden;

  display: -webkit-box;

  -webkit-box-orient: vertical;

  -webkit-line-clamp: 2;

  text-overflow: ellipsis;

}



.news__btn {

  display: block;

  padding: 7px 40px;

  background-color: #f29079;

  -webkit-box-shadow: 0 0 2px 2px #f29079;

          box-shadow: 0 0 2px 2px #f29079;

  color: #fff;

  text-align: center;

  max-width: 275px;

  margin: 30px auto 0;

  text-decoration: none;

}



.news__btn:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



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

  .news {

    margin-top: 0;

    width: 48%;

  }

  .news .u-inner {

    width: 100%;

  }

  .news__ttl-wrap:before {

    width: 142px;

    height: 142px;

    top: -41px;

  }

  .news__ttl-main {

    font-size: 3.4rem;

  }

  .news__img {

    width: 16.2%;

  }

  .news__txt {

    overflow: hidden;

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 1;

    text-overflow: ellipsis;

  }

  .news__btn {

    padding: 5px 10px;

    max-width: 217px;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;

  }

}



/*==================================================

** media

==================================================*/

.media .u-inner {

  width: 100%;

}



.media-bnr__tabiiro {

  margin-top: 48px;

}



.media-bnr__tabiiro a {

  text-decoration: none;

}



.media-bnr__tabiiro a:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.media-bnr__tougou {

  margin-top: 25px;

}



.media-bnr__tougou a {

  text-decoration: none;

}



.media-bnr__tougou a:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.media-bnr__isyou {

  margin-top: 25px;

}



.media-bnr__isyou a {

  text-decoration: none;

}



.media-bnr__isyou a:hover {

  text-decoration: none;

  opacity: 0.7;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.media-youtube {

  margin-top: 25px;

  width: 100%;

  padding-bottom: 56.25%;

  height: 0px;

  position: relative;

}



.media-youtube iframe {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

}



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

  .media {

    width: 48%;

  }

  .media .u-inner {

    width: 100%;

  }

  .media-bnr__tabiiro {

    margin-top: 0;

  }

}



/*全て共通：hideエリアをはじめは非表示*/

.hide-area {

  display: none;

}



/*全て共通：モーダルのボタンの色を変更したい場合*/

.modaal-close:after,

.modaal-close:before {

  background: #ccc;

}



.modaal-close:focus:after,

.modaal-close:focus:before,

.modaal-close:hover:after,

.modaal-close:hover:before {

  background: #666;

}



/*確認を促すモーダル：タイトルの色を変更したい場合*/

#modaal-title {

  font-size: 1.2rem;

  text-align: center;

  margin: 0 0 20px 0;

}



/*動画表示のモーダル：余白を変更したい場合*/

.modaal-video .modaal-inner-wrapper {

  padding: 0;

}



/*==================================================

** bottom-nav

==================================================*/

.bottom-nav {

  padding-top: 25px;

  padding-bottom: 25px;

  background-color: #fff;

}



.bottom-nav__wrao {

  background-color: #fff;

}



.bottom-nav__item a {

  display: block;

  padding: 10px;

}



.bottom-nav__line {

  background-image: url(../images/common/img_line.png);

  height: 2px;

  width: 100%;

  display: block;

  background-repeat: repeat;

}



/*==================================================

** greeting

==================================================*/

.spa-greeting {

  padding-top: 15px;

  padding-bottom: 45px;

  background-image: url(../images/common/bg_pink-dark-min-sp.jpg);

  background-size: cover;

}



.spa-greeting__inner {

  padding-top: 22px;

  position: relative;

  z-index: 1;

}



.spa-greeting__inner:before {

  content: "";

  background-image: url(../images/spa/bg-white.png);

  display: inline-block;

  width: 588px;

  height: 470px;

  background-size: contain;

  position: absolute;

  top: 100px;

  left: 43%;

  -webkit-transform: translateX(-50%);

          transform: translateX(-50%);

}



.spa-greeting__ttl {

  font-size: t(45px);

  color: #805e79;

  text-align: center;

  position: relative;

}



.spa-greeting__leader {

  font-size: 1.8rem;

  font-weight: 500;

  margin-top: 25px;

  line-height: 1.8;

}



.spa-greeting__leader-txt {

  font-size: 1.6rem;

  line-height: 1.75;

  margin-top: 10px;

}



.spa-greeting__leader-txt-in {

  text-combine-upright: all;

}



.spa-greeting__content {

  position: relative;

  z-index: 1;

}



.spa-greeting__img {

  position: relative;

  z-index: 2;

  margin-top: 20px;

}



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

  .spa-greeting {

    padding-top: 195px;

    padding-bottom: 100px;

    background-image: url(../images/common/bg_pink-dark-min-pc.jpg);

  }

  .spa-greeting__inner {

    padding-top: 0;

    position: relative;

  }

  .spa-greeting__inner:before {

    width: 1177px;

    height: 941px;

    top: -210px;

    left: 50%;

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%);

  }

  .fixed .spa-greeting {

    margin-top: 0;

  }

  .spa-greeting:after {

    content: none;

  }

  .spa-greeting__ttl {

    text-align: left;

    display: block;

  }

  .spa-greeting__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

    width: 970px;

    max-width: 100%;

    height: 440px;

    margin: 0 auto;

    position: relative;

  }

  .spa-greeting__ttl {

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 29px;

    margin-right: 25px;

  }

  .spa-greeting__leader {

    margin-top: 0;

    margin-right: 50px;

    font-size: 30px;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    text-align: left;

    line-height: 2;

  }

  .spa-greeting__leader .block {

    margin-top: 70px;

  }

  .spa-greeting__leader-txt {

    margin-top: 80px;

    margin-right: 3.5em;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 18px;

    line-height: 2.9;

    height: 314px;

  }

  .spa-greeting__img {

    margin-top: 0;

  }

}



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

  .spa-greeting__leader {

    font-size: 2.6rem;

  }

  .spa-greeting__leader-txt {

    margin-right: 1.5em;

    height: 345px;

    margin-top: 30px;

  }

}



/*==================================================

** men

==================================================*/

.spa-men__inner {

  padding-top: 60px;

}



.spa-men__ttl-main-wrap:before {

  content: none;

}



.spa-men__img-box {

  margin-top: 20px;

}



.spa-men__img-sub-list {

  margin-top: 10px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

      -ms-flex-pack: justify;

          justify-content: space-between;

}



.spa-men__img-sub {

  width: 48.5%;

}



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

  .spa-men__inner {

    padding-top: 195px;

  }

  .spa-men__ttl-main-wrap:before {

    content: none;

  }

  .spa-men__ttl-main-in:before {

    left: -150px !important;

  }

  .spa-men__img-box {

    margin-top: 45px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .spa-men__img-main {

    width: 70.5%;

  }

  .spa-men__img-sub-list {

    margin-top: 0;

    display: block;

    width: 27.2%;

  }

  .spa-men__img-sub {

    width: 100%;

  }

  .spa-men__img-sub + .spa-men__img-sub {

    margin-top: 25px;

  }

}



/*==================================================

** woman

==================================================*/

.spa-woman__inner {

  padding-top: 60px;

  padding-bottom: 50px;

}



.spa-woman__ttl-main-wrap:before {

  content: none;

}



.spa-woman__img-box {

  margin-top: 20px;

}



.spa-woman__img-second {

  margin-top: 10px;

}



.spa-woman__img-sub-list {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

      -ms-flex-pack: justify;

          justify-content: space-between;

  margin-top: 10px;

  position: relative;

  z-index: 1;

}



.spa-woman__img-sub {

  width: 48.5%;

}



.spa-woman__add {

  margin-top: 50px;

  background-color: #fff;

  padding: 15px;

  text-align: center;

  position: relative;

  z-index: 1;

}



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

  .spa-woman__inner {

    padding-top: 140px;

    padding-bottom: 100px;

  }

  .spa-woman__ttl-main-wrap:before {

    content: none;

  }

  .spa-woman__ttl-main-in:before {

    left: -150px !important;

  }

  .spa-woman__img-box {

    margin-top: 50px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

  }

  .spa-woman__img-main {

    width: 58.8%;

  }

  .spa-woman__img-left {

    width: 38.8%;

  }

  .spa-woman__img-sub-list {

    margin-top: 23px;

  }

  .spa-woman__img-sub {

    width: 47.2%;

  }

  .spa-woman__img-second {

    margin-top: 0;

  }

  .spa-woman__add {

    font-size: 1.8rem;

    width: 80%;

    margin: 100px auto 0;

  }

}



/*==================================================

** kasikiri

==================================================*/

.spa-kasikiri__inner {

  padding-top: 60px;

  padding-bottom: 60px;

}



.spa-kasikiri__ttl {

  margin-top: 35px;

}



.spa-kasikiri__txt {

  margin-top: 0.5em;

  line-height: 1.75;

  position: relative;

  z-index: 1;

}



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

  .spa-kasikiri__inner {

    padding-top: 100px;

    padding-bottom: 100px;

  }

  .spa-kasikiri__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .spa-kasikiri__img {

    width: 48%;

  }

  .spa-kasikiri__txt-box {

    width: 47%;

  }

  .spa-kasikiri__txt {

    margin-top: 1em;

    font-size: 1.8rem;

    line-height: 2.3;

  }

}



/*==================================================

** about

==================================================*/

.cuisine-about {

  background-image: url(../images/common/bg_pink-dark-sp.jpg);

  background-size: cover;

}



.cuisine-about__inner {

  padding-top: 70px;

  padding-bottom: 50px;

}



.cuisine-about__ttl {

  font-size: 1.9rem;

  letter-spacing: 0.04em;

  line-height: 1.3;

  font-weight: 500;

}



.cuisine-about__txt {

  margin-top: 0.7em;

  font-size: 1.6rem;

  line-height: 1.75;

  letter-spacing: 0.02em;

}



.cuisine-about__box-img {

  margin-top: 20px;

}



.cuisine-about__img-main {

  position: relative;

}



.cuisine-about__img-main:after {

  content: "";

  background-image: url(../images/common/img_sakura01.png);

  width: 83px;

  height: 62px;

  display: inline-block;

  background-size: contain;

  position: absolute;

  bottom: -17px;

  left: -40px;

  z-index: 1;

}



.cuisine-about__img-sub-list {

  margin-top: 8px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

      -ms-flex-pack: justify;

          justify-content: space-between;

}



.cuisine-about__img-sub {

  width: 48.5%;

}



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

  .cuisine-about {

    background-image: url(../images/common/bg_pink-dark-pc.jpg);

    background-size: 100% auto;

  }

  .cuisine-about__inner {

    width: 100% !important;

    margin: 0 !important;

    max-width: none !important;

    padding-top: 100px;

    padding-bottom: 100px;

  }

  .cuisine-about__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: start;

        -ms-flex-align: start;

            align-items: flex-start;

  }

  .cuisine-about__img-main {

    width: 880px;

    max-width: 48.5%;

  }

  .cuisine-about__img-main:after {

    content: "";

    background-image: url(../images/common/img_sakura01.png);

    width: 133px;

    height: 100px;

    display: inline-block;

    background-size: contain;

    position: absolute;

    left: auto;

    bottom: -40px;

    right: -15px;

    z-index: 1;

  }

  .cuisine-about__right {

    max-width: 520px;

    margin-left: 50px;

  }

  .cuisine-about__ttl {

    font-size: 2.8rem;

    line-height: 1.7;

  }

  .cuisine-about__txt {

    margin-top: 0.5em;

    font-size: 1.8rem;

    line-height: 2;

  }

}



/*==================================================

** dinner

==================================================*/

.cuisine-dinner {

  background-image: url(../images/common/bg_pink-light-sp.jpg);

  background-size: 100% auto;

}



.cuisine-dinner__inner {

  padding-top: 95px;

  padding-bottom: 50px;

  position: relative;

  z-index: 1;

}



.cuisine-dinner__ttl-main-wrap:before {

  content: none;

}



.cuisine-dinner__leader {

  margin-top: 20px;

  font-weight: 500;

}



.cuisine-dinner__leader-sub {

  margin-top: 1em;

  font-size: 1.4rem;

}



.cuisine-dinner__leader-sub + .cuisine-dinner__leader-sub {

  margin-top: 0;

}



.cuisine-dinner__img-sub-list {

  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;

}



.cuisine-dinner__img-sub-item {

  width: 48.5%;

}



.cuisine-dinner__img-sub-item:nth-child(n + 3) {

  margin-top: 10px;

}



.cuisine-dinner__hr-regular {

  margin-top: 45px;

  width: 100%;

  height: 1px;

  background-color: #000;

  display: block;

}



.cuisine-dinner__hr-bold {

  margin-top: 2px;

  width: 100%;

  height: 2px;

  background-color: #000;

  display: block;

}



.cuisine-dinner__item-top {

  margin-top: 20px;

}



.cuisine-dinner__txt-box {

  margin-top: 1.2em;

}



.cuisine-dinner__ttl {

  font-weight: 500;

}



.cuisine-dinner__txt {

  margin-top: 0.6em;

}
.cuisine-dinner__txt-box > figure{
    display:none;
}
@media screen and (min-width:961px){
    .cuisine-dinner__txt-box,.cuisine-dinner__txt-box *{
        box-sizing: border-box;
    }
    .cuisine-dinner__txt-box{
        position: relative;
    }
    .cuisine-dinner__txt.inline{
        width:auto;
        display:inline;
    }
 .cuisine-dinner__txt-box > figure {
     display:block;
      width:282px;
     height:auto;
     float:right;
     padding:16px 0px 0px 10px;
     transform:translateY(15px);
}
 .cuisine-dinner__txt-box > figure img{
        width:100%;
        height:auto;
    }
 .cuisine-dinner__txt-box:after{
        content:"";
        width:0;
        height:0;
        clear: both;
    }
}


.cuisine-dinner__item-bottom {

  margin-top: 20px;

}



.cuisine-dinner__img-sub-list {

  margin-top: 12px;

}



.cuisine-dinner__add {

  background-color: rgba(255, 255, 255, 0.7);

  margin-top: 50px;

  padding: 15px;

}



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

  .cuisine-dinner {

    background-image: url(../images/common/bg_pink-light-pc.jpg);

  }

  .cuisine-dinner__inner {

    padding-top: 195px;

    padding-bottom: 100px;

  }

  .cuisine-dinner__ttl-main-wrap:before {

    content: none;

  }

  .cuisine-dinner__ttl-main-in:before {

    left: -150px !important;

  }

  .cuisine-dinner__leader {

    margin-top: 45px;

    text-align: center;

    font-size: 1.8rem;

  }

  .cuisine-dinner__leader-sub-list {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

        -ms-flex-direction: column;

            flex-direction: column;

    width: 450px;

    margin: 0 auto;

  }

  .cuisine-dinner__leader-sub {

    font-size: 1.8rem;

  }

  .cuisine-dinner__item {

    margin-top: 85px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
      align-items: center;

  }

  .cuisine-dinner__hr-regular {

    display: none;

  }

  .cuisine-dinner__hr-bold {

    display: none;

  }

  .cuisine-dinner__item-top {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-orient: vertical;

    -webkit-box-direction: reverse;

        -ms-flex-direction: column-reverse;

            flex-direction: column-reverse;

    width: 48.5%;

    margin-top: 0;

  }

  .cuisine-dinner__img-main {

    margin-top: 50px;

    width: 53%;

    margin-left: auto;

  }

  .cuisine-dinner__ttl {

    font-size: 2.8rem;

  }


  .cuisine-dinner__txt {

    font-size: 1.7rem;

    line-height: 2.3;

  }

  .cuisine-dinner__item-bottom {

    margin-top: 0;

    width: 47.2%;

  }

  .cuisine-dinner__img-sub-list {

    margin-top: 25px;

  }

  .cuisine-dinner__img-sub-item {

    width: 47.5%;

  }

  .cuisine-dinner__img-sub-item:nth-child(n + 3) {

    margin-top: 25px;

  }

  .cuisine-dinner__add {

    font-size: 1.8rem;

    text-align: center;

    width: 80%;

    margin: 100px auto 0;

  }

}

.cuisine-dinner__ttl.in_hosoku{
    display:grid;
    align-items: center;
    gap:0 0.5rem;
}
  .cuisine-dinner__ttl span.hosoku{

    font-size: calc(100% * 0.5);
      color:red;
      display:inline-block;

  }
@media screen and (min-width:1151px){
    .cuisine-dinner__ttl span.hosoku{
    position: absolute;
    text-align: right;
    right: -3rem;
    } 
}
@media screen and (min-width:961px) and (max-width:1150px){
    .cuisine-dinner__ttl.in_hosoku{
    grid-template-columns: 1fr;
}
.cuisine-dinner__ttl span.hosoku{
    font-size: calc(100% * 0.6);
    order:-1;

  }
}
@media screen and (max-width:960px){
    .cuisine-dinner__ttl.in_hosoku{
    grid-template-columns: auto 1fr;
}
    .cuisine-dinner__ttl span.hosoku{
    font-size: calc(100% * 0.8);
}
}
@media screen and (max-width:425px){
.cuisine-dinner__ttl.in_hosoku{
    grid-template-columns: 1fr;
}
    .cuisine-dinner__ttl span.hosoku{
    order:-1;
}
}
@media screen and (min-width: 961px) {

  _:-ms-lang(x)::-ms-backdrop, .cuisine-dinner__img-main {

    min-height: 0%;

  }

}



/*==================================================

** drink

==================================================*/

.cuisine-drink__inner {

  padding-top: 70px;

  padding-bottom: 50px;

}



.cuisine-drink__leader {

  line-height: 1.75;

}



.cuisine-drink__leader-in:before {

  left: 50% !important;

  -webkit-transform: translateX(-29%);

          transform: translateX(-29%);

}



.cuisine-drink__list {

  margin-top: 25px;

  background-color: rgba(255, 255, 255, 0.7);

  padding: 15px;

}



.cuisine-drink__item + .cuisine-drink__item {

  margin-top: 20px;

}



.cuisine-drink__ttl {

  font-size: 1.6rem;

  font-weight: 500;

}



.cuisine-drink__cat {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;

}



.cuisine-drink__cat-ttl {

  width: 145px;

}



.cuisine-drink__cat-amount {

  margin-top: 0.2em;

  width: 65px;

}



.cuisine-drink__cat-price {

  margin-top: 0.2em;

  width: 60px;

}



.cuisine-drink__cat-ttl {

  font-size: 1.6rem;

}



.cuisine-drink__img {

  width: 150px;

  margin: 25px auto 0;

}



.cuisine-drink__img img {

  width: 100%;

}



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

  .cuisine-drink__inner {

    padding-top: 145px;

    padding-bottom: 100px;

  }

  .cuisine-drink__leader {

    font-size: 1.8rem;

    line-height: 2.3;

    text-align: center;

  }

  .cuisine-drink__leader-in {

    display: inline-block;

  }

  .cuisine-drink__leader-in:before {

    top: -113px !important;

    left: -66px !important;

    -webkit-transform: translateX(0);

            transform: translateX(0);

  }

  .cuisine-drink__content {

    margin-top: 30px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

  }

  .cuisine-drink__list {

    margin-top: 0;

  }

  .cuisine-drink__item + .cuisine-drink__item {

    margin-top: 12px;

  }

  .cuisine-drink__ttl {

    font-size: 1.8rem;

  }

  .cuisine-drink__cat {

    font-size: 1.8rem;

  }

  .cuisine-drink__img {

    width: 200px;

    margin: 0;

    margin-left: 30px;

  }

}



/*==================================================

** greeting

==================================================*/

.facility-greeting {

  padding-top: 15px;

  padding-bottom: 45px;

  background-image: url(../images/common/bg_pink-dark-min-sp.jpg);

  background-size: cover;

}



.facility-greeting__inner {

  padding-top: 22px;

}



.facility-greeting__ttl {

  font-size: t(45px);

  color: #805e79;

  text-align: center;

  position: relative;

}



.facility-greeting__leader {

  font-size: 1.8rem;

  font-weight: 500;

  margin-top: 25px;

  line-height: 1.8;

}



.facility-greeting__leader-txt {

  font-size: 1.6rem;

  line-height: 1.75;

  margin-top: 10px;

}



.facility-greeting__leader-txt-in {

  text-combine-upright: all;

}



.facility-greeting__content {

  position: relative;

  z-index: 1;

}



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

  .facility-greeting {

    padding-top: 200px;

    padding-bottom: 100px;

    background-image: url(../images/common/bg_pink-dark-min-pc.jpg);

  }

  .fixed .facility-greeting {

    margin-top: 0;

  }

  .facility-greeting:after {

    content: none;

  }

  .facility-greeting__ttl {

    text-align: left;

    display: block;

  }

  .facility-greeting__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

    width: 825px;

    max-width: 100%;

    height: 455px;

    margin: 0 auto;

    position: relative;

  }

  .facility-greeting__ttl {

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 29px;

    margin-right: 25px;

  }

  .facility-greeting__leader {

    margin-top: 0;

    margin-right: 50px;

    font-size: 30px;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    text-align: left;

    line-height: 2;

  }

  .facility-greeting__leader .block {

    margin-top: 70px;

  }

  .facility-greeting__leader-txt {

    margin-top: 80px;

    margin-right: 70px;

    -webkit-writing-mode: vertical-rl;

        -ms-writing-mode: tb-rl;

            writing-mode: vertical-rl;

    font-size: 18px;

    line-height: 2.9;

    height: 314px;

  }

}



/*==================================================

** info

==================================================*/

.facility-info {

  background-image: url(../images/common/bg_pink-light-sp.jpg);

}



.facility-info__inner {

  padding-top: 60px;

  padding-bottom: 0px;

}



.facility-info__content {

  position: relative;

  z-index: 1;

}



.facility-info__item + .facility-info__item {

  margin-top: 60px;

}



.facility-info__ttl-in {

  font-weight: 500;

}



.facility-info__ttl-in:before {

  width: 108px;

  height: 108px;

  top: -53px;

  left: -32px;

}



.facility-info__txt {

  margin-top: 10px;

  line-height: 1.75;

  position: relative;

  z-index: 1;

}



.facility-info__img-main {

  margin-top: 18px;

}



.facility-info__img-sub-list {

  margin-top: 10px;

  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;

}



.facility-info__img-sub {

  width: 48.5%;

}



.facility-info__img-sub:nth-child(n+3) {

  margin-top: 10px;

}



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

  .facility-info {

    background-image: url(../images/common/bg_pink-light-pc.jpg);

  }

  .facility-info__inner {

    padding-top: 100px;

    padding-bottom: 0;

  }

  .facility-info__item + .facility-info__item {

    margin-top: 100px;

  }

  .facility-info__item-top {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .facility-info__item-top.is-reverse {

    -webkit-box-orient: horizontal;

    -webkit-box-direction: reverse;

        -ms-flex-direction: row-reverse;

            flex-direction: row-reverse;

  }

  .facility-info__item-top.is-end {

    -webkit-box-align: end;

        -ms-flex-align: end;

            align-items: flex-end;

  }

  .facility-info__ttl-in:before {

    width: 217px;

    height: 217px;

    top: -137px;

    left: -69px;

  }

  .facility-info__txt-box {

    width: 46.3%;

  }

  .facility-info__txt {

    font-size: 1.8rem;

    line-height: 2.3;

  }

  .facility-info__img-main {

    margin-top: 0;

    width: 49.4%;

  }

  .facility-info__img-sub-list {

    margin-top: 20px;

  }

  .facility-info__img-sub-list.is-last {

    margin-left: -31px;

  }

  .facility-info__img-sub {

    width: 24%;

  }

  .facility-info__img-sub:nth-child(n + 3) {

    margin-top: 0;

  }

  .facility-info__img-sub:nth-child(n + 5) {

    margin-top: 10px;

  }

  .is-col3 .facility-info__img-sub {

    width: 32%;

  }

  .is-col2 .facility-info__img-sub {

    width: 48.4%;

  }

}



/*==================================================

** banquet

==================================================*/

.facility-banquet__inner {

  padding-top: 0;

  padding-bottom: 50px;

  position: relative;

  z-index: 1;

}



.facility-banquet__item {

  margin-top: 60px;

}



.facility-banquet__ttl-main-wrap:before {

  content: none;

}



.facility-banquet__leader {

  margin-top: 20px;

  font-weight: 500;

}



.facility-banquet__leader-sub {

  margin-top: 1em;

  font-size: 1.4rem;

}



.facility-banquet__leader-sub + .cuisine-dinner__leader-sub {

  margin-top: 0;

}



.facility-banquet__img-sub-list {

  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;

}



.facility-banquet__img-sub-item {

  width: 48.5%;

}



.facility-banquet__img-sub-item:nth-child(n + 3) {

  margin-top: 10px;

}



.facility-banquet__hr-regular {

  margin-top: 45px;

  width: 100%;

  height: 1px;

  background-color: #000;

  display: block;

}



.facility-banquet__hr-bold {

  margin-top: 2px;

  width: 100%;

  height: 2px;

  background-color: #000;

  display: block;

}



.facility-banquet__item-top {

  margin-top: 20px;

}



.facility-banquet__txt-box {

  margin-top: 1.2em;

}



.facility-banquet__ttl {

  font-weight: 500;

}



.facility-banquet__txt {

  margin-top: 0.6em;

}



.facility-banquet__txt-main {

  width: 100%;

  margin-top: 20px;

  margin-left: auto;

  margin-right: auto;

  font-size: 1.6rem;

  line-height: 2.3;

}



.facility-banquet__item-bottom {

  margin-top: 20px;

}



.facility-banquet__img-sub-list {

  margin-top: 12px;

}



.facility-banquet__add {

  background-color: rgba(255, 255, 255, 0.7);

  margin-top: 50px;

  padding: 15px;

}

.facility-banquet__add h3 {

  color: #7d1a1e;

  margin-bottom: 0.5em;

  letter-spacing: 0.14em;

}

.facility-banquet__add .charge{

  font-size: 1.4rem;

}

.facility-banquet__add .chargeA,

.facility-banquet__add .chargeB{

  color: #7d1a1e;

  margin: 0 0.5rem;

}

.facility-banquet__add .chargeA {

  font-size: 2.3rem;

}

.facility-banquet__add .chargeB {

  font-size: 3rem;

}

.facility-banquet__add .chargeC {

  font-size: 0.95em;

  margin-top: -6px;

  margin-left: -6px;

  margin-bottom: 6px;

  letter-spacing: 0;

  display: block;

}

.facility-banquet__add .arrow__img {

  font-size: 3.4rem;

  white-space: pre;

}

.facility-banquet__add .arrow__img:before {

  content: "⇒";

  display: inline-block;

  text-align: center;

  font-size: .5em;

  margin: 0 0.4em 0 0.4em;

  line-height: 1.2;

}

.facility-banquet__add .facility-banquet__txt-att{

  letter-spacing: 0.1em;

}

.facility-banquet__txt-att{

  line-height: 1.8em;

  font-size: 0.9em;

  letter-spacing: 0rem;

  font-weight: 600;

  color: #7d1a1e;

}

.facility-banquet__txt-att .tax{

  font-size: 0.8em;

  margin: 0 -3px;

}

.facility-banquet__txt-indent{

  text-indent: 0;

  padding-left: 0;

  line-height: 1.8em;

}

.facility-banquet__txt-indent .tax{

  font-size: 0.8em;

  margin: 0 -3px;

}



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

  .facility-banquet__inner {

    padding-bottom: 100px;

  }

  .facility-banquet__item {

      margin-top: 100px;

    display: -webkit-box;

    display: -ms-flexbox;

    -webkit-box-pack: justify;

    -ms-flex-pack: justify;

  }

  .facility-banquet__hr-regular {

    display: none;

  }

  .facility-banquet__hr-bold {

    display: none;

  }

  .facility-banquet__item-top {

    width: 48.5%;

    margin-top: 0;

    justify-content: flex-end;

  }

  .facility-banquet__ttl {

    font-size: 2.8rem;

  }

  .facility-banquet__txt {

    font-size: 1.8rem;

    line-height: 2.3;

  }

  .facility-banquet__txt-main {

    font-size: 1.8rem;

  }

  

  .facility-banquet__item-bottom {

    margin-top: 0;

    width: 47.2%;

  }

  .facility-banquet__img-sub-list {

    margin-top: 25px;

  }

  .facility-banquet__img-sub-item {

    width: 47.5%;

  }

  .facility-banquet__img-sub-item:nth-child(n + 3) {

    margin-top: 25px;

  }

  .facility-banquet__add {

    font-size: 1.8rem;

    text-align: center;

    width: 80%;

    margin: 100px auto 0;

  }

  .facility-banquet__add .facility-banquet__txt-att{

    letter-spacing: 0.24em;

  }

  .facility-banquet__add .charge{

    font-size: 1.8rem;

  }

  .facility-banquet__add .chargeC {

    letter-spacing: 0.1rem;

  }

  .facility-banquet__txt-att{

    font-size: 0.8em;

    letter-spacing: 0.06rem;

  }

  .facility-banquet__txt-indent{

    text-indent: -6em;

    padding-left: 6em;

  }

}



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

  _:-ms-lang(x)::-ms-backdrop, .facility-banquet__img-main {

    min-height: 0%;

  }

}





/*==================================================

** meatures

==================================================*/

.facility-meatures__inner {

  width: 100%;

  padding-top: 75px;

}



.facility-meatures__ttl {

  width: 90%;

  margin: 0 auto;

  font-weight: 500;

}



.facility-meatures__ttl:before {

  width: 109px;

  height: 109px;

}



.facility-meatures__txt {

  text-align: left;

  line-height: 1.75;

}



.facility-meatures__slider {

  margin-top: 20px;

}



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

  .facility-meatures__inner {

    max-width: none;

    padding-top: 130px;

  }

  .facility-meatures__ttl:before {

    width: 217px;

    height: 217px;

    -webkit-transform: translateX(-300px);

            transform: translateX(-300px);

  }

  .facility-meatures__txt {

    text-align: center;

  }

  .facility-meatures__txt.is-left {

    text-align: center;

  }

  .facility-meatures__slider {

    margin-top: 85px;

  }

}



.modaal-outer-wrapper {

  overflow: hidden;

}



/*==================================================

** prevention

==================================================*/

.facility-prevention__inner {

  padding-top: 45px;

  padding-bottom: 50px;

}



.facility-prevention__ttl:before {

  width: 109px;

  height: 109px;

}



.facility-prevention__txt {

  font-weight: 500;

  text-align: center;

}



.facility-prevention__txt-in {

  display: inline-block;

}



.facility-prevention__img-main {

  margin-top: 20px;

  position: relative;

  z-index: 1;

}



.facility-prevention__img-sub-list {

  margin-top: 10px;

  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;

}



.facility-prevention__img-sub {

  width: 48.5%;

}



.facility-prevention__img-sub:nth-child(n + 3) {

  margin-top: 10px;

}



.facility-prevention__txt-main {

  margin-top: 20px;

  line-height: 1.75;

}



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

  .facility-prevention__inner {

    padding-top: 135px;

    padding-bottom: 100px;

  }

  .facility-prevention__ttl {

    text-align: center;

  }

  .facility-prevention__ttl:before {

    width: 217px;

    height: 217px;

    -webkit-transform: translateX(-300px);

            transform: translateX(-300px);

  }

  .facility-prevention__txt-in {

    font-size: 2.8rem;

  }

  .facility-prevention__top {

    margin-top: 25px;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .facility-prevention__img-main {

    width: 49.4%;

  }

  .facility-prevention__txt-main {

    width: 46.3%;

    font-size: 1.8rem;

    letter-spacing: 0.02em;

    line-height: 2.3;

  }

  .facility-prevention__img-sub-list {

    margin-top: 20px;

  }

  .facility-prevention__img-sub {

    width: 24%;

  }

  .facility-prevention__img-sub:nth-child(n + 3) {

    margin-top: 0px;

  }

}



/*==================================================

** map

==================================================*/

.access-map {

  height: 300px;

}



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

  .access-map {

    height: 500px;

  }

}



.access-top {

  background-image: url(../images/common/bg_pink-dark-min-sp.jpg);

}



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

  .access-top {

    background-image: url(../images/access/bg_pink-dark.jpg);

  }

}



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

  .access-top {

    background-size: cover;

  }

}



/*==================================================

** info

==================================================*/

.access-info__inner {

  padding-top: 60px;

  position: relative;

  z-index: 1;

}



.access-info__content {

  text-align: center;

}



.access-info__logo {

  width: 200px;

  margin: 0 auto;

}



.access-info__address {

  margin-top: 0.5em;

  font-style: normal;

  letter-spacing: 0.02em;

}



.access-info__tel {

  letter-spacing: 0.02em;

}



.access-info__check-in {

  display: inline-block;

}



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

  .access-info:before {

    background-image: url(../images/access/img__sakura-top-dark.jpg) !important;

  }

  .access-info__inner {

    padding-top: 105px;

  }

  .access-info__content {

    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;

    text-align: left;

  }

  .access-info__logo {

    width: 267px;

    margin: 0;

  }

  .access-info__logo img {

    width: 100%;

  }

  .access-info__txt-box {

    margin-left: 50px;

  }

  .access-info__tel {

    margin-top: 1em;

  }

  .access-info__check {

    margin-top: 1em;

  }

}



/*==================================================

** parking

==================================================*/

.access-parking__inner {

  padding-top: 60px;

  position: relative;

  z-index: 1;

}



.access-parking__ttl {

  font-size: 1.9rem;

}



.access-parking__ttl-in::before {

  content: none;

}



.access-parking__txt {

  margin-top: 0.7em;

  position: relative;

  z-index: 1;

  line-height: 1.75;

}



.access-parking__img {

  margin-top: 20px;

}



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

  .access-parking__inner {

    padding-top: 75px;

  }

  .access-parking__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .access-parking__img {

    width: 49.2%;

  }

  .access-parking__txt-box {

    width: 45.6%;

  }

  .access-parking__txt {

    font-size: 1.8rem;

    line-height: 2.3;

    letter-spacing: 0.02em;

  }

}



/*==================================================

** way

==================================================*/

.access-way {

  background-size: cover;

}



.access-way__inner {

  padding-top: 60px;

  padding-bottom: 60px;

  position: relative;

  z-index: 1;

}



.access-way__item + .access-way__item {

  margin-top: 60px;

}



.access-way__ico {

  width: 50px;

  display: block;

  margin: 0 auto;

}



.access-way__ico img {

  width: 100%;

}



.access-way__ttl {

  text-align: center;

  font-size: 1.9rem;

}



.access-way__ttl-sub {

  margin-top: 1em;

  font-size: 1.8rem;

}



.access-way__img {

  margin-top: 20px;

}



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

  .access-way__inner {

    padding-top: 110px;

    padding-bottom: 100px;

  }

  .access-way__ico {

    width: 100px;

  }

  .access-way__ttl {

    margin-top: 0.7em;

    font-size: 2.8rem;

  }

  .access-way__ttl-sub {

    font-size: 2.2rem;

  }

}



/*==================================================

** recommned

==================================================*/

.access-recommend__inner {

  padding-top: 60px;

  padding-bottom: 60px;

  position: relative;

  z-index: 1;

}



.access-recommend__ttl-main-wrap:before {

  content: none;

}



.access-recommend__ttl-main-in {

  display: inline-block;

}



.access-recommend__ttl-main-in:before {

  left: 50% !important;

  -webkit-transform: translateX(-50%);

          transform: translateX(-50%);

}



.access-recommend__content {

  margin-top: 40px;

}



.access-recommend__item + .access-recommend__item {

  margin-top: 60px;

}



.access-recommend__link {

  text-decoration: none !important;

}



.access-recommend__link:hover .access-recommend__img {

  overflow: hidden;

}



.access-recommend__link:hover .access-recommend__img img {

  -webkit-transform: scale(1.1);

          transform: scale(1.1);

}



.access-recommend__ttl-wrap {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: end;

      -ms-flex-align: end;

          align-items: flex-end;

}



.access-recommend__ttl {

  vertical-align: middle;

  line-height: 1.1;

  margin-right: 0px;

}



.access-recommend__ttl.is-aoyama {

  margin-right: 20px;

}



.access-recommend__ttl-in {

  line-height: 1.1;

}



.access-recommend__ttl-in:before {

  content: none;

}



.access-recommend__ttl-sub {

  vertical-align: middle;

  font-size: 1.4rem;

  position: relative;

  z-index: 1;

  line-height: 1.1;

  padding-left: 3em;

  position: relative;

}



.access-recommend__ttl-sub:before {

  content: "";

  background-image: url(../images/access/ico__human01.png);

  background-size: contain;

  width: 15px;

  height: 33px;

  display: block;

  position: absolute;

  top: 7%;

  left: 15px;

  -webkit-transform: translateY(-50%);

          transform: translateY(-50%);

}



.access-recommend__ttl-sub.is-car::before {

  -webkit-transform: translateY(-10px);

          transform: translateY(-10px);

}



.access-recommend__txt {

  margin-top: 20px;

  line-height: 1.75;

  position: relative;

  z-index: 1;

}



.access-recommend__txt + .access-recommend__txt {

  margin-top: 0;

}



.access-recommend__img-box {

  margin-top: 10px;

}



.access-recommend__img {

  margin-top: 10px;

  overflow: hidden;

}



.access-recommend__img img {

  -webkit-transition: -webkit-transform .3s ease-in-out;

  transition: -webkit-transform .3s ease-in-out;

  transition: transform .3s ease-in-out;

  transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;

}



.access-recommend__img-sub-list {

  margin-top: 16px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

      -ms-flex-pack: justify;

          justify-content: space-between;

}



.access-recommend__img-sub {

  width: 48.5%;

}



.access-recommend__datail {

  text-align: right;

}



.access-recommend__bottom {

  margin-top: 40px;

}



.access-recommend__bottom-item {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-orient: vertical;

  -webkit-box-direction: reverse;

      -ms-flex-direction: column-reverse;

          flex-direction: column-reverse;

}



.access-recommend__bottom-item + .access-recommend__bottom-item {

  margin-top: 40px;

}



.access-recommend__bottom-item a {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-orient: vertical;

  -webkit-box-direction: reverse;

      -ms-flex-direction: column-reverse;

          flex-direction: column-reverse;

  text-decoration: none !important;

}



.access-recommend__bottom-item a:hover .access-recommend__bottom-img {

  overflow: hidden;

}



.access-recommend__bottom-item a:hover .access-recommend__bottom-img img {

  -webkit-transform: scale(1.1);

          transform: scale(1.1);

}



.access-recommend__bottom-img {

  margin-top: 10px;

  overflow: hidden;

}



.access-recommend__bottom-img img {

  -webkit-transition: -webkit-transform .3s ease-in-out;

  transition: -webkit-transform .3s ease-in-out;

  transition: transform .3s ease-in-out;

  transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;

}



.access-recommend__bottom-ttl {

  margin-top: 0.5em;

  font-size: 1.9rem;

}



.access-recommend__bottom-txt {

  margin-top: 0.5em;

  line-height: 1.75;

}



.access-recommend__bottom-txt-sub {

  text-align: right;

}



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

  .access-recommend__inner {

    padding-top: 195px;

  }

  .access-recommend__ttl-main-in {

    display: inline-block;

  }

  .access-recommend__ttl-main-in:before {

    top: -113px !important;

    left: -66px !important;

    -webkit-transform: translateX(0);

            transform: translateX(0);

  }

  .access-recommend__ttl-main-wrap:before {

    content: none;

  }

  .access-recommend__ttl-main-in:before {

    left: 25px !important;

  }

  .access-recommend__content {

    margin-top: 90px;

  }

  .access-recommend__item {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .access-recommend__item + .access-recommend__item {

    margin-top: 95px;

  }

  .access-recommend__link {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .access-recommend__txt-box {

    margin-top: 60px;

    width: 48%;

  }

  .access-recommend__ttl-wrap {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .access-recommend__ttl {

    margin-right: 0px;

  }

  .access-recommend__ttl.is-aoyama {

    margin-right: 20px;

  }

  .access-recommend__ttl-sub {

    font-size: 1.8rem;

  }

  .access-recommend__ttl-sub:before {

    width: 20px;

    height: 45px;

  }

  .access-recommend__txt {

    font-size: 1.8rem;

    line-height: 2.3;

  }

  .access-recommend__img-box {

    margin-top: 0;

    width: 48.5%;

  }

  .access-recommend__img.is-aoyama {

    width: 48%;

  }

  .access-recommend__bottom {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;

    -webkit-box-pack: start;

        -ms-flex-pack: start;

            justify-content: flex-start;

    margin-top: 90px;

  }

  .access-recommend__bottom-item {

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

        -ms-flex-direction: column;

            flex-direction: column;

    width: 32%;

  }

  .access-recommend__bottom-item + .access-recommend__bottom-item {

    margin-top: 0;

  }

  .access-recommend__bottom-item:nth-child(n+2) {

    margin-left: 2%;

  }

  .access-recommend__bottom-item:nth-child(n+4) {

    margin-top: 80px;

  }

  .access-recommend__bottom-item:nth-child(4n) {

    margin-left: 0;

  }

  .access-recommend__bottom-item a {

    -webkit-box-orient: vertical;

    -webkit-box-direction: normal;

        -ms-flex-direction: column;

            flex-direction: column;

  }

  .access-recommend__bottom-txt {

    font-size: 1.8rem;

    line-height: 1.83;

  }

  .access-recommend__bottom-txt-sub {

    margin-top: 40px;

  }

}



/*==================================================

** laundry

==================================================*/

.access-laundry__inner {

  padding-top: 60px;

  padding-bottom: 60px;

}



.access-laundry__ttl {

  text-align: center;

}



.access-laundry__ttl:before {

  left: 50% !important;

  -webkit-transform: translateX(-50%);

          transform: translateX(-50%);

}



.access-laundry__ttl-in {

  display: inline-block;

}



.access-laundry__ttl-in::before {

  content: none;

}



.access-laundry__img {

  margin-top: 20px;

}



.access-laundry__item {

  margin-top: 30px;

}



.access-laundry__txt {

  margin-top: 10px;

  letter-spacing: 0.02em;

}



.access-laundry__txt-sub {

  margin-top: 0.5em;

  padding-left: 3em;

}



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

  .access-laundry__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .access-laundry__ttl {

    margin-top: 10%;

    width: 31%;

    text-align: left;

  }

  .access-laundry__ttl:before {

    width: 217px !important;

    height: 217px !important;

    top: -113px !important;

    left: -66px !important;

    -webkit-transform: translateX(0) !important;

            transform: translateX(0) !important;

  }

  .access-laundry__item {

    margin-top: 0;

    width: 32%;

  }

  .access-laundry__img {

    margin-top: 0;

  }

  .access-laundry__txt {

    font-size: 1.8rem;

  }

  .access-laundry__txt-sub {

    font-size: 1.8rem;

    letter-spacing: 0.02em;

  }

}



/*==================================================

** market

==================================================*/

.access-market__inner {

  padding-top: 60px;

  padding-bottom: 60px;

}



.access-market__ttl {

  text-align: center;

}



.access-market__ttl:before {

  left: 50% !important;

  -webkit-transform: translateX(-50%);

          transform: translateX(-50%);

}



.access-market__ttl-in {

  display: inline-block;

}



.access-market__ttl-in::before {

  content: none;

}



.access-market__txt-main {

  margin-top: 20px;

}



.access-market__item {

  margin-top: 30px;

}



.access-market__txt {

  margin-top: 10px;

  letter-spacing: 0.02em;

}



.access-market__txt-sub {

  margin-top: 0.5em;

  padding-left: 3em;

}



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

  .access-market__content {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .access-market__txt-box {

    width: 31%;

  }

  .access-market__txt-main {

    font-size: 1.8rem;

    line-height: 2.3;

  }

  .access-market__item {

    width: 32%;

    margin-top: 0;

  }

  .access-market__ttl {

    text-align: left;

  }

  .access-market__ttl:before {

    width: 217px !important;

    height: 217px !important;

    top: -113px !important;

    left: -66px !important;

    -webkit-transform: translateX(0) !important;

            transform: translateX(0) !important;

  }

  .access-market__txt {

    font-size: 1.8rem;

  }

  .access-market__txt-sub {

    font-size: 1.8rem;

    letter-spacing: 0.02em;

  }

  .access-market__img {

    margin-top: 0;

  }

}



/*==================================================

** article

==================================================*/

#news .news-article__inner {

  position: relative;

  z-index: 1;

  padding-top: 60px;

  padding-bottom: 60px;

}



#news .news-txt-box {

  position: relative;

  z-index: 1;

}



#news .news-date {

  position: relative;

  z-index: 2;

}



#news .news__ttl {

  position: relative;

  z-index: 1;

}



#news .news__ttl:before {

  content: "";

  display: inline-block;

  background-size: contain;

  position: absolute;

  z-index: 0;

  width: 109px;

  height: 109px;

  top: -52px;

  left: -26px;

  z-index: -1;

  background-image: url(../images/common/img_ttl-deco.png);

}



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

  #news .news-article {

    background-image: url(../images/common/bg__pink-dark02-pc.jpg);

    background-position: top 20px center;

  }

}



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

  #news .news-article {

    background-size: cover;

  }

}



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

  #news .news-article__inner {

    padding-top: 65px;

    padding-bottom: 165px;

  }

  #news .news__ttl:before {

    width: 217px;

    height: 217px;

    top: -113px;

    left: -66px;

  }

}



#news .news__list {

  margin-top: 0;

}



#news .news__item {

  border-bottom: 2px dotted #ccc;

}



#news .news__item:after {

  content: none;

}



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

  #news .news__item a {

    padding-top: 100px;

    padding-bottom: 45px;

  }

  #news .news__img {

    width: 400px;

  }

  #news .news__txtbox {

    margin-top: 30px;

    margin-left: 50px;

  }

  #news .news__date {

    font-size: 1.8rem;

  }

  #news .news__ttl {

    font-size: 2.8rem;

    letter-spacing: 0.04em;

    font-weight: 500;

  }

  #news .news__txt {

    margin-top: 0.5em;

    font-size: 1.8rem;

    line-height: 2.3;

    letter-spacing: 0.02em;

    overflow: hidden;

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 3;

    text-overflow: ellipsis;

  }

}



/*==================================================

** news-single

==================================================*/

#news-single .news {

  margin-top: 0;

  background-color: transparent;

  padding-bottom: 50px;

}



#news-single .news__item {

  margin-bottom: 30px;

}



#news-single .news__item::before {

  content: "";

  background-image: url(../images/common/img_line-black@0.5x.png);

  background-size: contain;

  display: inline-block;

  position: absolute;

  top: 0px;

  width: 100%;

  height: 2px;

}



#news-single .news__all {

  position: relative;

  z-index: 2;

}



#news-single .news__all a {

  text-decoration: none;

  -webkit-transition: opacity .3s ease-in-out;

  transition: opacity .3s ease-in-out;

}



#news-single .news__all a:hover {

  opacity: 0.7;

}



#news-single .news__img {

  padding-top: 30px;

  width: 100%;

  max-width: 800px;

}



#news-single .news__txtbox {

  width: 100%;

  margin-left: 0;

  margin-top: 30px;

  position: relative;

  z-index: 1;

}



#news-single .news-date {

  position: relative;

  z-index: 2;

}



#news-single .news__ttl {

  font-size: 1.9rem;

  margin-top: 1em;

  font-weight: 500;

}



#news-single .news__txt {

  margin-top: 1em;

  font-size: 1.6rem;

  line-height: 1.75;

  overflow: hidden;

  display: block;

  text-overflow: ellipsis;

}



#news-single .news .nav-links {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

      -ms-flex-pack: justify;

          justify-content: space-between;

}



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

  #news-single .news {

    width: 100%;

    background-image: url(../images/common/bg__pink-dark02-pc.jpg);

    background-repeat: repeat;

    padding-top: 94px;

    padding-bottom: 94px;

  }

}



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

  #news-single .news {

    background-size: cover;

  }

}



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

  #news-single .news__all {

    font-size: 1.8rem;

  }

  #news-single .news__item {

    margin-top: 48px;

    margin-bottom: 40px;

    padding-bottom: 48px;

  }

  #news-single .news__img {

    margin: 0 auto;

    padding-top: 45px;

  }

  #news-single .news-date {

    font-size: 1.8rem;

  }

  #news-single .news__ttl {

    font-size: 2.8rem;

    margin-top: 0;

  }

  #news-single .news__ttl:before {

    top: -140px;

  }

  #news-single .news__txtbox {

    width: 100%;

    max-width: 800px;

    margin: 100px auto 0;

  }

  #news-single .news__txt {

    margin-top: 0.7em;

    font-size: 1.8rem;

    line-height: 2.3;

  }

  #news-single .news .nav-links {

    font-size: 1.8rem;

  }

  #news-single .news .nav-links a {

    text-decoration: none;

    -webkit-transition: opacity .3s ease-in-out;

    transition: opacity .3s ease-in-out;

  }

  #news-single .news .nav-links a:hover {

    opacity: 0.7;

  }

}



/*==================================================

** leader

==================================================*/

.contact-leader__inner {

  padding-top: 70px;

  padding-bottom: 50px;

}



.contact-leader__txt {

  position: relative;

  z-index: 1;

  line-height: 1.75;

}



.contact-leader__txt-in {

  display: inline-block;

}



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

  .contact-leader {

    background-image: url(../images/common/bg__pink-dark02-pc.jpg);

    background-position: top 20px center;

  }

  .contact-leader__inner {

    padding-top: 195px;

    padding-bottom: 85px;

  }

  .contact-leader__txt {

    text-align: center;

    font-size: 1.8rem;

    line-height: 2.3;

  }

}



/*==================================================

** form

==================================================*/

.mail-form {

  padding-bottom: 60px;

}



.mail-form__leader {

  font-size: 1.2rem;

  max-width: 810px;

  margin: 0 auto;

  margin-top: 1.5em;

}



.mail-form__leader-txt .pra {

  border-bottom: 1px solid #535353;

}



.mail-form__wrap {

  background-image: url(../images/contact/bg__form01.jpg);

  padding: 30px 20px;

}



.mail-form .field {

  max-width: 600px;

  margin-left: auto;

  margin-right: auto;

}



.mail-form .field + .field {

  margin-top: 10px;

}



.mail-form .label {

  font-size: 1.6rem;

  font-weight: 600;

  margin-left: 0.5em;

}



.mail-form .input {

  width: 100%;

  background-color: #fff;

  border: none;

  max-width: 600px;

  height: 25px;

  padding: 0.2em;

  margin-top: 0.2em;

  font-size: 1.6rem;

  border-radius: 5px;

  padding-left: 0.5em;

}



.mail-form .textarea {

  width: 100%;

  background-color: #fff;

  border: none;

  max-width: 600px;

  height: 80px;

  padding: 0.2em;

  margin-top: 0.2em;

  font-size: 1.6rem;

  border-radius: 5px;

  padding-left: 0.5em;

}



.mail-form .submit {

  margin-top: 20px;

  position: relative;

  z-index: 1;

  text-align: center;

}



.mail-form .button {

  color: #fff;

  background-image: url(../images/common/bg_btn-pink.png);

  width: 210px;

  height: 55px;

  margin-top: 1em;

  cursor: pointer;

  -webkit-transition: all .3s ease-in-out;

  transition: all .3s ease-in-out;

}



.mail-form .button:hover {

  opacity: 0.7;

  border-radius: 20px;

}



.mail-form-privacy {

  margin-top: 35px;

  position: relative;

  z-index: 1;

}



.mail-form-privacy__item {

  margin-top: 20px;

}



.mail-form-privacy__heading {

  text-align: center;

  background-color: rgba(19, 19, 19, 0.1);

  padding: 0.5em 0;

  font-size: 1.4rem;

  position: relative;

}



.mail-form-privacy__heading:before {

  content: "−";

  position: absolute;

  top: 50%;

  right: 20px;

  -webkit-transform: translateY(-50%);

          transform: translateY(-50%);

  font-size: 1.6rem;

}



.mail-form-privacy__heading.is-active-accordion:before {

  content: "+";

}



.mail-form-privacy__body {

  background-color: #fff9f5;

  padding: 20px;

  font-size: 1.4rem;

}



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

  .mail-form {

    padding-bottom: 145px;

    background-image: url(../images/common/bg__pink-dark02-pc.jpg);

    background-position: top 20px center;

  }

  .mail-form__leader {

    font-size: 1.8rem;

  }

  .mail-form__leader-txt {

    line-height: 1.7;

  }

  .mail-form__wrap {

    padding: 50px 0px;

  }

  .mail-form .field {

    width: auto;

    max-width: none;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;

  }

  .mail-form .field + .field {

    margin-top: 2em;

  }

  .mail-form .label {

    margin-top: 0.5em;

    width: 202px;

    font-size: 1.8rem;

    margin-right: 20px;

  }

  .mail-form .input {

    width: 600px;

    height: 50px;

    max-width: 600px;

    font-size: 1.8rem;

    border-radius: 10px;

  }

  .mail-form .textarea {

    width: 600px;

    height: 165px;

    max-width: 600px;

    font-size: 1.8rem;

    border-radius: 10px;

  }

  .mail-form .submit {

    margin-top: 50px;

  }

  .mail-form .button {

    font-size: 1.8rem;

    margin-top: 0;

  }

  .mail-form-privacy {

    margin-top: 100px;

  }

  .mail-form-privacy__heading {

    padding: 0.7em 0;

    font-size: 1.8rem;

    background-color: rgba(19, 19, 19, 0.1);

  }

  .mail-form-privacy__heading:before {

    font-size: 3rem;

  }

  .mail-form-privacy__body {

    font-size: 1.6rem;

    padding: 2em 3em;

  }

}



input[type="checkbox"] {

  /* デフォルトcheckボックス非表示*/

  display: none;

}



.mwform-checkbox-field {

  margin-top: 25px;

  position: relative;

  z-index: 1;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;

}



.mwform-checkbox-field-text {

  display: inline-block;

  position: relative;

  padding: 0 36px 0 36px;

}



.mwform-checkbox-field-text::before,

.mwform-checkbox-field-text::after {

  content: "";

  position: absolute;

  display: block;

}



.mwform-checkbox-field-text::before {

  background: #fff;

  border: 2px solid #000;

  border-radius: 2px;

  width: 20px;

  height: 20px;

  top: 50%;

  left: 0;

  -webkit-transform: translateY(-50%);

          transform: translateY(-50%);

}



.mwform-checkbox-field-text::after {

  border-width: 3px;

  border-color: transparent transparent #000 #000;

  border-style: solid;

  width: 20px;

  height: 10px;

  margin-top: -0.2em;

  top: 50%;

  left: 0;

  -webkit-transform: translateY(-50%) rotate(-45deg);

          transform: translateY(-50%) rotate(-45deg);

  opacity: 0;

}



input[type="checkbox"]:checked + .mwform-checkbox-field-text::after {

  /* css擬似要素 :checked が付加されているときは表示  */

  opacity: 1;

}



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

  .mwform-checkbox-field {

    margin-top: 50px;

  }

}



@media screen and (max-width: 960px) {

  .sp-none {

    display: none;

  }

}



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

  .tab-none {

    display: none;

  }

}



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

  .pc-none {

    display: none;

  }

}



/*==================================================

** color

==================================================*/

.color__ac {

  color: #805e79;

}



.color__ac-red {

  color: #7d1a1e;

}



.color__sub {

  color: #cf9a9a;

}



.screen-reader-text {

  position: absolute;

  top: auto;

  left: -10000px;

  overflow: hidden;

  width: 1px;

  height: 1px;

}



/*==================================================

** bg

==================================================*/

.is-bg-pink-dark {

  background-image: url(../images/common/bg_pink-dark-sp.jpg);

}



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

  .is-bg-pink-dark {

    background-image: url(../images/common/bg_pink-dark-pc.jpg);

  }

}



.is-bg-pink-light {

  background-image: url(../images/common/bg_pink-light-sp.jpg);

}



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

  .is-bg-pink-light {

    background-image: url(../images/common/bg_pink-light-pc.jpg);

  }

}



/*==================================================

** bg-sakura

==================================================*/

.is-sakura-top {

  position: relative;

}



.is-sakura-top:before {

  content: "";

  background-image: url(../images/common/img_sakura-top-sp.png);

  display: inline-block;

  background-size: cover;

  width: 100%;

  height: 50vw;

  position: absolute;

  vertical-align: middle;

  top: 0;

  left: 0;

}



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

  .is-sakura-top::before {

    background-image: url(../images/common/img_sakura-top-pc.jpg);

    height: 450px;

    background-position: center;

  }

}



.is-sakura-top03 {

  position: relative;

}



.is-sakura-top03:before {

  content: "";

  background-image: url(../images/common/img_sakura-top-sp.png);

  display: inline-block;

  background-size: cover;

  width: 100%;

  height: 50vw;

  position: absolute;

  vertical-align: middle;

  top: 0;

  left: 0;

}



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

  .is-sakura-top03::before {

    background-image: url(../images/common/img_sakura02-top-pc.jpg);

    height: 450px;

    background-position: center;

  }

}



.is-sakura-top02 {

  position: relative;

}



.is-sakura-top02:before {

  content: "";

  background-image: url(../images/common/img_sakura-top-dark-sp.jpg);

  display: inline-block;

  background-size: cover;

  width: 100%;

  height: 40vw;

  position: absolute;

  vertical-align: middle;

  top: 0;

  left: 0;

}



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

  .is-sakura-top02::before {

    background-image: url(../images/common/img_sakura-top-dark-pc.jpg);

    height: 538px;

    background-position: center;

  }

}



.is-sakura-bottom {

  position: relative;

}



.is-sakura-bottom:after {

  content: "";

  background-image: url(../images/common/img_sakura-bottom-sp.png);

  display: inline-block;

  background-size: cover;

  width: 100%;

  height: 50vw;

  position: absolute;

  vertical-align: middle;

  bottom: 0;

  left: 0;

}



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

  .is-sakura-bottom::after {

    background-image: url(../images/common/img_sakura-bottom-pc.png);

    height: 391px;

    background-position: center;

  }

}



/*==================================================

** ico

==================================================*/

.is-car {

  position: relative;

}



.is-car:before {

  content: "";

  background-image: url(../images/access/ico__car02.png);

  background-size: contain;

  width: 30px;

  height: 24px;

  position: absolute;

  top: 15%;

  left: 0;

  display: inline-block;

  vertical-align: middle;

  line-height: 1.1;

  -webkit-transform: translateY(-5px);

          transform: translateY(-5px);

}



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

  .is-car:before {

    width: 40px;

    height: 32px;

    -webkit-transform: translateY(-7px);

            transform: translateY(-7px);

  }

}



/*==================================================

** ttl-deco

==================================================*/

.is-pink-deco-left {

  position: relative;

  z-index: 1;

}



.is-pink-deco-left:before {

  content: "";

  display: inline-block;

  background-size: contain;

  position: absolute;

  z-index: 0;

  width: 109px;

  height: 109px;

  top: -52px;

  left: -31px;

  z-index: -1;

  background-image: url(../images/common/img_ttl-deco.png);

}



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

  .is-pink-deco-left:before {

    width: 217px;

    height: 217px;

    top: -113px;

    left: -66px;

  }

}



/*==================================================

** sakura

==================================================*/

.is-sakura-bottom-left {

  position: relative;

}



.is-sakura-bottom-left:after {

  content: "";

  background-image: url(../images/common/img_sakura01.png);

  width: 83px;

  height: 62px;

  display: inline-block;

  background-size: contain;

  position: absolute;

  bottom: -17px;

  left: -40px;

  z-index: 1;

}



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

  .is-sakura-bottom-left:after {

    width: 133px;

    height: 100px;

    bottom: -40px;

    left: -60px;

  }

}



.is-sakura-bottom-right {

  position: relative;

}



.is-sakura-bottom-right:after {

  content: "";

  background-image: url(../images/common/img_sakura01.png);

  width: 83px;

  height: 62px;

  display: inline-block;

  background-size: contain;

  position: absolute;

  bottom: -17px;

  right: -40px;

  z-index: 1;

}



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

  .is-sakura-bottom-right:after {

    width: 133px;

    height: 100px;

    bottom: -40px;

    right: -60px;

  }

}



/*==================================================

** outline

==================================================*/

* {

  -webkit-box-sizing: border-box;

          box-sizing: border-box;

}



body {

  background-image: url(../images/common/bg_pink-light-pc.jpg);

}

