@charset "utf-8";
/* CSS Document */

/* PC　スマホ　切り替え
----------------------------------------------------*/

.sp-disp {
	display:none !important;
}
.pc-disp{
	display: block !important;
}
@media only screen and (max-width: 767px) {
	.sp-disp {
		display: block !important;
	}
	.pc-disp{
		display: none !important;
	}
}

/* 共通部分
----------------------------------------------------*/
.img-w100percent{
	width:100%;
}
.sec-wrapper{
	padding:0 20px !important;
}
.sec-border{
	margin:30px 0;
	border-bottom:1px solid #979797;
}
@media only screen and (max-width: 767px) {
	.sp-img-100percent{
		width:100%;
	}
}


/*  ========================= ボタン */
.button {
	width: 470px;
	height: 60px;
	margin:20px auto 0 auto;
	outline: none;
	overflow:hidden;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	font-size:12px; font-size:1.2rem;
	border-radius:10px;
}
.button a{
	display:block;
	width: 470px;
	height: 60px;
	background:url(../img/common/button_arrow.png) no-repeat 15px 50% #d70c19;
	color:#fff;
	-webkit-transition: all .2s;
	transition: all .2s;
}
.button a:hover{
	background:url(../img/common/button_arrow.png) no-repeat 18px 50% #000000;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button {
	position: relative;
	-webkit-perspective: 470px;
	perspective: 470px;
}
.button span {
	display: block;
	position: absolute;
	width: 470px;
	height: 55px;
	text-align: center;
	line-height: 60px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	pointer-events: none;
}
.button span:nth-child(1) {
	margin-top:0;
	-webkit-transition: all .2s;
	transition: all .2s;
	z-index:1;
}
.button span:nth-child(2) {
	margin-top:55px;
	-webkit-transition: all .2s;
	transition: all .2s;
	z-index:1;
}
.button:hover span:nth-child(1) {
	margin-top:-55px;
}
.button:hover span:nth-child(2) {
	margin-top:0;
}
@media only screen and (max-width: 767px) {
	.button {
		width:100%;
		font-size:10px; font-size:1.0rem;
	}
	.button a{
		width:100%;
	}
	.button {
		-webkit-perspective: 100%;
		perspective: 100%;
	}
	.button span {
		width: 100%;
	}
}
/*  ========================= ボタンのリンクがない場合 */
.button-nolink {
	display:block;
	width: 470px;
	height: 60px;
	background:url(../img/common/button_arrow.png) no-repeat 15px 50% #d70c19;
	color:#fff;
	margin:20px auto 0 auto;
	outline: none;
	overflow:hidden;
	line-height: 60px;
	text-align: center;
	text-decoration: none;
	font-size:12px; font-size:1.2rem;
	border-radius:10px;
}
@media only screen and (max-width: 767px) {
	.button-nolink {
		width:100%;
		font-size:11px; font-size:1.1rem;
	}
}
/*  ========================= ボタン画像の場合 */
.button-img {
	margin:10px auto 0 auto;
}


/* sp-menu
----------------------------------------------------*/
#sp-menu {
	display:none;
}
@media only screen and (max-width: 767px) {
	#sp-menu {
		display:block;
		background:#d70c19;!important;
	}
}
.drawer-nav{
	background:#d70c19;
}
.drawer-menu{
	background:#d70c19;
}
.drawer-menu li{
	padding:10px 20px;
	background:#d70c19;
}
.drawer-menu li a{
	display:block;
	color:#ffffff;
	text-decoration:none;
}
.drawer-nav li a span.navi-jp{
	font-size:10px; font-size:1.0rem;
}

/* header
----------------------------------------------------*/
#header {
	position: absolute;
	width:100%;
	min-width:1060px;
	height:200px;
	top:0;
	margin:0 auto 0 auto;
	z-index:100;
	overflow:hidden;
	transition: .3s;
	background-color: rgba(253,206,39,0.8);
}
#header #header-inner {
	height:50px;
	margin:0 auto;
	position: relative;
	background: url(../img/common/head_bg.png) repeat-x;
}
@media only screen and (max-width: 767px) {
	#header {
		position:fixed;
		top:0 !important;
		min-width: inherit;
		height:70px !important;
	}
	#header #header-inner {
		height:70px !important;
		background: url(../img/common/head_bg.png) repeat-x;
		background-size: 12%;
	}
}

/*  ========================= logo */
#header #header-inner #logo{
	text-align:center;
	padding-top:60px;
}
#header #header-inner #logo img{
	margin:0 auto;
}
@media only screen and (max-width: 767px) {
	#header #header-inner #logo{
		padding-top:23px;
	}
	#header #header-inner #logo img{
		width:125px;
	}
}

/*  ========================= sub-navi */
#header #header-inner #sub-navi{
	position:absolute;
	top:60px;
	right:20px;
	z-index:10002;
	font-size:9px; font-size:0.9rem;
}
#header #header-inner #sub-navi li{
	display:inline-block;
	margin-left:10px;
}

#header #header-inner #sub-navi li a{
	text-decoration:underline;
	color:#393939;
}
@media only screen and (max-width: 767px) {
	#header #header-inner #sub-navi{
		display:none;
	}
}

/*  ========================= header-tel */
#header #header-inner #header-tel{
	position:absolute;
	top:110px;
	right:20px;
	z-index:10002;
	font-size:16px; font-size:1.6rem;
}
@media only screen and (max-width: 767px) {
	#header #header-inner #header-tel{
		display:none;
	}
}

/*  ========================= group-navi */
#global-navi{
	position:relative;
	text-align:center;
	*zoom: 1;
	overflow:hidden;
	background:#d70c19;
	margin-top: 160px;
	z-index:1000;
}
#global-navi li{
	display:inline-block;
	margin:0;
}
#global-navi li a {
	display: table-cell;
	height: 60px;
	padding-left:10px;
	padding-right:10px;
	padding-top:10px;
	box-sizing:border-box;
	text-align: center;
	text-decoration: none;
	outline: none;
	color:#ffffff;
	font-weight: bold;
	vertical-align:middle;
	line-height: 30px;
	
	-webkit-transition: all .1s;
	transition: all .1s;
}
#global-navi li a span.navi-jp{
	display:block;
	font-size:11px; font-size:1.1rem;
	font-family: "M PLUS Rounded 1c"
}
#global-navi li a:hover{
	padding-top:10px;
	-webkit-transition: all .1s;
	transition: all .1s;
}
#global-navi li img{
	height: 30px;
	vertical-align:middle;
	margin-right: 3px;
	padding-bottom: 5px;
}
@media only screen and (max-width: 767px) {
#global-navi{
	display:none;
}
}

/* メイン画像
----------------------------------------------------*/
/*  ========================= トップページ */

/*  ========================= 下層ページ */
#page-img{
	position: relative;
	display: block;
	width:100%;
	height:300px;
	box-sizing:border-box;
	overflow:hidden;
}
#page-img img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	width:100%;
}
@media only screen and (max-width: 767px) {
	#page-img{
	}
	#page-img img{
		width: auto;
		height:100%;
	}
}

/* contents
----------------------------------------------------*/
.contents{
	/*width:960px;*/
	width:100%;
	margin:0 auto;
	box-sizing:border-box;
	margin-top:40px;

}
/*  ページイメージが無い場合 */
@media only screen and (max-width: 767px) {
	.contents {
		margin-top:90px;
	}
	.page-img-none {
		margin-top:90px;
	}
}

.sec-block{
	width:100%;
	max-width:980px;
	margin:0 auto;
	padding:30px 0;
	box-sizing:border-box;
}
.sec-block02{
	width:100%;
	max-width:980px;
	margin:0 auto;
	padding:0 0;
	box-sizing:border-box;
}
@media only screen and (max-width: 767px) {
	.contents{
		width:100%;
	}
	.sec-block{
		margin:0 auto;
		padding:10px 20px;
	}
	.sec-block02{
		margin:0 auto;
		padding:0 20px;
	}
}

/*  ========================= ページタイトル */
#page-title-block{
	position:relative;
	text-align:center;
	width:100%;
	height:600px;
	overflow:hidden;
	margin-top:50px;
}
#page-title-block #page-title{
	position:absolute;
	top:250px;
	width:100%;
	text-align:center;
	font-size:46px; font-size:4.6rem;
	line-height:130%;
	letter-spacing:3px;
	color:#FFFFFF;
	z-index:1;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.6));
}
#page-title-block #page-title-img{
	position:relative;
	width:100%;
	z-index:0;
	margin-top:-10%;
}
@media only screen and (max-width: 767px) {
	#page-title-block{
		height: auto;
	}
	#page-title-block #page-title{
		top:35%;
		font-size:26px; font-size:2.6rem;
	}
}

/*  ========================= セクション */
.sec-title{
	position:relative;
	margin-top:30px;
	color:#d70c19;
	font-size:22px; font-size:2.2rem;
	font-weight:bold;
	line-height:130%;
	letter-spacing:1px;
	text-align:center;
	font-family: "M PLUS Rounded 1c"
}
.sec-title img{
	width: 50px;
	vertical-align: bottom;
	margin-right: 10px;
}
/* .sec-title::before{
	content:" ";
	position:absolute;
	bottom:0;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	width:50px;
	border-bottom:10px dotted #d70c19;
}*/
.sec-copy{
	position:relative;
	font-size:16px; font-size:1.6rem;
	font-weight:bold;
	line-height:150%;
	letter-spacing:1px;
	text-align:center;
	margin-top:30px;
	font-family: "M PLUS Rounded 1c";
}
.sec-copy02{
	position:relative;
	font-size:16px; font-size:1.6rem;
	font-weight:bold;
	line-height:150%;
	letter-spacing:1px;
	text-align:center;
	margin-top:10px;
	font-family: "M PLUS Rounded 1c";
}
.sec-text{
	text-align:center;
	margin-top:30px;
}
@media only screen and (max-width: 767px) {
	.sec-title{
		font-size:13px; font-size:1.3rem;
		line-height:130%;
	}
	#home-about .sec-title{
		font-size:12px; font-size:1.2rem;
		line-height:130%;
		letter-spacing: -1px;
	}
	.sec-title img{
		width: 30px;
		margin-right: 2px;
	}
	.sec-title02{
		margin-top:0;
	}
	.sec-copy{
		font-size:10px; font-size:1.0rem;
		letter-spacing: inherit;
		margin-top:10px;
	}
	.sec-copy02{
		font-size:9px; font-size:0.9rem;
		letter-spacing: inherit;
		margin-top:0;
	}
	.sec-text{
		text-align:left;
		margin-top:15px;
		font-size: 9px; font-size: 0.9rem;
	}
}

/* pagetop
---------------------------------------- */
#page-top {
	position: fixed;
	bottom:10px;
	right:10px;
	z-index:1000;
}
#page-top a{
	display:block;
	padding:10px 12px;
	background:#4E4E4E;
	font-size:1.2rem;
	color:#FFFFFF;
	text-decoration:none;
}
@media only screen and (max-width: 767px) {
	#page-top {
		bottom: 10px;
		right: 10px;
		font-size: 0;
	}
}

/* フッター
----------------------------------------------------*/
#footer{
	margin-top:60px;
	padding:0 0 0 0;
	text-align:center;
	font-size:9px; font-size:0.9rem;
}

/*  ========================= SNS導線 */
#footer #sns{
	text-align:center;
}
#footer #sns img{
	margin: 0 10px;
}

/*  ========================= ショップ情報 */
#footer #store-information{
	border-top:1px solid #d70c19;
}
#footer #store-information::after {
	display: block;
	content: '';
	clear:both;
}
#footer #store-information #s-i-inner{
	width:960px;
	margin:0 auto;
	padding:25px 0;
	box-sizing:border-box;
	overflow:auto;
}
#footer #store-information #s-i-inner #store-logo{
	float:left;
	margin-right:20px;
}
#footer #store-information #s-i-inner #store-logo img{
	width:70px;
}
#footer #store-information #s-i-inner #store-text{
	float:left;
	margin-top:5px;
	text-align:left;
}
#footer #store-information #s-i-inner #store-name{
	font-weight:bold;
	margin-bottom:5px;
}
#footer #store-information #s-i-inner #store-sns{
	float:right;
	margin-top:15px;
}
#footer #store-information #s-i-inner #store-sns img{
	width: 35px;
}
@media only screen and (max-width: 767px) {
	#footer #store-information #s-i-inner #store-logo{
		display:none;
	}
	#footer #store-information #s-i-inner{
		width:100%;
		padding:25px 20px;
		text-align:center;
	}
	#footer #store-information #s-i-inner #store-logo{
		float: none;
		margin-right:0;
	}
	#footer #store-information #s-i-inner #store-text{
		float: none;
		margin-top:5px;
		text-align:center;
	}
	#footer #store-information #s-i-inner #store-sns{
		float: none;
		margin-top:20px;
	}
}

/*  ========================= グループ報 */
#footer #group{
	background:#f6f6f6;
	text-align:left;
}
#footer #group #g-inner{
	width:960px;
	margin:0 auto;
	padding:25px 0;
	box-sizing:border-box;
}
/*#footer #group #g-inner #g-logo{
	float:left;
	margin-right:20px;
}
#footer #group #g-inner #g-logo img{
	width:70px;
}
#footer #group #g-inner #g-text{
	float:left;
	margin-top:10px;
	
	text-align:left;
}

#footer #group #g-inner #footer-navi{
	float:right;
	display: inline-block;
	margin-top:10px;
	width:auto;
}
#footer #group #g-inner #footer-navi li{
	float:left;
	margin:0 10px;
}
#footer #group #g-inner #footer-navi li a{
	text-decoration: none;
}
#footer #group #g-inner #footer-navi li a:hover{
	text-decoration: none;
}*/
@media only screen and (max-width: 767px) {
	#footer #group #g-inner{
		width:100%;
		padding:10px 10px;
		text-align:center;
	}
	/*#footer #group #g-inner #g-logo{
		float: none;
		margin-right:0;
	}
	#footer #group #g-inner #g-text{
		float: none;
		text-align:center;
	}
	#footer #group #g-inner #footer-navi{
		float: none;
		display: inline-block;
		text-align:center;
	}
	#footer #group #g-inner #footer-navi li{
		float: none;
		display: inline-block;
	}*/
}
/*  ========================= footer-navi */
#footer #footer-navi{
	margin-top:20px;
	margin-bottom:20px;
	text-align: center;
}
#footer #footer-navi li{
	display: inline-block;
	border-right:1px solid #9E9E9E;
	line-height:100%;
	font-size:0.7rem;
}
#footer #footer-navi li a{
	display:block;
	padding:5px 20px;
	text-decoration:none;
	color:#333333;
}
#footer #footer-navi li a:hover{
	text-decoration:none;
}
#footer #footer-navi li#last-navi{
	border-right: none;
}
#footer #footer-logo-link{
	margin-top:20px;
	margin-bottom:10px;
	text-align: center;
}
#footer #footer-logo-link li{
	display: inline-block;
	border:1px solid #9E9E9E;
	line-height:0;
	margin:0 5px;
}
@media only screen and (max-width: 767px) {
	#footer #foooter-inner {
		position: relative;
		width:100%;
		margin:0 auto;
	}
	#footer #foooter-inner #footer-navi li{
		display: inline-block;
		border-right: none;
		line-height:100%;
		font-size:0.7rem;
	}
}

/*  ========================= group-copyright */
#footer #footer-copyright{
	clear:both;
	margin-top:20px;
	text-align:center;
	font-size:7px; font-size:0.7rem;
}

/*  ========================= ローダー色変更 */
#js-loader{
	background-color: #fdd000;
}