@charset "utf-8";

/*------------------------------------------------
   Reset
------------------------------------------------*/

*{
	margin:0;
	padding:0;
}

#table{
	font-size:inherit;
}

th{
	text-align:left;
	font-weight:normal;
}

img{
	border:0;
}

a{
	transition: all 0.3s linear 0s;
	-webkit-transition: all 0.3s linear 0s;
	-moz-transition: all 0.3s linear 0s;
	color:#4d4d4d;
}

a:hover{
	opacity:0.7;
}

br.sp{
	display:none;
}

br.pc{
	display: inline;
}

/*------------------------------------------------
   Layout
------------------------------------------------*/

html{
	width:100%;
	height:100%;
	font-family: Courier, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 62.5%;
	line-height : 1.6;
	color:#4d4d4d;
	background-color:#f8f8f8;
}

html.wf-active {
  visibility: visible;
}

body{
	width:100%;
	height:100%;
	font-size:1.6rem;
	-webkit-text-size-adjust: 100%;
}

h1,h2,h3,h4,h5{
	font-size:1.6rem;
}

li{
	list-style:none;
	padding:0;
	margin:0;
}

#wrp{
	margin:0 auto;
	text-align:left;
	position:relative;
	height:100%;
}

/* header */

header .inr{
	width:1080px;
	margin:0 auto;
	padding:0 0 20px;
	position:relative;
}

header .inr .logo-set h1{
	display:inline-block;
	line-height:1;
	margin:27px 0 18px;
}

header .inr .logo-set h1 a{
	display:block;
	width:160px;
	height:108px;
	background-image:url(../img/logo-main.png);
	background-size:160px 108px;
	background-repeat:no-repeat;
	background-position:left top;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

header .inr .logo-set p{
	line-height:1.9;
	font-size:1.1rem;
}

header .inr .logo-set p strong{
	font-family:Helvetica, sans-serif;
	font-size:1.1rem;
	line-height:1.9;
	font-weight:normal;
}

header .inr nav{
	position:absolute;
	right:0;
	bottom:20px;
}

header .inr nav ul{
	font-size:0;
}

header .inr nav ul li{
	display:inline-block;
	line-height:1.9;
	text-align:right;
	font-size:1.4rem;
	margin-right:40px;
	letter-spacing:0.1em;
}

header .inr nav ul li:last-child{
	margin-right:0;
}

header .inr nav ul li a{
	color:#afafaf;
	text-decoration:none;
}

header .inr nav ul li a:hover,
header .inr nav ul li .current{
	color:#000000;
	opacity:1;
}

header .inr .sns-nav{
	position:absolute;
	top:27px;
	right:0;
}

header .inr .sns-nav ul{
	font-size:0;
	text-align:right;
}

header .inr .sns-nav ul li{
	display:inline-block;
	text-align:right;
	font-size:1rem;
	width:18px;
	height:18px;
	margin-right:15px;
}

header .inr .sns-nav ul li:last-child{
	margin-right:0;
}

header .inr .sns-nav ul li a{
	display:block;
	width:18px;
	height:18px;
	background-position:center center;
	background-size:  auto 100%;
	background-repeat:no-repeat;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

header .inr .sns-nav ul .fb a{
	background-image: url(../img/sns-ico-fb.png);
}

header .inr .sns-nav ul .tw a{
	background-image: url(../img/sns-ico-tw.png);
}

header .inr .sns-nav ul .in a{
	background-image: url(../img/sns-ico-in.png);
}

/* pc-fixed-nav */


#pc-fixed-nav {
    width: 100%;
    height: 80px;
	padding:0 40px;
	box-sizing:border-box;
    background-color: rgba(0,0,0,0.8);
    color: #FFF;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    display: block;
    opacity: 0;
}

#pc-fixed-nav .inr{
	padding:30px 0 0;
	text-align:right;
	position:relative;
}

#pc-fixed-nav .inr .logo a{
	display:block;
	width:84px;
	height:57px;
	position: absolute;
	top:10px;
	left:0;
	background-image:url(../img/logo-sub.png);
	background-size:84px 57px;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#pc-fixed-nav .inr .logo p{
	color:#cecece;
	line-height:1.9;
	font-size:1.1rem;
	text-align:left;
	position: absolute;
	top:19px;
	left:105px;
	font-family:Helvetica, sans-serif;
}

#pc-fixed-nav nav{
	display:inline-block;
	text-align:right;
}

#pc-fixed-nav nav ul{
	font-size:0;
}

#pc-fixed-nav nav li{
	display:inline-block;
	font-size:1.4rem;
	margin-right:40px;
}

#pc-fixed-nav .sns-nav{
	display:inline-block;
	text-align:right;
}

#pc-fixed-nav .sns-nav ul{
	font-size:0;
}

#pc-fixed-nav .sns-nav ul li{
	display:inline-block;
	font-size:1.3rem;
	margin-right:10px;
}

#pc-fixed-nav .sns-nav ul li:last-child{
	margin-right:0;
}

#pc-fixed-nav nav li a{
	color:#fff;
	text-decoration:none;
}

#pc-fixed-nav .sns-nav ul li a{
	display:block;
	width:15px;
	height:15px;
	background-position:center center;
	background-size:  auto 100%;
	background-repeat:no-repeat;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#pc-fixed-nav .sns-nav ul .fb a{
	background-image: url(../img/sns-ico-fb-wh.png);
}

#pc-fixed-nav .sns-nav ul .tw a{
	background-image: url(../img/sns-ico-tw-wh.png);
}

#pc-fixed-nav .sns-nav ul .in a{
	background-image: url(../img/sns-ico-in-wh.png);
}


/* ftr-section */

.ftr-section{
	background-color:#f1f1f1;
}

.ftr-section .inr{
	width:1080px;
	margin:0 auto;
	padding-bottom:45px;
}


.ftr-section .inr .ftr-bnr{
	padding-top:67px;
	margin:0 auto 67px;
}

.ftr-section .inr .ftr-bnr ul{
	font-size:0;
	
}

.ftr-section .inr .ftr-bnr ul li{
	display:inline-block;
	width:528px;
	height:auto;
}

.ftr-section .inr .ftr-bnr ul li img{
	width:100%;
	height: auto;
}
	

.ftr-section .inr .ftr-bnr ul li:first-child{
	margin-right:24px;
}

/* footer */

footer{
	
}

footer nav ul{
	font-size:0;
	text-align:center;
	margin-bottom:60px;
}

footer nav ul li{
	font-size:1.4rem;
	letter-spacing:0.1em;
	margin-right:45px;
	display:inline-block;
}

footer nav ul li:last-child{
	margin-right:0;
}


footer nav ul li a{
	text-decoration:none;
	color:#4a4a4a;
}


footer .sns-nav{
	padding-bottom:50px;
	border-bottom:#d0d0d0 solid 1px;
	margin-bottom:40px;
	text-align:center;
}

footer .sns-nav ul{
	font-size:0;
	text-align: center;
}

footer .sns-nav ul li{
	display:inline-block;
	text-align: center;
	font-size:1rem;
	width:18px;
	height:18px;
	margin-right:25px;	
}

footer .sns-nav ul li:last-child{
	margin-right:0;
}

footer .sns-nav ul li a{
	display:block;
	width:18px;
	height:18px;
	background-position:center center;
	background-size:  auto 100%;
	background-repeat:no-repeat;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

footer .sns-nav ul .fb a{
	background-image: url(../img/sns-ico-fb.png);
}

footer .sns-nav ul .tw a{
	background-image: url(../img/sns-ico-tw.png);
}

footer .sns-nav ul .in a{
	background-image: url(../img/sns-ico-in.png);
}

footer .cr-wrp{
	margin:0 auto;
	width:1080px;
	text-align:center;
}

footer small{
	font-family:Helvetica, sans-serif;
	font-size:1.1rem;
}

/* to-top */

.to-top{
	position: fixed;
	bottom:30px;
	right:30px;
	width:11px;
	height:33px;
	z-index:3;
}


/**/

.page-ttl-section{
	background-color:#e0e0e0;
	overflow:hidden;
	margin-bottom:150px;
}

.page-ttl-wrp{
	display:table;
	width:1080px;
	height:177px;
	margin:0 auto;
}

.page-ttl-wrp h2{
	display:table-cell;
	vertical-align:middle;
	text-align:right;
	font-size:3.2rem;
	color:#fff;
	letter-spacing:0.1em;
	font-style:italic;
	font-weight:normal;
	line-height:1;
	position:relative;
}

.page-ttl-wrp p{
	display:inline-block;
	position:relative;
}

.page-ttl-wrp h2 span:after{
	content:"";
	display:block;
	width:9999px;
	height:1px;
	background-color:#fff;
	position:absolute;
	bottom:5px;
	left:calc(100% - 0.7em);
}

/* .intro */

.intro{
	margin-bottom:150px;
}

/**/

.sp-menu-btn {
		display: none;
}

.sp-modal-menu{
	display:none;
}


/*------------------------------------------------
   Default
------------------------------------------------*/

/* float */
.clearfix:after{
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}
.clearfix{
display:inline-block;
}
/* Hides from IE-mac \*/
*html .clearfix{
height:1%;
}
.clearfix{
display:block;
}
/* End hide from IE-mac */

.fleft{float:left;}
.fright{float:right;}

/* text */
.lh01{line-height:1;}
.lh02{line-height:1.1;}
.lh03{line-height:1.2;}
.lh04{line-height:1.3;}
.lh05{line-height:1.4;}
.lh06{line-height:1.5;}
.lh07{line-height:1.6;}
.lh08{line-height:1.7;}
.lh09{line-height:1.8;}
.lh10{line-height:1.9;}
.lh11{line-height:2;}

.ttl01{font-size:14px;font-weight:bold;}
.ttl02{font-size:16px;font-weight:bold;}

.blt{font-weight:bold;}
.nlt{font-weight:normal;}

.mint{font-size:10px;}
.bigt{font-size:14px;}

.alignl{text-align:left;}
.alignc{text-align:center;}
.alignr{text-align:right;}

.valignt{vertical-align:top;}
.valignm{vertical-align:middle;}
.valignb{vertical-align:bottom;}

.black01{color:#000000;}
.glay01{color:#333333;}
.glay02{color:#666666;}
.glay03{color:#999999;}
.blue01{color:#003366;}
.blue02{color:#006699;}
.blue03{color:#0099cc;}
.red01{color:#E54C3E;}
.red02{color:#990000;}
.red03{color:#CC3300;}
.orange01{color:#FF9900;}
.orange02{color:#FF6600;}
.green01{color:#339900;}
.green02{color:#006600;}

.ct01{color:#000;}
.ct02{color:#000;}
.ct03{color:#000;}

/* margin */
.mat01{margin-top:5px;}
.mat02{margin-top:10px;}
.mat03{margin-top:15px;}
.mat04{margin-top:20px;}
.mat05{margin-top:25px;}
.mat06{margin-top:30px;}
.mat07{margin-top:35px;}
.mat08{margin-top:40px;}
.mat09{margin-top:45px;}
.mat10{margin-top:50px;}

.mar01{margin-right:5px;}
.mar02{margin-right:10px;}
.mar03{margin-right:15px;}
.mar04{margin-right:20px;}
.mar05{margin-right:25px;}
.mar06{margin-right:30px;}
.mar07{margin-right:35px;}
.mar08{margin-right:40px;}
.mar09{margin-right:45px;}
.mar10{margin-right:50px;}

.mab01{margin-bottom:5px;}
.mab02{margin-bottom:10px;}
.mab03{margin-bottom:15px;}
.mab04{margin-bottom:20px;}
.mab05{margin-bottom:25px;}
.mab06{margin-bottom:30px;}
.mab07{margin-bottom:35px;}
.mab08{margin-bottom:40px;}
.mab09{margin-bottom:45px;}
.mab10{margin-bottom:50px;}

.mal01{margin-left:5px;}
.mal02{margin-left:10px;}
.mal03{margin-left:15px;}
.mal04{margin-left:20px;}
.mal05{margin-left:25px;}
.mal06{margin-left:30px;}
.mal07{margin-left:35px;}
.mal08{margin-left:40px;}
.mal09{margin-left:45px;}
.mal10{margin-left:50px;}


/* padding */
.pat01{padding-top:5px;}
.pat02{padding-top:10px;}
.pat03{padding-top:15px;}
.pat04{padding-top:20px;}
.pat05{padding-top:25px;}
.pat06{padding-top:30px;}
.pat07{padding-top:35px;}
.pat08{padding-top:40px;}
.pat09{padding-top:45px;}
.pat10{padding-top:50px;}

.par01{padding-right:5px;}
.par02{padding-right:10px;}
.par03{padding-right:15px;}
.par04{padding-right:20px;}
.par05{padding-right:25px;}
.par06{padding-right:30px;}
.par07{padding-right:35px;}
.par08{padding-right:40px;}
.par09{padding-right:45px;}
.par10{padding-right:50px;}

.pab01{padding-bottom:5px;}
.pab02{padding-bottom:10px;}
.pab03{padding-bottom:15px;}
.pab04{padding-bottom:20px;}
.pab05{padding-bottom:25px;}
.pab06{padding-bottom:30px;}
.pab07{padding-bottom:35px;}
.pab08{padding-bottom:40px;}
.pab09{padding-bottom:45px;}
.pab10{padding-bottom:50px;}

.pal01{padding-left:5px;}
.pal02{padding-left:10px;}
.pal03{padding-left:15px;}
.pal04{padding-left:20px;}
.pal05{padding-left:25px;}
.pal06{padding-left:30px;}
.pal07{padding-left:35px;}
.pal08{padding-left:40px;}
.pal09{padding-left:45px;}
.pal10{padding-left:50px;}

.paa01{padding:5px;}
.paa02{padding:10px;}
.paa03{padding:15px;}
.paa04{padding:20px;}


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

@media screen and (max-width: 767px) {
/* 767px以下用（タブレット／スマートフォン用）の記述 */	

	#pc-fixed-nav{
		display:none;
	}
	
	header nav{
		display:none;
	}
	
	header .sns-nav{
		display:none;
	}
	
	header .inr {
    width:100%;
	height:70px;
    padding: 0 20px;
    position: relative;
	overflow:hidden;
	box-sizing:border-box;
	}

	header .inr .logo-set h1 {
    margin: 10px 0 0;
	height:50px;
	width:74px;
	overflow:hidden;
	}
	
	header .inr .logo-set h1 a {
    display: inline-block;
    height: 50px;
	width:74px;
    background-image: url(../img/logo-main.png);
    background-size: 74px 50px;
    background-repeat: no-repeat;
    background-position: left center;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
	vertical-align:top;
	}
	
	header .inr .logo-set p {
		display: inline-block;
		font-size:1.0rem;
		vertical-align:top;
		transform: scale(0.6);
		transform-origin: left top;
		text-align:left;
		margin-top:27px;
		line-height: 2.0;
	}
	
	header .inr .logo-set p strong {
    font-family: Helvetica, sans-serif;
    font-size:1.0rem;
    line-height: 2.0;
	}

	.top-slider-wrp .inr .slider {
    height: 680px;
    width: 100%;
	}
	
	
.top-slider-wrp .inr {
    width:100%;
    height: 680px;
    overflow: hidden;
    margin: 0 auto;
    position: relative;
}

.top-slider-wrp .inr {
    width: 100%;
    height: 680px;
    overflow: hidden;
    margin: 0 auto;
    position: relative;

}


/* ftr-section */

.ftr-section{
	background-color:#f1f1f1;
}

.ftr-section .inr{
	width:100%;
	margin:0 auto;
	padding-bottom:45px;
}


.ftr-section .inr .ftr-bnr{
	padding:20px;
	margin:0 auto;
}

.ftr-section .inr .ftr-bnr ul{
	font-size:0;
	
}

.ftr-section .inr .ftr-bnr ul li{
	display:inline-block;
	width:100%;
}

.ftr-section .inr .ftr-bnr ul li img{
	width:100%;
}

.ftr-section .inr .ftr-bnr ul li:first-child{
	margin-right:0;
	margin-bottom:20px;
}

/* footer */

footer{}

footer nav ul{
	font-size:0;
	text-align:center;
	margin-bottom:30px;
}

footer nav ul li{
	font-size:1.4rem;
	letter-spacing:0.1em;
	margin-right:0;
	display:block;
	line-height:44px;
}

footer nav ul li:last-child{
	margin-right:0;
}


footer nav ul li a{
	text-decoration:none;
	color:#4a4a4a;
	display:block;
	height:100%;
	width:100%;
}


footer .sns-nav{
	padding-bottom:30px;
	border-bottom:#d0d0d0 solid 1px;
	margin-bottom:30px;
	text-align:center;
}

footer .sns-nav ul{
	font-size:0;
	text-align: center;
}

footer .sns-nav ul li{
	display:inline-block;
	text-align: center;
	font-size:1rem;
	width:18px;
	height:18px;
	margin-right:25px;	
}

footer .sns-nav ul li:last-child{
	margin-right:0;
}

footer .sns-nav ul li a{
	display:block;
	width:18px;
	height:18px;
	background-position:center center;
	background-size:  auto 100%;
	background-repeat:no-repeat;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

footer .cr-wrp{
	margin:0 auto;
	width:100%;
	text-align:center;
}

footer small{
	font-family:Helvetica, sans-serif;
	font-size:1.1rem;
}

/* to-top */

.to-top{
	position: fixed;
	bottom:30px;
	right:20px;
	width:33px;
	height:33px;
	text-align:center;
	z-index:3;
}

.to-top a{
	display:block;
	width:100%;
	height:100%;
}


/**/

.page-ttl-section{
	background-color:#e0e0e0;
	overflow:hidden;
	margin-bottom:35px;
}

.page-ttl-wrp{
	display:table;
	width:100%;
	height:80px;
	margin:0 auto;
}

.page-ttl-wrp h2{
	display:table-cell;
	vertical-align:middle;
	text-align: center;
	font-size:2.0rem;
	color:#fff;
	letter-spacing:0.1em;
	font-style:italic;
	font-weight:normal;
	line-height:1;
	position:relative;
}

.page-ttl-wrp p{
	display:inline-block;
	position:relative;
}

.page-ttl-wrp h2 span:after{
	content:"";
	display:block;
	width:9999px;
	height:1px;
	background-color:#fff;
	position:absolute;
	bottom:5px;
	left:calc(100% - 0.7em);
}


	/* SP　メニューボタン */
	
	.sp-menu-btn {
		position: fixed;
		top: 18px;
		right: 20px;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		cursor: pointer;
		z-index:101;
		display:block;
		
	}
	
	.sp-menu-btn span:after {
		display:inline-block;
		content:"";
		height:40px;
		width:40px;
		background-image: url(/common/img/sp-menu.svg);
		background-size: 50% auto;
		background-position: 50% 50%;
		background-repeat:no-repeat;
		background-color:rgba(248,248,248,0.8);
	}
	
	
	/* 開閉用ボタンがクリックされた時のスタイル */
	.open .sp-menu-btn span:after {
		display:inline-block;
		content:"";
		height:40px;
		width:40px;
		background-image:url(/common/img/sp-close.svg);
		background-size: 50% auto;
		background-position: 50% 50%;
		background-repeat:no-repeat;
		background-color:rgba(255,255,255,0);
		
	}
	
	.sp-modal-menu {
		position: fixed;
		display: table;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color:#000;
		-webkit-transition: all .5s;
		transition: all .5s;
		visibility: hidden;
		opacity: 0;
		z-index:101;
		text-align:center;
		vertical-align:middle;
	}
	
	.sp-modal-wrp{
		width:300px;
		height:485px;
		margin:0 auto;
		display: table-cell;
		text-align:center;
		vertical-align:middle;
		
		font-weight:bold;
	}
	
	#sp-modal-menu-logo{
		margin-bottom:10px;
	}
	
	.sp-modal-menu .sp-modal-menu-list-wrp{
		text-align:center;
		margin: 0 auto;
	}
	
	.sp-modal-menu ul {
		display: table;
		vertical-align: middle;
		text-align:center;
		font-size:0;
		margin:0 auto;
		width: 300px;
	}
	
	.sp-modal-menu li {
		width: 300px;
		height: 45px;
		line-height: 45px;
		margin: 0 auto;
		text-align: center;
		font-size:1.7rem;
		letter-spacing:1px;
		list-style-type:none;
	}
	
	.sp-modal-menu li.shop{
		margin-bottom:30px;
	}
	
	.sp-modal-menu li img{
		vertical-align:middle;
	}
	
	.sp-modal-menu li a{
		display:block;
		width:100%;
		height:100%;
		text-decoration: none;
		color:#ffffff;
	}
	
	/*
	.sp-modal-menu li a:before{
		content: "\f138";
		font-family: FontAwesome;
		color: #ffffff;
		font-size: 1.8rem;
		padding-right: 7px;
		vertical-align: baseline;
		display:inline;
	}
	*/
	
	.sp-modal-menu .ec-wrp h2{
		display:inline-block;
		font-size:1.7rem;
		font-weight:normal;
		padding-bottom:16px;
		margin-bottom:10px;
		letter-spacing:1px;
		position:relative;
	}

	.sp-modal-menu .ec-wrp h2:before {
	  content: '';
	  position: absolute;
	  left: 50%;
	  bottom: 0px;/*線の上下位置*/
	  display: inline-block;
	  width: 140px;/*線の長さ*/
	  height: 1px;/*線の太さ*/
	  -moz-transform: translateX(-50%);
	  -webkit-transform: translateX(-50%);
	  -ms-transform: translateX(-50%);
	  transform: translateX(-50%);/*位置調整*/
	  background-color: #999;/*線の色*/
	}
	
	.sp-modal-menu .ext a:before{
		content: url(/common/img/ico-blank-wh.png);
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: scale(0.6);
    transform: scale(0.6);
	}
	
	
	/* 開閉用ボタンがクリックされた時のスタイル */
	.open .sp-modal-menu {
		/*cursor: url(/common/img/close.svg),auto;*/
		color: #f0f0f0;
		-webkit-transition: all .5s;
		transition: all .5s;
		visibility: visible;
		opacity: 1;
		z-index:11;
	}
	



}