@charset "UTF-8";
/*
	BASE
*******************************/
/*
font-family: 'Kosugi Maru', sans-serif;
font-family: 'Lato', sans-serif;
font-family: 'M PLUS 1p', sans-serif;
*/
* {
	font-family: 'M PLUS 1p', 'Lato',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,'Hiragino Kaku Gothic Pro',Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
	margin: 0;
	padding: 0;
}
.en {
	font-family: 'Lato', sans-serif;
}
.jp {
	font-family: 'Kosugi Maru', sans-serif;
}

html {
	font-size:62.5%;
	line-height:1em;
}
body {
	font-size:1.6rem;
	background-color:#ffffff;
}

img {
	-webkit-backface-visibility: hidden;
	vertical-align:bottom;
	line-height:0;
}


p,th,td,dt,dd,li,h1,h2,h3,h4,h5,h6 { color:#333333;}

a,
a:link,
a:visited {
	color:#333333;
	text-decoration:none;
	outline:none;
	border:none;
}
a:hover {
	color:#666666;
	text-decoration:none;
}

a img {
	outline:none;
	border:none;
	-webkit-backface-visibility: hidden;
}
area {
	border:none;
	outline:none;
}

.clear { clear:both;}

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

/*//////////////////////////////////////////////////////////////////////////*/



/*
	BASE LAYOUT
******************/

body {
	min-width:1024px;
}

#main {
	width:100%;
	margin:0;
	padding:0;
}
#main {
	width:100%;
	margin:0 auto;
	padding:0;
}
#main p {
	font-size:1.8rem;
	line-height: 2em;
	margin: 0 0 1em;
	padding:0;
	text-align:justify;
}


/*//////////////////////////////////////////////////////////////////////////*/


/*基本：左右配置　上下センター　折り返しなし*/
.fbox {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
}

/*折り返しなし*/
.fbox.nowrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

/*左寄せ*/
.fbox.bxstart {
  -webkit-box-pack: start;
     -ms-flex-pack: start;
   justify-content: flex-start;
}

/*右寄せ*/
.fbox.bxend {
  -webkit-box-pack: end;
     -ms-flex-pack: end;
   justify-content: flex-end;
}

/*中央寄せ*/
.fbox.bxcenter {
  -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}

/*上寄せ*/
.fbox.alstart {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
	align-content: flex-start;
}

/*下寄せ*/
.fbox.alend {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
	align-content: flex-end;
}

/*上下中央*/
.fbox.alcenter {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	align-content: center;
}

/*上下端*/
.fbox.albt {
  -ms-flex-line-pack: justify;
       align-content: space-between;
}

/*上下均等*/
.fbox.linedist {
  -ms-flex-line-pack: distribute;
       align-content: space-around;
}



/*子要素に設定　順番を1番目に*/
.pos0 {
  -webkit-box-ordinal-group: 1;
             -ms-flex-order: -1;
                      order: -1;
}

/*//////////////////////////////////////////////////////////////////////////*/

/*
	Contents LAYOUT
******************/
.wrap {
	width:100%;
	padding:60px 0;
	text-align:center;
}

.contents {
	width:calc(100% - 60px);
	max-width:1100px;
	margin:0 auto;
	box-sizing:border-box;
	text-align:left;
}
#contents.p404 h1 {
	font-size:1.4em;
	margin-bottom:1em;
	text-align:center;
}
#main #contents.p404 p {
	text-align:center;
}

.wp-pagenavi {
	text-align:center;
	margin: 30px 0;
}

nav > div.menu-mainmenu-container {
	text-align:center;
}
nav#topnav > div.menu-mainmenu-container {
	padding:30px 0;
	box-sizing:border-box;
	border-top:5px solid #FFD21A;
}
nav > div.menu-mainmenu-container ul {
    width:calc(100% - 20px);
    max-width:1200px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
}
nav#bottomnav> div.menu-mainmenu-container {
	width:100%;
	border-top:5px solid #FFD21A;
	box-sizing:border-box;
	padding:10px 0;
	background:rgba(255,255,255,.9);
	position:fixed;
	left:0;
	bottom:-200px;
	transition:.5s;
}
nav#bottomnav> div.menu-mainmenu-container.show {
	bottom:0;
}
nav#bottomnav > div.menu-mainmenu-container ul {
    max-width: 640px;
}
nav#bottomnav > div.menu-mainmenu-container ul li a {
	font-size: 1.4rem;
}
nav#bottomnav > div.menu-mainmenu-container ul li:last-child a {
	letter-spacing:-0.05em;
}
nav > div.menu-mainmenu-container ul li {
    width:calc(100%/6 - 10px);
    position:relative;
    background:#F5F6F7;
    border-radius:50%;
}
nav > div.menu-mainmenu-container ul li::before {
	content:'';
	display:block;
	padding-top:100%;
}
nav > div.menu-mainmenu-container ul li a {
	position:absolute;
	display:block;
	top:0;
	left:0;
	text-align:center;
	width:100%;
	height:100%;
	box-sizing:border-box;
	padding-top:70%;
	font-size:1.8rem;
	font-weight:600;
	color:#667489;
	background-repeat:no-repeat;
	background-size:60% auto;
	background-position:center top 25%;
}
nav > div.menu-mainmenu-container ul li:nth-child(1) a {
	background-image:url(../img/common/icon1.png);
}
nav > div.menu-mainmenu-container ul li:nth-child(2) a {
	background-image:url(../img/common/icon2.png);
}
nav > div.menu-mainmenu-container ul li:nth-child(3) a {
	background-image:url(../img/common/icon3.png);
}
nav > div.menu-mainmenu-container ul li:nth-child(4) a {
	background-image:url(../img/common/icon4.png);
}
nav > div.menu-mainmenu-container ul li:nth-child(5) a {
	background-image:url(../img/common/icon5.png);
	background-size:50% auto;
}
nav > div.menu-mainmenu-container ul li:nth-child(6) a {
	background-image:url(../img/common/icon6.png);
}

.contents a.more {
	font-family: 'Lato', sans-serif;
	font-size:1.8rem;
	line-height:1.5;
	font-weight:400;
	width:4.5em;
	box-sizing:border-box;
	padding-right:1em;
	display:block;
	border-bottom:1px solid #7C879B;
	position:relative;
	color:#7C879B;
}
.contents a.more::after {
	content:'';
	display:block;
	width:1px;
	height:1em;
	background-color:#7C879B;
	position:absolute;
	right:0;
	bottom:0;
	transform:rotate(-45deg);
	transform-origin:bottom right;
}
.contents a.more:hover {
	color: #333333;
}

.paging {
	width:100%;
	box-sizing:border-box;
	padding:.5em;
	font-size:1.6rem;
}
.paging > div {
    width:6em;
}
.paging > a {
	width:6em;
	margin:0 3em;
	text-align:center;
}

.sm-hamburger {
	background:#FFBA00!important;
	color:#ffffff;
	padding:10px!important;
	text-align:center;
	border-radius:8px 0 0 8px;
}
.sm-nav-list {
	max-width:800px;
	margin:0 auto !important;
}
.sm-nav-list li.w100 {
	width:100%!important;
}

.reservewrap {
    padding-top:10px;
    text-align:center;
}
#main .reservewrap p {
	font-size:1.8rem;
	text-align:center;
	margin-bottom:.5em;
	border:3px solid #FFBA00;
	display:inline-block;
	line-height:1;
	box-sizing:border-box;
	padding:.3em .7em;
	border-radius:6px;
}
#main .reservewrap p a {
	display:inline-block;
	font-size:2.2rem;
	font-family: 'Lato', sans-serif;
	background:url(../img/common/icon_tel.png) no-repeat left center;
	background-size:auto 90%;
	box-sizing:border-box;
	padding-left:1.2em;
}
#main .reservewrap > a {
	font-size:1.8rem;
	display:block;
	background:#FFBA00;
	width:16em;
	margin:0 auto;
	line-height:2;
	border-radius:6px;
	color:#ffffff;
	font-weight:500;
}
#main .reservewrap > a:hover {
	opacity:.8;
}
#main .reservewrap > a .svg-inline--fa {
	margin-left:.3em;
}

@media screen and (max-width:640px){
	
body {
	min-width:100%;
}

#main p {
	font-size:1.5rem;
	line-height: 1.8em;
}
	
a:hover {
	color:#666666;
}
	
.wrap {
	padding:30px 0 15px;
}

.contents {
	width:calc(100% - 40px);
}
	
nav#bottomnav {
	display:none;
}

nav > div.menu-mainmenu-container ul {
    width:calc(100% - 20px);
}
nav > div.menu-mainmenu-container ul li {
    width:calc(100%/3 - 5px);
}
nav > div.menu-mainmenu-container ul li:nth-child(-n+3){
	margin-bottom:5px;
}
nav > div.menu-mainmenu-container ul li a {
	background-size:55% auto;
	padding-top:65%;
	font-size:4vw;
}
nav > div.menu-mainmenu-container ul li.menu5 a {
	background-size:48% auto;
}
nav > div.menu-mainmenu-container ul li.menu6 a {
	font-size:3.8vw;
	letter-spacing:-0.05em;
}

nav#topnav > div.menu-mainmenu-container {
	padding:10px 0;
	border-top:3px solid #FFD21A;
}
nav#topnav > div.menu-mainmenu-container ul {
    width:calc(100% - 0);
}
nav#topnav > div.menu-mainmenu-container ul li {
    width:calc(100%/3 - 3px);
	border-radius:6px;
}
nav#topnav > div.menu-mainmenu-container ul li::before {
    padding-top: 66%;
}
nav#topnav > div.menu-mainmenu-container ul li:nth-child(-n+3){
	margin-bottom:3px;
}
nav#topnav > div.menu-mainmenu-container ul li a {
	background-size:35% auto;
	padding-top:45%;
	font-size:4vw;
}
nav#topnav > div.menu-mainmenu-container ul li.linksoon a {
	padding-top:33%;
}
nav#topnav > div.menu-mainmenu-container ul li.menu5 a {
	background-size:36% auto;
}
nav#topnav > div.menu-mainmenu-container ul li.menu6 a {
	font-size:3.8vw;
	letter-spacing:-0.05em;
}

nav#spnav > div.menu-mainmenu-container ul li a {
	font-size:3.4vw;
}

.paging {
	font-size:1.4rem;
}
.paging > a {
	width:6em;
	margin:0 1em;
}

.pc {
	display:none;
}

#main .reservewrap p {
	font-size:1.5rem;
}
#main .reservewrap p a {
	font-size:1.8rem;
}
#main .reservewrap > a {
	font-size:1.5rem;
}
#main .reservewrap > a:hover {
	opacity:.8;
}
#main .reservewrap > a .svg-inline--fa {
	margin-left:.3em;
}

}

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

}

.sm-wrapper-loading {
	display:none;
}

.linksoon {
	opacity:.66;
	pointer-events:none;
	background-color:#cccccc!important;
	border-color:#cccccc!important;
}
.linksoon .svg-inline--fa {
	display:none;
}
.linksoon > span {
	font-size:1.1rem;
	color:#cc0000;
	display:inline-block;
	margin-left:.2em;
}
nav > div.menu-mainmenu-container ul li.linksoon > a {
    padding-top:60%;
    opacity:.66;
}
li.linksoon {
	background-color:#dadada!important;
}
.linksoon > a::before {
	content:'準備中';
	display:block;
	width:100%;
	font-size:1.1rem;
	color:#cc0000;
	display:inline-block;
	margin-left:.2em;
}
