@charset "UTF-8";
/** ---------------------------------------------------------

    @ font variable

    htmlのフォントサイズが100&の場合は16px相当。
    62.5%は10px相当。

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ font-size

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ BEM

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ mixin

    .element {
        @include clearfix;
    }

---------------------------------------------------------- */
.clearfix:before, .clearfix:after {
  content: ' ';
  display: table; }

.clearfix:after {
  clear: both; }

/** ---------------------------------------------------------

    @

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ transition

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ fonts

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ fonts loader

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ Noto Sans Japanese

---------------------------------------------------------- */
/** Noto Sans CJK JP Light
---------------------------------------------------------- */
/** Noto Sans CJK JP Regular
---------------------------------------------------------- */
.home-store-card .card-body h1 span {
  font-family: 'Noto Sans JP', Noto Sans Japanese, 游ゴシック, YuGothic, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, ＭＳ ゴシック, sans-serif !important;
  font-weight: 300 !important; }

/** Noto Sans CJK JP Medium
---------------------------------------------------------- */
/** Noto Sans CJK JP Bold
---------------------------------------------------------- */
.page-furoca-portal .furoca-portal h2, .page-error .error-body h1 {
  font-family: 'Noto Sans JP', Noto Sans Japanese, 游ゴシック, YuGothic, Hiragino Kaku Gothic ProN, Hiragino Kaku Gothic Pro, ＭＳ ゴシック, sans-serif !important;
  font-weight: 700 !important; }

/** ---------------------------------------------------------

    @

---------------------------------------------------------- */
.hidden-pc {
  display: none !important; }

@media only screen and (max-width: 960px) {
  .hidden-tb {
    display: none !important; } }

@media only screen and (max-width: 640px) {
  .hidden-sp {
    display: none !important; } }

.visible-pc {
  display: none;
  display: block !important; }

.visible-pc-inline {
  display: none;
  display: inline !important; }

.visible-pc-inline-block {
  display: none;
  display: inline-block !important; }

.visible-tb {
  display: none; }

@media only screen and (max-width: 960px) {
  .visible-tb {
    display: block !important; } }

.visible-tb-inline {
  display: none; }

@media only screen and (max-width: 960px) {
  .visible-tb-inline {
    display: inline !important; } }

.visible-tb-inline-block {
  display: none; }

@media only screen and (max-width: 960px) {
  .visible-tb-inline-block {
    display: inline-block !important; } }

.visible-sp {
  display: none; }

@media only screen and (max-width: 640px) {
  .visible-sp {
    display: block !important; } }

.visible-sp-inline {
  display: none; }

@media only screen and (max-width: 640px) {
  .visible-sp-inline {
    display: inline !important; } }

.visible-sp-inline-block {
  display: none; }

@media only screen and (max-width: 640px) {
  .visible-sp-inline-block {
    display: inline-block !important; } }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.disabled {
  cursor: not-allowed !important; }

/** ---------------------------------------------------------

    @ site-header

---------------------------------------------------------- */
.site-header {
  padding: 40px 0; }

@media only screen and (max-width: 960px) {
  .site-header {
    padding: 20px 0; } }

.site-header .header-logo {
  margin: 0;
  width: 100%;
  text-align: center; }

.site-header .rakuspa-brand {
  display: inline-block;
  transition: all 0.3s ease; }

.site-header .rakuspa-brand:hover {
  opacity: .8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.site-header .rakuspa-brand img {
  height: 25px; }

@media only screen and (max-width: 960px) {
  .site-header .rakuspa-brand img {
    height: 20px; } }


.site-header .share-nav {
	position: absolute;
	right: 0;
	top: -5px;
  display: inline-block;
  vertical-align: top; }
@media only screen and (max-width: 640px) {
	.site-header .share-nav {
		display: none;
	}
}
.site-header .share-nav li {
  display: inline-block;
  margin-right: 5px;
  vertical-align: top; }

.site-header .share-nav li:last-child {
  margin-right: 0; }

.site-header .share-nav a {
  display: block;
  text-align: center;
  overflow: hidden;
  border-radius: 4px;
  width: 29px;
  height: 29px;
  font-size: 20px;
  font-size: 32px;
  font-size: 2rem;
  transition: all 0.3s ease; }

.site-header .share-nav a:hover {
  opacity: .8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.site-header .share-nav .share-fb a {
  color: #fff;
  background: #305097;
  line-height: 1.5; }

.site-header .share-nav .share-tw a {
  color: #fff;
  background: #00aced;
  line-height: 1.4; }

.site-header .share-nav .share-gp a {
  color: #fff;
  background: #DC4E41;
  line-height: 1.4; }
.site-header .share-nav .share-line {
  line-height: 1.6; }

/** ---------------------------------------------------------

    @ site-footer

---------------------------------------------------------- */
.site-footer .copyright {
  text-align: center;
  font-size: 10px;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: .1em;
  background: #fff;
  padding: 20px 0; }

/** ---------------------------------------------------------

    @ home-mainvisual

---------------------------------------------------------- */
.home-mainvisual {
  position: relative;
  margin: 0 auto;
  max-width: 1400px;
  width: 100%; }

@media only screen and (max-width: 960px) {
  .home-mainvisual {
    margin-top: 0; } }

.home-mainvisual .carousel {
  position: relative; }

.home-mainvisual .carousel-track {
  position: relative; }

.home-mainvisual .carousel-item {
  width: 100%;
  height: 450px;
  text-align: center;
background-position: center top;
background-repeat: no-repeat;
position: relative;}
.home-mainvisual .carousel-item a{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: block;
	background: rgba(255,255,255,0);
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.home-mainvisual .carousel-item a:hover{
	background: rgba(255,255,255,0.3);
	
}
@media only screen and (max-width: 960px) {
  .home-mainvisual .carousel-item {
    width: 100%;
    height: 300px;
    background-size: cover !important; } }

@media only screen and (max-width: 640px) {
  .home-mainvisual .carousel-item {
    height: 150px; } }

.home-mainvisual .carousel-item.item00 {
  background: url(../img/portal/mv00.jpg) no-repeat center top; }

.home-mainvisual .carousel-item.item01 {
  background: url(../img/portal/mv01.jpg) no-repeat center top; }

.home-mainvisual .carousel-item.item02 {
  background: url(../img/portal/mv02.jpg) no-repeat center top; }

@media only screen and (min-width: 961px) {
.container{
	width: 95%;
	margin: 0 auto;
	max-width: none;
	min-width: 1080px;
}
}



/** ---------------------------------------------------------

    @ home-store-card

---------------------------------------------------------- */
.home-store-card {
  background: #f5f5f5;
overflow: hidden;
text-align: center;
font-size: 0;}



.home-store-card .share-nav {
  padding: 25px 0 10px;
  display: inline-block;
  vertical-align: top; }
@media only screen and (min-width: 641px) {
	.home-store-card .share-nav {
		display: none;
	}
}
.home-store-card .share-nav li {
  display: inline-block;
  margin: 0 15px;
  vertical-align: top; }

.home-store-card .share-nav li:last-child {
  margin-right: 0; }

.home-store-card .share-nav a {
  display: block;
  text-align: center;
  overflow: hidden;
  border-radius: 4px;
  width: 29px;
  height: 29px;
  font-size: 20px;
  font-size: 32px;
  font-size: 2rem;
  transition: all 0.3s ease; }

.home-store-card .share-nav a:hover {
  opacity: .8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.home-store-card .share-nav .share-fb a {
  color: #fff;
  background: #305097;
  line-height: 1.5; }

.home-store-card .share-nav .share-tw a {
  color: #fff;
  background: #00aced;
  line-height: 1.4; }

.home-store-card .share-nav .share-gp a {
  color: #fff;
  background: #DC4E41;
  line-height: 1.4; }
.home-store-card .share-nav .share-line {
  line-height: 1.6; }




/* 3分割 
.home-store-card .card {
	display: inline-block;
	vertical-align: top;
  border-radius: 8px;
  overflow: hidden;
  width: 32%;
	margin: 0 1.3% 20px 0;
  background: #fff;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); }
*/

/* 2分割 */
.home-store-card .container{
	max-width: 1400px;
	margin: 0 auto;
}
.home-store-card .card {
	display: inline-block;
	vertical-align: top;
	border-radius: 8px;
	overflow: hidden;
	width: 47%;
	margin: 0 1.3% 20px 0;
	background: #fff;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2); 
}

.home-store-card .card :nth-of-type(3n){
	margin: 0 0 0 0;
}

@media only screen and (max-width: 960px) {
  .home-store-card .card {
    width: 49%;
    height: auto; } }

@media only screen and (max-width: 640px) {
  .home-store-card .card {
    width: 100%;
    float: none; } }


@media only screen and (max-width: 960px) {
  .home-store-card .card:nth-of-type(2n){
	  margin: 0 0 20px 0;;
    } }

@media only screen and (max-width: 640px) {
  .home-store-card .card:first-child {
    margin-right: 0;
    margin-bottom: 15px; } }

.home-store-card .card-body {
  padding: 50px 7%;
  color: #333; }

@media only screen and (max-width: 960px) {
  .home-store-card .card-body {
    padding: 30px;
    min-height: 418px; } }

@media only screen and (max-width: 640px) {
  .home-store-card .card-body {
    padding: 25px 20px 20px;
    min-height: 1px; } }

.home-store-card .card-body h1 {
  margin: 0;
  text-align: center; }

.home-store-card .card-body h1 img {
  height: 30px; }

@media only screen and (max-width: 960px) {
  .home-store-card .card-body h1 img {
    height: 20px; } }

.home-store-card .card-body h1 span {
  margin-top: 13px;
  display: block;
  font-size: 13px;
  font-size: 20.8px;
  font-size: 1.3rem; }

@media only screen and (max-width: 960px) {
  .home-store-card .card-body h1 span {
    margin-top: 8px;
    font-size: 12px;
    font-size: 1.2rem; } }

@media only screen and (max-width: 640px) {
  .home-store-card .card-body h1 span {
    font-size: 11px;
    font-size: 1.1rem; } }

.home-store-card .card-body p {
  margin: 35px 0 0;
  text-align: justify;
  font-size: 14px;
  font-size: 22.4px;
  font-size: 1.4rem;
  line-height: 2; }

@media only screen and (max-width: 960px) {
  .home-store-card .card-body p {
    margin: 20px 0; } }

@media only screen and (max-width: 640px) {
  .home-store-card .card-body p {
    margin: 15px 0;
    font-size: 13px;
    font-size: 1.3rem; } }

.home-store-card .basic-button {
  position: relative;
  display: block;
  text-align: center;
  margin-top: 35px;
  padding: 18px 5px;
  letter-spacing: -.03em;
  font-size: 13px;
  font-size: 20.8px;
  font-size: 1.3rem; }

.home-store-card .card-nagoya .basic-button {
	background: #007642;
}
.home-store-card .card-kanda .basic-button {
/* 	background: #BED105; */
}

.home-store-card .card-kanda span.basic-button:hover ,
.home-store-card .card-nagoya span.basic-button:hover {
	opacity: 1.0;
}
.home-store-card .card-kanda .thumb ,
.home-store-card .card-nagoya .thumb {
	position: relative;
}
.home-store-card .card-kanda .thumb .basic-button ,
.home-store-card .card-nagoya .thumb .basic-button {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	margin: 0;
}

.home-store-card .basic-button i {
  position: absolute;
  right: 15px;
  margin-left: 0; }

.home-store-card .basic-button:not(:last-child) {
  margin-bottom: 10px; }

@media only screen and (max-width: 960px) {
  .home-store-card .basic-button {
    margin-top: 20px;
    padding: 18px 5px;
    font-size: 12px;
    font-size: 1.2rem; } }

@media only screen and (max-width: 640px) {
  .home-store-card .basic-button {
    padding: 12px 5px; } }

.home-store-card .card-hamamatsu .basic-button {
  background-color: #b1985a; }

/** ---------------------------------------------------------

    @ page-furoca

---------------------------------------------------------- */
/** ---------------------------------------------------------

    @ page-furoca-about

---------------------------------------------------------- */
.page-furoca-about .page-body {
  background: #d7003a; }

.page-furoca-about hr {
  border: none;
  outline: none;
  width: 100%;
  height: 8px;
  background: url(../img/furoca/about/line.gif) repeat;
  margin: 0; }

/** ---------------------------------------------------------

    @ furoca-about

---------------------------------------------------------- */
.page-furoca-about .furoca-about .about-block {
  display: table;
  width: 100%; }

@media only screen and (max-width: 960px) {
  .page-furoca-about .furoca-about .about-block {
    display: block; } }

.page-furoca-about .furoca-about .text,
.page-furoca-about .furoca-about .info {
  display: table-cell;
  vertical-align: middle; }

@media only screen and (max-width: 960px) {
  .page-furoca-about .furoca-about .text,
  .page-furoca-about .furoca-about .info {
    display: block; } }

.page-furoca-about .furoca-about .text {
  color: #fff;
  font-size: 20px;
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.8; }

@media only screen and (max-width: 960px) {
  .page-furoca-about .furoca-about .text {
    text-align: center; } }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-about .text {
    font-size: 16px;
    font-size: 1.6rem; } }

.page-furoca-about .furoca-about .info {
  width: 390px;
  text-align: right;
  /* ie9 bug fix */ }

.page-furoca-about .furoca-about .info img {
  width: 100%; }

@media only screen and (max-width: 960px) {
  .page-furoca-about .furoca-about .info {
    margin: 20px auto 0;
    width: 60%;
    text-align: center; } }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-about .info {
    width: 100%; } }

.page-furoca-about .furoca-about .image {
  border: #fff 2px solid;
  border-radius: 4px;
  overflow: hidden; }

/** ---------------------------------------------------------

    @ furoca-merit

---------------------------------------------------------- */
.page-furoca-about .furoca-merit h2 {
  margin: 0 auto;
  width: 356px; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-merit h2 {
    width: 256px; } }

.page-furoca-about .furoca-merit ul {
  display: table;
  width: 100%; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-merit ul {
    display: block; } }

.page-furoca-about .furoca-merit li {
  display: table-cell;
  width: 33.333%;
  vertical-align: bottom;
  text-align: center; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-merit li {
    display: block;
    width: 100%;
    margin-bottom: 20px; }
  .page-furoca-about .furoca-merit li:last-child {
    margin-bottom: 0; } }

.page-furoca-about .furoca-merit li img {
  width: 320px;
  vertical-align: bottom; }

@media only screen and (max-width: 960px) {
  .page-furoca-about .furoca-merit li img {
    width: 95%; } }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-merit li img {
    width: 100%; } }

.page-furoca-about .furoca-merit li:first-child {
  text-align: left; }

.page-furoca-about .furoca-merit li:last-child {
  text-align: right; }

/** ---------------------------------------------------------

    @ furoca-step

---------------------------------------------------------- */
.page-furoca-about .furoca-step h2 {
  margin: 0 auto;
  width: 118px; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-step h2 {
    width: 90px; } }

.page-furoca-about .furoca-step ul {
  display: table;
  width: 100%; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-step ul {
    display: block; } }

.page-furoca-about .furoca-step ul:first-child {
  margin-bottom: 20px; }

.page-furoca-about .furoca-step li {
  display: table-cell;
  width: 50%;
  vertical-align: bottom; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-step li {
    display: block;
    width: 100%;
    margin-bottom: 20px; }
  .page-furoca-about .furoca-step li:last-child {
    margin-bottom: 0; } }

.page-furoca-about .furoca-step li img {
  width: 98%; }

@media only screen and (max-width: 640px) {
  .page-furoca-about .furoca-step li img {
    width: 100%; } }

.page-furoca-about .furoca-step li:last-child {
  text-align: right; }

/** ---------------------------------------------------------

    @ furoca-entry-btn

---------------------------------------------------------- */
.page-furoca-about .furoca-entry-btn {
  transition: all 0.3s ease; }

.page-furoca-about .furoca-entry-btn:hover {
  opacity: .9;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)"; }

.page-furoca-about .furoca-entry-btn.basic-button {
  background: #fff;
  color: #d7003a;
  display: none;
  padding: 30px 0;
  font-size: 16px;
  font-size: 25.6px;
  font-size: 1.6rem; }

/** ---------------------------------------------------------

    @ page-furoca-portal

---------------------------------------------------------- */
.page-furoca-portal .page-header,
.page-furoca-portal .page-body {
  background-color: #f5f5f5; }

.page-furoca-portal .furoca-portal h2 {
  font-size: 24px;
  font-size: 38.4px;
  font-size: 2.4rem;
  text-align: center;
  margin: 60px 0;
  line-height: 1.6; }

@media only screen and (max-width: 960px) {
  .page-furoca-portal .furoca-portal h2 {
    margin: 30px 0; } }

@media only screen and (max-width: 640px) {
  .page-furoca-portal .furoca-portal h2 {
    font-size: 16px;
    font-size: 1.6rem; } }

.page-furoca-portal .furoca-portal .use-block {
  display: table;
  width: 100%; }

@media only screen and (max-width: 960px) {
  .page-furoca-portal .furoca-portal .use-block {
    width: 95%;
    margin: 0 auto; } }

@media only screen and (max-width: 640px) {
  .page-furoca-portal .furoca-portal .use-block {
    width: 100%;
    display: block; } }

.page-furoca-portal .furoca-portal .use-block .list,
.page-furoca-portal .furoca-portal .use-block .button {
  display: table-cell;
  vertical-align: middle; }

@media only screen and (max-width: 640px) {
  .page-furoca-portal .furoca-portal .use-block .list,
  .page-furoca-portal .furoca-portal .use-block .button {
    display: block; } }

.page-furoca-portal .furoca-portal .use-block .list {
  overflow: hidden; }

.page-furoca-portal .furoca-portal .use-block .button {
  width: 390px; }

@media only screen and (max-width: 960px) {
  .page-furoca-portal .furoca-portal .use-block .button {
    width: 350px; } }

@media only screen and (max-width: 640px) {
  .page-furoca-portal .furoca-portal .use-block .button {
    width: 100%;
    margin-top: 30px; } }

.page-furoca-portal .furoca-portal .use-block ul {
  float: left; }

@media only screen and (max-width: 960px) {
  .page-furoca-portal .furoca-portal .use-block ul {
    float: none; } }

.page-furoca-portal .furoca-portal .use-block ul:first-child {
  margin-right: 50px; }

@media only screen and (max-width: 960px) {
  .page-furoca-portal .furoca-portal .use-block ul:first-child {
    margin-right: 0;
    margin-bottom: 15px; } }

.page-furoca-portal .furoca-portal .use-block li {
  font-size: 14px;
  font-size: 22.4px;
  font-size: 1.4rem;
  margin-bottom: 15px; }

.page-furoca-portal .furoca-portal .use-block li:last-child {
  margin-bottom: 0; }

.page-furoca-portal .furoca-portal .use-block li i {
  color: #28ab98;
  margin-right: 10px; }

.page-furoca-portal .furoca-portal .use-block .basic-button {
  width: 100%;
  text-align: center;
  padding: 25px 0; }

@media only screen and (max-width: 640px) {
  .page-furoca-portal .furoca-portal .use-block .basic-button {
    padding: 15px 0; } }

.page-furoca-portal .furoca-portal .use-block .btn-login {
  margin-bottom: 20px;
  border: none;
  background-color: #28ab98;
  color: #fff; }

@media only screen and (max-width: 640px) {
  .page-furoca-portal .furoca-portal .use-block .btn-login {
    margin-bottom: 10px; } }

.page-furoca-portal .furoca-portal .use-block .btn-reminder {
  background-color: #d7003a;
  color: #fff; }

/** ---------------------------------------------------------

    @ page-error

---------------------------------------------------------- */
.page-error .error-body {
  text-align: center;
  background: #f5f5f5; }

.page-error .error-body h1 {
  margin: 0;
  color: #222;
  font-size: 50px;
  font-size: 80px;
  font-size: 5rem; }

@media only screen and (max-width: 640px) {
  .page-error .error-body h1 {
    font-size: 24px;
    font-size: 2.4rem; } }

.page-error .error-body h1 i {
  margin-right: .3em; }

.page-error .error-body h2 {
  margin: 1.2em 0 0;
  color: #222;
  font-size: 18px;
  font-size: 28.8px;
  font-size: 1.8rem; }

@media only screen and (max-width: 640px) {
  .page-error .error-body h2 {
    font-size: 14px;
    font-size: 1.4rem; } }

.page-error .error-body p {
  margin: 0;
  line-height: 2; }

@media only screen and (max-width: 640px) {
  .page-error .error-body p {
    text-align: justify;
    font-size: 13px;
    font-size: 1.3rem; } }

/** ---------------------------------------------------------

    @ error-404

---------------------------------------------------------- */
