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

/* --responsive------------------------------------------- */

/* 640pixel start */
@media screen and ( max-width : 640px ){

body{
	font-size : 100%;
}

}
/* 640pixel end */


/*オリジナルリセット*/
*{
	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 Mincho", YuMincho, "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;
	overflow: hidden;
}
#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: 379px;
  height: 96px;
  margin-top: -60px;
  margin-left: -189.5px;
  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: 3.6rem;
	padding-bottom: 14px;
	border-bottom: 2px solid #333;
	margin-bottom: 50px;
}
#idx_info .inner,footer{
		background-color: #fff;
}
.stripe{
	margin-top: -50px;
	margin-bottom: -50px;
	
}

.bgc{
	background-color: #E5E5E5;
	
}

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
transition: 1.0s ;	
}

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

.items{
	  max-width: 50%;
	  margin: 0 auto;
}

.title{
	  max-width: 25%;
	  margin: 0 auto;
}

.btn01{
	position: absolute;
	width: 28%;
	left: 8%;
    padding-top: 9%;	  
}
.btn02{
	position: absolute;
	width: 28%;
	left: 37%;
    padding-top: 9%;	  
}


/*インデックストップ画像*/
#idx .hero{
	background-image:url(../images/head2.jpg);
	height: 200px;
}
#idx .hero2{
	background-image:url(../images/products.jpg);
	height: 330px;
}

#idx h1{
	text-align: center;
	margin: auto;
	padding-top: calc(560px / 2 - 140px);
}

/*グロ―バルナビ*/
.gnav .inner{
	padding-top:10px;
	padding-left:10px;
	padding-bottom: 0px;
}
.gnav ul.main_nav{
	width: 99.81%;/*720px*/
	float: left;
}
.gnav ul.sns_nav{
	width: 0%;/*160px*/
	float: right;
}
.gnav li{
	height: 70px;
	line-height: 70px;
}
/*グロ―バルナビ、メイン*/

.gnav .main_nav li{
	float: left;
	font-size: 1.2rem;
	text-align: center;
	line-height: 2.5rem;
	
}
.gnav .main_nav li{
	width: 15.96%;/*100px*/
}
.gnav .main_nav li 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
	a:after{
	position: absolute;
	bottom: 0%;
	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
	a:hover:after{
	width: 80%;
}
/*.gnav .sns_nav a:hover:after{
	width: 80%;
}*/

/*グローバルナビ、スティッキー*/


#idx main{
	padding-top: 80px;
}
.mainvisual{
	margin-top: 80px;
}
.gnav{
	background-color: rgba(211,216,216,0.70);
	width: 100%;
	position: absolute;
	z-index: 10;
}
.gnav.sticky,#menu .gnav,#about .gnav{
	position: fixed;
	top: 0;
}

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

/*リード文*/
p.lead{
	font-weight: 800;
	text-align: center;
	line-height: 3.2rem;
	letter-spacing: 0.3rem;
	margin-top: 10px;
	margin-bottom: 30px;
}
p.lead .br_sp{
	display: none;
}



/*アバウト*/
#idx_about .inner{
	position: relative;
}
#idx_about p.image{
	position: relative;
	width: 100%;/*41.66%400px*/
/*	height: 300px;*/
	text-align: center;
	left:-20.7%;
}

#idx_about img{
	max-width:2000px;
	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: 1.6rem;
    font-weight: 800;
    margin-bottom: 20px;
	letter-spacing: 0.3rem
}
p.about_lead{
	font-weight: 800;
	text-align: center;
	width: 90%;
	padding-bottom: 20px;
	line-height: 3.1rem;
	letter-spacing: 0.2rem
} 

p.mail{
	font-weight: 700;
	text-align: center;
	width: 90%;
	padding-bottom: 20px;
	line-height: 2.1rem;
	letter-spacing: 0.2rem
} 


p.items1{
	position: absolute;
	width: 19%;
	padding-top: 26%;
	left: 9% 
}
p.items2{
	position: absolute;
	width: 19%;
	padding-top: 26%;
	left: 30% 
}
p.items3{
	position: absolute;
	width: 19%;
	padding-top: 26%;
	right: 30% 
}
p.items4{
	position: absolute;
	width: 19%;
	padding-top: 26%;
	right: 9% 
}


.tume{
	margin-top: -20%;
}

.red{
	color: red;
	font-size: 1.5rem;
	
}
/*#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;
}


/*メニュー画像*/
#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 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%;
}*/

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
		.pc {
			display: block !important;
		}
		.sp {
			display: none !important;
		}
		/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
		@media only screen and (max-width: 750px) {
			.pc {
				display: none !important;
			}
			.sp {
				display: block !important;
			}
		}

		/* display_switch
/*====================*/

		.display-sp-1100,
		.display-sp-1100-inline-block,
		.display-sp-960,
		.display-sp-600,
		.display-sp-320 {
			display: none;
		}

		@media screen and (max-width: 1100px) {
			.display-sp-1100 {
				display: block;
			}
			.display-sp-1100-inline-block {
				display: inline-block;
			}
			.display-pc-1100 {
				display: none;
			}
			.visible-pc-1100 {
				visibility: hidden;
			}
		}

		@media screen and (max-width: 960px) {
			.display-sp-960 {
				display: block;
			}
			.display-pc-960 {
				display: none;
			}
		}

		@media screen and (max-width: 600px) {
			.display-sp-600 {
				display: block;
			}
			.display-pc-600 {
				display: none;
			}
		}

		@media screen and (max-width: 500px) {
			.display-sp-500 {
				display: block;
			}
			.display-pc-500 {
				display: none;
			}
		}

		@media screen and (max-width: 320px) {
			.display-sp-320 {
				display: block;
			}
			.display-pc-320 {
				display: none;
			}
		}

		.fadeInUp {
			visibility: visible;
			animation-name: fadeInUp;
			animation-duration: 1.5s;
			animation-fill-mode: both;
		}

		@keyframes fadeInUp {
			0% {
				opacity: 0;
				transform: translateY(60px);
			}
			100% {
				opacity: 1;
				transform: translateY(0);
			}
		}



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

/*フッター、ページトップ*/
footer a{

	width: 100px;
}
footer .pagetop p{
	margin-top: 5px;
	margin-bottom:15px;
}
footer .pagetop img{
	margin-right: 0px;
	width: 221px;
	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;
}*/


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


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