/*clearfix*/
.clearfix:after {
  display: block;
  clear: both;
  content: "";
}

/*オリジナルリセット*/
*{
	list-style: none;
	box-sizing: border-box;
	text-decoration: none;
}
a{
	color: #333;
}

/*body {display:none;}*/

/*スマホ回転時の文字サイズ調節機能のオフ*/
html{
	-webkit-text-size-adjust: 100%;
}

/*フォント*/
html{
	font-size: 62.5%;
}
body{
	font-size: 1.4rem;
	font-family:  "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

/*ウェブフォント*/
p.more,#about h3{
	font-family: 'Nothing You Could Do', cursive;
	font-size: 1.4rem;
}

#loader,.gnav,.fat-nav,h2,
#idx_news .jump,#idx_menu li a,
.ttl,.menu_nav li,
/*#idx_info dt,
#idx_info dt:nth-of-type(-n+4)+dd,
#idx_info dd span,*/
footer .pagetop,
#menu h3,.english,.price,.scroll
{
	font-family: 'Oswald', sans-serif;
	font-weight:300;
}

/*ローダー*/
#all_wrap{
	opacity: 0;
}
#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 200;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -60px;
  margin-left: -100px;
  text-align: center;
  color: #333;
  z-index: 201;
}
#loader p{
	font-size: 1.6rem;
	letter-spacing: 0.16em;
	padding-top:20px;
}


/*要素の中央ぞろえ、背景*/
section{
	padding-top: 90px;
	padding-right: auto;
	padding-bottom: 90px;
	padding-left: auto;
}
.inner{
	max-width:960px;
	width: 100%;
	margin: 0 auto; 
	padding:60px 40px;
}

h2,.mainvisual h1.ttl{
	text-align: center;
	letter-spacing: 0.1em;
}
h2 span,.mainvisual h1.ttl span{
	display: inline-block;
	font-size: 3rem;
	padding-bottom: 14px;
	border-bottom: 0px solid #333;
	margin-bottom: 10px;
}
#idx_info .inner,footer{
		background-color: #fff;
}
.stripe{
	background: url(../images/bg_stripe.png);
}


/*画像を常に中央ぞろえで幅100％*/
.wrap{   
	width: 100%;
	background-size:cover;
	background-position: center center;
}

/*インデックストップ画像*/
/*#idx .hero{
	background-image:url(../images/hero.jpg);
	height: 560px;
}*/
#idx h1{
	text-align: center;
	margin: auto;
	/*padding-top: calc(560px / 2 - 140px);*/
}

/*グロ―バルナビ*/
.gnav .inner{
	padding-top:0px;
	padding-bottom: 0px;
}
.gnav ul.main_nav{
	width: 81.81%;/*720px*/
	float: left;
}
.gnav ul.sns_nav{
	width: 18.18%;/*160px*/
	float: right;
}
.gnav li{
	height: 70px;
	line-height: 70px;
}
/*グロ―バルナビ、メイン*/
.gnav .main_nav li:first-child{
	margin-right: 5.68%;/*50px*/
	width: 31.81%;/*230+50px*/
	min-width:30%;
}
.gnav .main_nav li:first-child img{
	width: 100%;
}
.gnav .main_nav li:nth-child(-n+5){
	float: left;
	font-size: 1.8rem;
	text-align: center;
}
.gnav .main_nav li:nth-child(n+2){
	width: 11.36%;/*100px*/
	margin-right: 15px;
}
.gnav .main_nav li:nth-child(n+2) a{
	letter-spacing: 0.16em;
}
/*グロ―バルナビ、SNS*/
.gnav .sns_nav li{
	float: right;
	margin-left: 10px;
}
.gnav .sns_nav i{
	font-size: 2rem;
	vertical-align: middle;
	padding: 0 10px;
}
.gnav li a{
	display: block;
}
/*グローバルナビ、ホバー時*/
.gnav a{
	position: relative;
}
.gnav .main_nav li:nth-child(n+2):nth-child(-n+5) a:after{
	position: absolute;
	bottom: 25%;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #666;
	transition: 0.4s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
/*.gnav .main_nav li:first-child a:hover:after{
	width: 100%;
}*/
.gnav .main_nav li:nth-child(n+2):nth-child(-n+5) a:hover:after{
	width: 70%;
}
/*.gnav .sns_nav a:hover:after{
	width: 80%;
}*/

/*グローバルナビ、スティッキー*/
#idx main{
	padding-top: 70px;
}
.mainvisual{
	margin-top: 70px;
}
.gnav{
	background-color: rgba(255,255,255,0.9);
	width: 100%;
	position: absolute;
	z-index: 10;
}
.gnav.sticky,#menu .gnav,#about .gnav{
	position: fixed;
	top: 0;
}

/*グローバルナビ、メディアクエリ*/
.sp_gnav,.hamburger{
	display: none;
}

/*リード文*/
p.lead{
	text-align: center;
	line-height: 3rem;
	margin-top: 20px;
	margin-bottom: 40px;
}
p.lead .br_sp{
	display: none;
}

/*アバウト*/
#idx_about .inner{
	position: relative;
}
#idx_about p.image{
	position: absolute;
	width: 41.66%;/*41.66%400px*/
/*	height: 300px;*/
	left: 0;
	text-align: center;
}
#idx_about img{
	width: 100%;
}
#idx_about .box_white{
	margin-left: 100px;
	margin-top: -60px;
	margin-bottom: -60px;
	padding-top: 60px;
	padding-left: 320px;/*39.02%320px*/
	width: 820px;/*93.18%820px*/
	height: 430px;
	background-color: #fff;
}
#idx_about h3{
    font-size: 2rem;
    font-weight: 500;
    margin-bottom: 20px;
}
p.about_lead{
	width: 88%;
	padding-bottom: 20px;
	line-height: 2.6rem;
} 
/*#idx_about li{
	list-style:disc; 
	line-height: 3rem;
	padding-left: 1em;
  	text-indent: -1em;
  	list-style-position: inside;
}
#idx_about li span{
	line-height: 2rem;
	vertical-align: top;
}*/

/*アバウトreadmore*/
#idx_about p.more{
	text-align: right;
	font-size: 1.6rem;
}
#idx_about .more i{
	margin-right: 10px;
	padding-left: 5px;
}
#idx_about p.more a{
	display: inline-block;
	position: relative;
	width: 120px;
	border-bottom: 1px solid #333;
	padding-right: 20px;
	padding-bottom: 5px;
	margin-right: 40px;
	-webkit-transition:all 0.3s;
    transition:all 0.2s;
}
#idx_about p.more a:before{
	content: "";
    width: 120px;
    height: 1px;
    position: absolute;
    border-bottom: 1px dotted #333;
    bottom: -5px;
    left: 4px;
    -webkit-transition:all 0.2s;
    transition:all 0.2s;
}
#idx_about p.more a:hover{
	padding-top: 3px;
	padding-right: 17px;
	margin-left: 4px;
	margin-bottom: -4px;
}
#idx_about p.more a:hover:before{
	bottom: -1px;
	width: 116px;
}

/*ニュース*/
#idx #idx_news{
	padding-top: 30px;
	padding-bottom: 30px;
}

/*ニュース、インスタメディアクエリ*/
#pc_tb{
	display: block;
}
#sp{
	display: none;
}
#idx_news p{
	display: none;
}

/*ニュース、アイフレーム上空に空箱*/
#idx_news .inner{
	position: relative;
}
#idx_news span.base {
    display: block;
    /*「インナー全体」-「インナーの左右パディング」+「iframeの右端のパディング」*/
    width: calc(100% - 80px + 20px);
    /*「インナー全体」-「インナーの上下パディング」-「h2のheigit」-「下パディング」-「インスタ文章領域」*/
    height: calc(100% - 120px - 102px - 20px - 128px);
    position: absolute;
}
/*ニュース、さらに上空にa要素*/
#idx_news span.base a {
    display: block;
	float: left;
	 /*3分の1-右パディング*/
	width: calc(33% - 20px);
	height: 100%;
	margin-right: 20px;
	transition: 0.2s;
	text-align: center;
}

/*ニュース、ホバー時の前始末*/
#idx_news .news_link{
	opacity: 0;
	height: 100%;
	color: #fff;
	background-color: rgba(51,51,51,0.6);
	/*インスタアイコン50px+下マージン10px+文字27px*/
	padding-top:calc(50% - (50px + 10px + 27px) / 2) ; 
}
#idx_news span .icon_insta i{
	font-size: 5rem;
	margin-bottom: 1rem;
}
/*ニュース、ホバー、＞の調整*/
#idx_news i{   
	font-size: 2.5rem;
	margin-right: 5px;
}
/*ニュース、ホバー、文字調整*/
#idx_news span .jump{
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 0.1em;
}
/*
.notes2{
	text-align: center;
	padding: 100px;
}
*/


/*メニュー画像*/
#idx_menu{
	background-image:url(../images/menu_bg01.jpg);
	height: 600px;
}
/*メニュー*/
#idx #idx_menu{
	padding-top: 30px;
}
#idx_menu h2 span{
	color: #fff;
	border-color: #fff;
}
/*#idx_menu ul{
	margin-right: -40px;
	margin-left: -40px;
}*/
#idx_menu li{
	float: left;
	width: 33.33%;
	height: 320px;
}
/*メニュー、a要素のクリック範囲*/
#idx_menu li a{
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 400;
	letter-spacing: 0.24em;
	text-shadow: 0 0 10px #000;
}

/*メニュー、枠*/
#idx_menu span.box_move{
	position: absolute;
	display: block;
	top:43.75%;/*140px÷320px*/
	left:21.87%;/*70px÷320px*/
	width: 56.25%;/*180px÷320px*/
	height: 40px;
	line-height: 3.2rem;
	border: 3px solid #fff;
}

/*インフォ*/
#idx_info{
	padding-top:150px; 
}
#idx_info dl{
	width: 620px;
	margin: 0 auto;
	margin-bottom: 10px;
}
#idx_info dt{
	float: left;
	clear: left;
	letter-spacing: 0.2em;
	text-align: right;
	width: 130px;
	height: 40px;
	line-height: 40px;
/*	border-right: 1px dotted #333;
	padding-right: 24px;*/
}
#idx_info dd{
	font-size: 1.6rem;
	height: 40px;
	line-height: 40px;
	padding-left: 154px;
}

#idx_info .openig{
	font-size: 1.2rem;
	line-height: 1rem;
	letter-spacing: 0;
}


#idx_info dd i{
	padding-right: 6px;
}
#idx_info dd a{
	border-bottom: 1px solid #666;
}
#idx_info .br_sp{
	display: none;
}
/*住所だけ行高く*/
#idx_info dl dt:nth-of-type(3n),#idx_info dt:nth-of-type(3n)+dd{
	height: 72px;
}
/*住所の英語の位置調整*/
#idx_info dd span.address_english{
   font-size: 1.2rem;
   display: block;
	line-height: 16px;
}
/*英語だけカーニング*/
#idx_info .open_close dd,
#idx_info dt:nth-of-type(-n+2)+dd{
	letter-spacing: 0.16em;
}
/*マップボタン、マップ*/
#idx_info .map_more{
	margin-bottom: 20px;
}
#idx_info .map_more a {
    display: block;
    width: 180px;
    padding: 5px 0;
    margin: 0 auto;
    background: #111;
    border-radius: 35px;
    text-align: center;
    color: #fff;
    transition: 0.2s;
}
#idx_info .map_more a:hover {
	opacity: 0.7;
}
#idx_info #map{
	margin: 0 auto;
	width: 77.27%;/*680px*/
	height: 420px;
}
/*	margin: 0 auto;
	width: 77.27%;/*680px*/
/*	position: relative;*/
/*	padding-top: 61.76%;/*420px*/
/*	filter: sepia(10%);*/

/*#idx_info .map iframe{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}*/


/*フッター*/
footer .inner{
	text-align: center;
}
footer .pagetop{
	margin-bottom: 100px;
}

/*フッター、ページトップバナナ*/
footer a{
	display: inline-block;
	width: 100px;
}
footer .pagetop p{
	margin-top: 5px;
	margin-bottom:15px;
}
footer .pagetop img{
	margin-right: 0px;
	width: 74px;
	height: 56px;
}
/*footer .pagetop:after{
	content: "";
	display: inline-block;
	margin-right: 25px;
	width: 50px;
	height: 50px;
	background-image: url(../images/pagetop.svg);
	background-repeat: no-repeat;
	background-size: contain;
}*/

/*バナナのアニメ(ページトップ、ローダー)*/
.animated { 
    animation-duration: 2s; 
    animation-fill-mode: both; 
    animation-timing-function: ease-in-out; 
    animation-iteration-count:infinite; 
} 
@keyframes swing { 
	0% { transform: rotate(20deg); } 
    50% { transform: rotate(-20deg); } 
    100% { transform: rotate(20deg); } 
}     
.swing { 
    transform-origin: top center; 
    animation-name: swing; 
}

/*コピーライト*/
footer small p{
	margin-bottom: 10px;
	font-size: 1rem;
/*	letter-spacing: 0.3em;*/
}


/***************************************/
/*メニューページ*/


