@charset "UTF-8";

/*------------------------------------------------------------
	リセット
------------------------------------------------------------*/

* {
	box-sizing: border-box;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
figure,fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
	font-weight:normal;
	font-style: normal;
    vertical-align: baseline;
    background: transparent;
}

html {
	font-size: 62.5%;
	height:100%;
	-webkit-text-size-adjust:100%; /*iPhone 文字サイズ調整*/
	overflow-x: hidden; /*横スクロール非表示*/
} 

body {
    font: 400 1.4rem/1.8 "SuisseIntl", sans-serif;
	background-color:#fff;　/*#E7ECF0*/
	color:#363636;
	height:100%;
}

@media only screen and (min-width: 768px) {
	
	body {
		line-height: 2;
	}
	
}

ol, ul {
    list-style: none;
}

/* remember to define focus styles! */
:focus {
    outline: 0;
}
 
/* remember to highlight inserts somehow! */
ins {
    text-decoration: none;
}
del {
    text-decoration: line-through;
}
 
address {
	font-style:normal;
}


img {
	max-width: 100%;
	height: auto;
	display: block;
}

figure {
	display: block;
}



/*==========================================================
   Web Fonts
==========================================================*/
 
/* Regular */
@font-face{
	font-family: 'SuisseIntl';
	src:url('../font/SuisseIntl-Regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* Medium */
@font-face{
	font-family: 'SuisseIntl';
	src:url('../font/SuisseIntl-Medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}



/*------------------------------------------------------------
	LINK
------------------------------------------------------------*/

a:link {
	color: #3D2F29;
	text-decoration: underline;
}

a:visited {
	color: #3D2F29;
	text-decoration: underline;
}

a:hover {
	color: #E41C1F;
	text-decoration: underline;
}

a:active {
	color: #E41C1F;
}

a:focus { 
	outline:none;
}


/*------------------------------------------------------------
	clearFix
------------------------------------------------------------*/

* html .cf,
*+html .cf {
	zoom: 1;
}

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

.cf {display: inline-block;}
/* Hides from IE-mac \*/
* html .cf { height: 1%;}
.cf {display: block;}
/* End hide from IE-mac */

.zoom {
	overflow: hidden;
	zoom: 1;
}


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

	br.sp,
	div.sp-show {
		display: none;
	}

}


@media only screen and (max-width: 767px) {
	
	br.pc,
	div.pc-show {
		display: none;
	}
	
}


/*------------------------------------------------------------
	Fontサイズ
------------------------------------------------------------*/
	
.sz17 {
	font-size: 1.7rem!important;
}


@media only screen and (min-width: 768px) {
		
	.sz18 {
		font-size: 1.7rem!important;
	}

}


/*------------------------------------------------------------
	マージン
------------------------------------------------------------*/

.mb5 {
	margin-bottom:5px;
}

.mb10 {
	margin-bottom:10px;
}

.mb15 {
	margin-bottom:15px;
}

.mb20 {
	margin-bottom:20px;
}

.mb25 {
	margin-bottom:25px;
}

.mb30 {
	margin-bottom:30px;
}

.mb35 {
	margin-bottom:35px;
}

.mb40 {
	margin-bottom:40px;
}

.mb45 {
	margin-bottom:45px;
}

.mb50 {
	margin-bottom:50px;
}

.mb60 {
	margin-bottom:60px;
}

.mb70 {
	margin-bottom:70px;
}

.mb80 {
	margin-bottom:80px;
}

.ml10 {
	margin-left:10px;
}

.ml15 {
	margin-left:15px;
}


/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/

/* 太字・注意書き */

strong,
.bold {
	font-weight:bold;
}

.boldborder {
	font-weight:bold;
	text-decoration:underline;
}

.redbold {
	font-weight:bold;
	color:#900;
}

.attention {
	color:#900;
}

.pnk {
	color: #E41C1F;
}


/* テーブル */

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

table tr th,
table tr td {
	border:1px solid #ccc;
	display:block;
}

@media only screen and (min-width: 768px) {
	
table tr th,
table tr td {
	display:table-cell;
}

}

/* float */

.floatL {
	float: left;
}

.floatR {
	float: right;
}


/*------------------------------------------------------------
	並べ替え
------------------------------------------------------------*/


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

	.order-01 {
		order: 1;
	}
	
	.order-02 {
		order: 2;
	}
	
	.order-03 {
		order: 3;
	}
	
	.order-04 {
		order: 4;
	}
	
	.order-05 {
		order: 5;
	}
	
	.order-06 {
		order: 6;
	}
	
	.order-07 {
		order: 7;
	}
	
	.order-08 {
		order: 8;
	}
	.order-09 {
		order: 9;
	}
	
	.order-10 {
		order: 10;
	}

}



/*------------------------------------------------------------
	ベースライン
------------------------------------------------------------*/

/*aboutページで使用*/
p.txt01 {
	font-size: 1.2rem;
	line-height: 2;
	color:#333;
}


/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/

#banner-area {
	background: #1f1f1f;
	height: 30px;
	position: relative;
	z-index: 10;
}

#banner-area p {
	font-size: 1.2rem;
	text-align: center;
	line-height: 30px;
	letter-spacing: 0.1rem;
	color: #fff;
}


@media only screen and (min-width: 768px) {
	
	#banner-area p {
		font-size: 1.2rem;
		text-align: center;
		line-height: 30px;
		color: #fff;
	}
	
}

#banner-area p a {
	text-decoration: none;
	color: #fff;
}

#banner-area p a:hover {
	text-decoration: underline;
}

header {
	background: rgba(255,255,255,0.9);
	width:100%;
	height:64px;
	position: absolute;
	top: 30px;
	z-index: 1000;
}

header.is-scrolled {
	position: fixed;
	top: 0;
	left: 0;
}

header #inner_head {
	width:94%;
	margin:0 auto;
	position:relative;
}

header #inner_head a.booking-btn {
	display: block;
	font-size: 1.1rem;
	font-weight: 500;
	line-height: 30px;
	text-align: center;
	color: #000;
	padding: 0 8px;
	border: 1px solid #000;
	text-decoration: none;
	position: absolute;
	top: 17px;
	right: 0;
}


@media only screen and (min-width: 768px) {
	
	header {
		height:130px;
		padding: 40px 30px 0;
	}
		
	header #inner_head {
		width: calc(100% - 60px);
        min-width: 1280px;
		height:63px;
	}
	
	header #inner_head a.booking-btn {
		font-size: 1.3rem;
		line-height: 40px;
	    padding: 0 15px;
	    top: 4px;
	    right: 0;
	}
	
	header #inner_head a.booking-btn:hover {
		background: #000;
		color: #fff;
	}
	
}


/* SITE ID */
header #inner_head .siteID {
	display:block;
	background:url(../img/common/logo-new.png) left top / contain no-repeat;
    width: 160px;
    height: 22px;
    text-indent: -9999px;
    position: absolute;
    top: 23px;
    left: 50%;
    transform: translateX(-50%);
}

@media only screen and (min-width: 768px) {
		
	header #inner_head .siteID {
	    width: 220px;
	    height: 30px;
		margin: 10px 0;
	    top: 0px;
	    left: 0;
	    transform: none;
	}
	
	header #inner_head .siteID:hover {
		opacity: 0.8;
	}

}


/* PC NAVIGATION */
nav#pcMenu {
	display:none;
}

@media only screen and (min-width: 768px) {
	
	nav#pcMenu {
		display:block;
		position: absolute;
		top: 12px;
		right: 250px;
	}
	
	nav#pcMenu ul li {
		display: inline-block;
		font-size: 1.4rem;
		font-weight: 400;
		line-height: 2;
		letter-spacing: 1px;
		padding-bottom:8px;
		position: relative;
	}
	
	nav#pcMenu ul li:nth-child(7) {
		margin-right: 10px;
	}
	
	nav#pcMenu ul li.sns  {
		margin: 0px;
	}
	
	nav#pcMenu ul li a {
		color: #000;
		text-decoration:none;
		padding: 10px 8px;
	}
	
	nav#pcMenu ul li:hover {
		border-bottom: 3px solid #000;
		cursor: pointer;
	}

	
	/*ドロップダウン 共通設定*/
	#pcMenu div.second-menu {
	    visibility: hidden;
	    opacity: 0;
	}
	
	#pcMenu ul li div.second-menu {
	    background: #FAFAF8;
	    width: 220px;
	    padding: 10px 20px 25px;
	    position: absolute;
	    top: 55px; /*ドロップダウンの表示開始位置*/
	}
	
	#pcMenu ul li:hover div.second-menu {
	    visibility: visible;
	    opacity: 1;
	    top: 39px; /*メガメニューの実際の表示位置*/
	    -webkit-transition: all .2s;
	    transition: all .2s;
	}
	
	#pcMenu ul li.dropMenu div.second-menu ul.sub-menu li {
		clear: both;
		width: 100%;
		height: 50px;
		line-height: 52px;
		border: none;
		border-bottom: 1px dotted #ccc;
		padding: 0 0 0 5px;
	}
	
	#pcMenu ul li.dropMenu div.second-menu ul.sub-menu li a {
		display: block;
		height: 50px;
		font-size: 1.4rem;
		line-height: 52px;
	    text-align: left;
		color: #000;
		padding: 0;
	}
	
	#pcMenu ul li.dropMenu div.second-menu ul.sub-menu li a:hover {
		text-decoration: underline;
	}
	
}




/* 言語切替え */
header #inner_head form {
	display:none;
}

@media only screen and (min-width: 768px) {
	
	header #inner_head form {
		display:block;
		font-size:1.1rem;
		font-weight: 500;
		position:absolute;
		top:11px;
		right:130px;
	}

}

.customSelect { 
	background:url(../img/common/bg_select.png) left top no-repeat;
	background: #eee;
	width:100px;
	line-height: 28px;
	color:#232323;
	box-sizing:border-box;
	border-radius: 2px;
}

.customSelect:after {
	content: '\f0ac';
	font-size: 14px;
	font-family: 'fontawesome';
	position: absolute;
	top: 1px;
	left: 12px;
} 

.customSelect.customSelectHover {
	background: #bbb;
}

.customSelect.customSelectOpen {
	background: #ddd;
}

.customSelectInner {
	font-size:1.2rem;
	padding:1px 0 0 35px;
}

.mySelectBoxClass {
	border: none;
	cursor: pointer;
}

.mySelectBoxClass option {
	font-size: 1.2rem;;
	padding: 5px;
	background: #eee;
	cursor: pointer;
}


/*------------------------------------------------------------
	メニューボタン
------------------------------------------------------------*/

.menu-btn {
    display: block;
    width: 35px;
    height: 35px;
    cursor: pointer;
    position: absolute;
    top: 17px;
    left: 0;
    z-index: 100;
}

.menu-btn span {
    display: block;
    position: absolute;
    width: 70%;
    border-bottom: solid 1px #000;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    padding-top: 5px;
    right: 7px;
}

.menu-btn span:nth-child(1) {
    top: 3px;
}
.menu-btn span:nth-child(2) {
    top: 11px;
}
.menu-btn span:nth-child(3) {
    top: 19px;
}

.menu-btn.active span {
	border-color: #000;
    border-bottom: solid 1px #000;
}

.menu-btn.active span:nth-child(1) {
    top: 10px;
    left: 0;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.menu-btn.active span:nth-child(2),
.menu-btn.active span:nth-child(3) {
    top: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

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

	.menu-btn {
		display: none;
	}

}


/*------------------------------------------------------------
	ドロワーメニュー
------------------------------------------------------------*/

.drawer {
	background:rgba(255,255,255,1);
	opacity: 0;
	width: 100%;
	height: 100%;
	padding: 100px 11vw 0;
	-webkit-transform: translateY(-100%);
	transform: translateX(100%);
	-webkit-transition: ease .3s;
	transition: ease .3s;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 800;
}

.drawer.active {
	opacity: 1;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.drawer ul li { 
	width: 100%;
	line-height: 1.8;
	margin-bottom: 15px;
}

.drawer ul li a {
	font-size: 1.8rem;
	font-weight: 500;
	color: #000;
	text-decoration: none;
}

.drawer ul li a:after {
	content: '\f105';
	font-family: 'font awesome 6 pro';
	font-size: 1.1rem;
	font-weight: 300;
	color: #7c7c7c;
	margin-left: 6px;
	position: relative;
	top: -2px;
}

.drawer ul li section div {
	margin-right: 12px;
}

.drawer ul li section div:last-child {
	margin: 0;
}

.drawer ul li section a {
	font-size: 1.4rem;
	font-weight: 400;
}

.drawer ul li section a:after {
	font-size: 1rem;
	margin-left: 3px;
	top: -1px;
}

.drawer ul li .faet-ttl {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.2;
	margin: 10px 0 0;
}

.drawer ul li a span {
	display: block;
	font-size: 1rem;
	letter-spacing: 1px;
	color: #999;
}

.drawer .sns-btn {
	text-align: center;
	margin: 10px 0 30px;
}

.drawer .sns-btn li {
	display: inline-block;
	width: 44px;
	margin: 0 10px;
}

.drawer .sns-btn li a {
	display: block;
	background: #ccc;
    width: 44px;
    height: 44px;
    line-height: 44px;
    border-radius: 30px;
	color: #fff;
}

.drawer .sns-btn li a:after {
	content: none;
}


/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/

#wrapper {
	position: relative;
	overflow:hidden;
}

@media only screen and (min-width: 768px) {
	
	#wrapper {
		overflow:hidden;
	}
	
}

#container {
	width:100%;
	margin:0 auto;
	position: relative;
	padding-top: 64px;
}

#container .contents {
	clear:both;
	width:90%;/*１．コンテンツの幅を指定*/
	margin:0 auto;
}

@media only screen and (min-width: 768px) {
	
	#container {
		padding-top: 130px;
	}
	
	#container .contents {
		min-width:1120px;
		max-width: 1380px;
/*         min-height: 540px; */
		margin:0 auto;
	}

}


/*------------------------------------------------------------
	RESPONSIVE GRID（flex-box）
------------------------------------------------------------*/

.flex-box {
	display:flex;
	flex-wrap:wrap;
	display: -webkit-flex; /*古いブラウザ用*/
	-webkit-flex-wrap: wrap;/*古いブラウザ用*/
}

.fullwidth,
.one-half,
.one-third,
.one-third-left,
.one-third-right,
.two-third-left,
.two-third-right,
.two-fifth-left,
.two-fifth-right,
.three-fifth-left,
.three-fifth-right {
	width:100%;
}

.one-fourth,
.one-fifth {
	width:48%;
	margin-right:4%;
}

.one-sixth {
	width:32%;
	margin-right:2%;
}

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

	.one-fourth:nth-child(2n),
	.one-fifth:nth-child(2n),
	.one-sixth:nth-child(3n) {
		margin-right:0;
	}

}

@media only screen and (min-width: 768px) {
	
	.one-half {
        width: 47.5%;
        margin-right: 5%;
	}
	
	.one-third {
		width:calc(92% / 3);
	}
	.one-third-left,
	.one-third-right {
		width:32%;
	}
	
	.one-fourth {
		width:23.5%;
		margin-right:2%;
	}
	
	.one-fifth {
		width:18.4%;
		margin-right:2%;
	}
	
	.one-sixth {
		width:15%;
	}
	
	.two-third-left,
	.two-third-right {
		width:64%;
	}
	
	.two-fifth-left,
	.two-fifth-right{
		width:38.8%;
	}
	
	.three-fifth-left,
	.three-fifth-right {
		width:59.2%;
	}
	
	.one-third {
		margin-right:4%;
	}
	.one-third-left,
	.two-third-left,
	.two-fifth-left,
	.three-fifth-left {
		margin-right:4%;
	}
	
	.one-half:nth-child(2n),
	.one-third:nth-child(3n),
	.one-fourth:nth-child(4n),
	.one-fifth:nth-child(5n),
	.one-sixth:nth-child(6n) {
		margin-right:0;
	}

}



/*------------------------------------------------------------
	パンくず
------------------------------------------------------------*/

.breadCrumbArea {
	border-top: 1px solid #e3e3e3;
	margin-top: 40px;
}

ul.breadcrumb {
	width: 90%;
	margin: 0 auto;
	padding: 10px 0;
}

ul.breadcrumb li {
	float:left;
}

ul.breadcrumb li i {
	position: relative;
	top: -0.1em;
}

ul.breadcrumb li a {
	font-size: 1.1rem;
	text-decoration: none;
}

ul.breadcrumb li:after {
	content:"/";
	margin:0 0.5em;
}

ul.breadcrumb li:last-child:after {
	content: none;
}

@media only screen and (min-width: 768px) {
	
	.breadCrumbArea {
		margin-top: 60px;
	}
	
	ul.breadcrumb {
		max-width: 1380px;
		min-width: 1120px;
		padding: 20px 0;
	}
	
	ul.breadcrumb li a {
		font-size: 1.2rem;
	}
	
}


/*------------------------------------------------------------
	ボタン
------------------------------------------------------------*/

a.button,
a.button::before,
a.button::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s;
  transition: all .2s;
}

a.button {
	display: block;
	background: #2c2c2c;
	width: 240px;
	max-width: 100%;
	line-height: 52px;
	text-align: center;
	text-decoration: none!important;
	color: #fff;
	margin: 0 auto;
	position: relative;
	z-index: 2;
	border-bottom: 1px solid #000;
	overflow: hidden;
}

a.button:hover {
  color: #fff!important;
  text-decoration: none;
}

a.button:before {
	content: '\f105';
	font-family: 'Font Awesome 5 Pro';
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}

a.button:hover:before {
	right: 17px;
}

a.button::after {
	display: block;
	content: '';
	background: #000;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: -1;
	bottom: 0;
	left: -100%;
}

a.button:hover::after {
  left: 0;
}

@media only screen and (min-width: 768px) {
	
	a.button {
		width: 240px;
	}

}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/

footer {
	background:#EDEFF1;
	width:100%;
	padding-bottom:30px;
	text-align: center;
	position: relative;
}

@media only screen and (min-width: 768px) {
	
	footer {
		width: 100%;
		padding: 40px 0;
	}
	
}

footer .footInner {
	width: 100%;
	margin: 0 auto;
	padding: 40px 3vw 0 5vw;
}

footer .footInner a {
	text-decoration: none;
}

@media only screen and (min-width: 768px) {
	
	footer .footInner {
		min-width:1180px;
		max-width: 1380px;
		padding: 30px 0 0;
		box-sizing: border-box;
		margin:0 auto;
		text-align:left;
		position: relative;
	}
	
	footer .footInner a:hover {
		text-decoration: underline;
	}

}

/*ロゴ*/
footer .footInner .logo {
    width: 200px;
    margin: 0 auto 40px;
}

@media only screen and (min-width: 768px) {
	
	footer div.footInner .logo {
    	width: 240px;
		position: absolute;
		top: 25px;
		left: 0;
		margin: 0;
		padding: 0;
	}

}

/* 営業時間 */
footer .footInner .logo dl {
	margin-top: 20px;
}

footer .footInner .logo dl dt {
	font-size: 1.4rem;
	font-weight: 500;
}

footer .footInner .logo dl dd {
	font-size: 1.3rem;
	margin-bottom: 10px;
}

footer .footInner .logo dl dd:last-child {
	font-size: 1.5rem;
	margin-bottom: 0;
}

footer .footInner .logo dl dd:last-child i {
	color: #0dc16a;
}

@media only screen and (min-width: 768px) {
	
	footer .footInner .logo dl {
		margin-top: 40px;
	}
	
}



/*メニュー*/
footer .footInner .flex-box {
	justify-content: center;
}

@media only screen and (min-width: 768px) {
	
	footer .footInner .flex-box {
		justify-content: flex-end;
	}
	
}

footer .footInner .flex-box dl {
	width: calc(73% / 3);
	text-align: left;
}


footer .footInner .flex-box dl:last-of-type {
	width: 27%;
}

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

	footer .footInner .flex-box dl {
		width: auto;
		margin-right: 80px;
	}
	
	footer .footInner .flex-box dl:last-of-type {
		width: auto;
		margin: 0;
	}

}

footer .footInner .flex-box dl dt {
	font-size: 1.2rem;
	line-height: 1.4;
	font-weight: 500;
	margin-bottom: 10px;
}

footer .footInner .flex-box dl dd {
	font-size: 1.1rem;
	line-height: 1.2;
	margin-bottom: 8px;
	padding-right: 2vw;
}

footer .footInner .flex-box dl dd i {
	color: #0dc16a;
}

@media only screen and (min-width: 768px) {
	
	footer .footInner .flex-box dl dt {
		font-size: 1.7rem;
		margin-bottom: 25px;
	}
	
	footer .footInner .flex-box dl dd {
		font-size: 1.4rem;
		margin-bottom: 15px;
		padding-right: 0;
	}

}

/*Privacy Policy Terms & Conditions*/
footer .footInner ul {
	margin-top: 30px;
	text-align: right;
}

footer .footInner ul li {
	display: inline-block;
	font-size: 1.2rem;
	margin-left: 10px;
}

@media only screen and (min-width: 768px) {
	
	footer .footInner ul {
		margin-top: 80px;
	}
	
	footer .footInner ul li {
		font-size: 1.4rem;
		margin-left: 30px;
	}
	
}


/*COPYRIGHT*/
footer .footInner address {
	font-size: 0.9rem;
	line-height: 1;
/*
	bottom: 37px;
	left: 5vw;
*/
}

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

	footer .footInner address {
		position: absolute;
		font-size: 1.2rem;
		bottom: 0;
		left: 0;
	}

}

/*------------------------------------------------------------
	PAGE TOP
------------------------------------------------------------*/

a#page-top {
	display: block;
	background:#cf7a7a;
	font-size: 1rem;
	width: 38px;
	height: 38px;
	line-height: 38px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-sizing:border-box;
	position: fixed;
	bottom: 70px;
	right: 5%;
	z-index: 100;
	border-radius: 36px;
}

@media only screen and (min-width: 768px) {
	
	footer a#page-top {
		width: 60px;
		height: 60px;
		font-size: 1.6rem;
		line-height: 60px;
		right: 10px;
		right: 5%;
		bottom: 130px;
	}

	footer a#page-top:hover {
		background:#a45c5c;
	}
		
}

/*------------------------------------------------------------
	WHATS APP
------------------------------------------------------------*/

a#whats-app {
	display: block;
	background:#00E675;
	font-size: 2.2rem;
	width: 38px;
	height: 38px;
	line-height: 38px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-sizing:border-box;
	position: fixed;
	bottom: 20px;
	right: 5%;
	z-index: 100;
	border-radius: 36px;
}

@media only screen and (min-width: 768px) {
	
	footer a#whats-app {
		width: 60px;
		height: 60px;
		font-size: 2.6rem;
		line-height: 60px;
		bottom: 50px;
	}
	
	footer a#whats-app:hover {
		background: #0dc16a;
		
	}

}


/*------------------------------------------------------------
	reveal-modal（Whatz Up ボタン）
------------------------------------------------------------*/

.reveal-modal-bg { 
	position: fixed; 
	height: 100%;
	width: 100%;
	background: #000;
	background: rgba(0,0,0,.85);
	z-index: 100;
	display: none;
	top: 0;
	left: 0; 
}

.reveal-modal {
	visibility: hidden;
	width: 270px;
	top: 30px; 
	left: 50%;
	margin-left: -135px;
	position: absolute;
	z-index: 101;
}		

.reveal-modal #modalMenu {
    background: #fff;
    width: 100%;
    max-width: 270px;
    height: 357px;
	padding: 38px 0 0;
    position: fixed;
    top: 67px;
    z-index: 101;
}

.reveal-modal ul li {
	font-weight: 400;
	border-bottom:1px solid #232323;
	line-height:50px;
	padding-left:10px;
	position:relative;
}
	
.reveal-modal ul li a {
	display:block;
	text-decoration:none;
}
	
.reveal-modal ul li a:after {
	font-family: "fontawesome";
	content: "\f105";
	position:absolute;
	right:10px;
}
	
.reveal-modal.small 		{ width: 200px; margin-left: -140px;}
.reveal-modal.medium 		{ width: 400px; margin-left: -240px;}
.reveal-modal.large 		{ width: 600px; margin-left: -340px;}
.reveal-modal.xlarge 		{ width: 800px; margin-left: -440px;}

.reveal-modal .close-reveal-modal {
	font-size: 1.2rem;
	font-weight: 400;
	position: absolute;
	color:#fff;
	top: 8px;
	right: 11px;
	padding:5px 10px;
	text-decoration:none;
	background:#232323;
	cursor: pointer;
} 


.modal__content a.js-modal-close {
	display: block;
	margin: 20px auto 0;
	text-align: center;
}



.reveal-modal-whatsup {
	visibility: hidden;
	width: 80vw;
	height: calc(100vh - 100px);
	position: absolute;
	top: 0;
	left: 10vw;
	z-index: 101;
}

.reveal-modal-whatsup ul {
	width: 100%;
	max-width: 260px;
	height: 343px;
	position: fixed;
	top: 100px;
	left: 50%;
	transform: translateX(-50%);
}

.reveal-modal-whatsup ul li a {
	display: block;
	width: 100%;
	height: 50px;
	font-weight: 500;
	line-height: 50px;
	letter-spacing: 1px;
	color: #fff;
	margin-bottom: 20px;
	border: 1px solid #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 30px;
}

.reveal-modal-whatsup ul li:last-child a {
	margin-bottom: 0;
}

.reveal-modal-whatsup .close-reveal-modal {
	font-size: 1.2rem;
	font-weight: 400;
	width: 120px;
	height: 36px;
	line-height: 36px;
	text-align: center;
	position: absolute;
	color:#000;
    bottom: 0;
    left: 50%;
    background: #fff;
    border-radius: 30px;
    transform: translateX(-50%);
	text-decoration:none;
	cursor: pointer;
} 



