﻿/*********************************************/	

@charset "utf-8";

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


/* ======================================   

  web-fonts 

========================================= */
	
	@font-face
	{
	font-family: dejima;
	src: url('https://cdn.leafscape.be/dejima-mincho/dejima-mincho_web.woff2')
		 format("woff2");
	}



/* ======================================

  基本 

========================================= */


html{
	font-size: 62.5%;
	margin: 0;
	padding: 0;
	overflow-y: scroll;
}


	body {
		margin: 0;
		padding: 0;
		color: #000;
		font-size: 14px; 
		font-size: 1.4rem;
		font-family:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
	//	font-weight: 500;
		line-height: 140%;
		word-break : break-all;
		 -webkit-text-size-adjust: 100%;
	}


	a{
		color: #FF7A2B;
		text-decoration: underline;
	}

	a:link{
		color: #FF7A2B;
		text-decoration: underline;
	}

	a:visited{
		color: #FF7A2B;
		text-decoration: underline;
	}

	a:hover{
		color: #FF7A2B;
		text-decoration: none;
	}

	img{
		border: none;
		line-height: 0;
		vertical-align: bottom;
	}


	/* Selected Text
	------------------------*/

	::selection {
		color: #FFF;
		background: #FF7A2B; /* Safari */
	}

	::-moz-selection {
		color: #FFF;
		background: #FF7A2B; /* Firefox */
	}


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

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




/* ======================================

  all_frame 

========================================= */


#all_frame{
	width: 100%;
	margin: 0 auto;
	position: relative;
}

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



/* ====================================== 

  header 

========================================= */
	
header {
	width: 100%;
	margin: 0 auto ;
	padding-top: 20px;
	overflow: hidden;
	display: block;
	position: relative;
}


	#title {
		float: left;
		width: calc( 100% - 200px );
		padding: 0 15px;
	}

	#title img {
		height: 36px;
	}

	@media screen and (min-width: 320px) {
		/*--- iPhone5Sまで ---*/
		#tel {
			position: absolute;
			top: 20px;
			right: 110px;
			width: 36px;
			height: 36px;
		}

		#cart {
			position: absolute;
			top: 20px;
			right: 62px;
			width: 36px;
			height: 36px;
		}
	}

	@media screen and (min-width: 360px) {
		/*--- 小さめAndroid、iPhone6、iPhone6S等から ---*/
		#tel {
			position: absolute;
			top: 20px;
			right: 116px;
			width: 36px;
			height: 36px;
		}
		
		#cart {
			position: absolute;
			top: 20px;
			right: 65px;
			width: 36px;
			height: 36px;
		}
	}
	

	#tel img {
		width: 100%;
	}
	
	#cart img {
		width: 100%;
	}
	
	.fixed {
		position: fixed;
		width: 100%;
		height: 100%;
		z-index: 1;
	}


#nav_menu {
	display: none;
}

/* ナビゲーション
------------------------*/
nav {
	float:left;
	width:100%;
	margin-top:20px;
	padding:15px 0;
	border-top:#FF7A2B 2px solid;
	clear:both;
}

nav p {
	display: none;
}

nav ul {
	width: 100%;
	max-width:1200px;
	margin: 0 auto;
	text-align:center;
	letter-spacing:-0.4em;
}

nav ul li {
	height: 40px;
	margin: 0 10px;
	padding:0 5px;
	display: inline-block;
	font-family: "dejima";
	font-weight: 500;
	font-size: 16px;
	font-size: 1.6rem;
	letter-spacing: 2px;
	line-height: 40px;
	color: #222;
}

nav ul li.shop {
	margin-right: 0;
	line-height: 50px;
}

nav ul li a,
nav ul li a:link,
nav ul li a:visited {
	text-decoration: none;
	color: #222;
}

nav ul li:hover{
	background-color:#FFF3E0;
}

nav ul li a:hover {
	text-decoration: none;
	color: #222;
}

nav ul li.shop a {
	display: block;
	width: 240px;
	height: 50px;
	margin-top: 15px;
	text-indent: -9999px;
	background-image: url(../img/menu_shop.png);
	background-size: 100% auto;
	background-position: center center;
	background-repeat: no-repeat;
}

nav ul li.shop a:hover {
	text-decoration: none;
	background-image: url(../img/menu_shop_on.png);
}

	/* === ▽ スマートフォン ▽ === */
	@media (max-width: 767px) {
		header {
			margin: 0 auto 20px auto;
		}
		
		nav{
			margin-top:0;
		}
		
		/* ハンバーガーアイコン
		------------------------*/
		#nav_menu {
			float: right;
			position: absolute;
			top: 0;
			right: 0;
			width: 65px;
			height: 65px;
			display: block;
		}
		
		
		#nav_bt {
			display: block;
			position: relative;
			width: 65px;
			height: 65px;
		}

		#nav_bt_icon {
			display: block;
			position: absolute;
			z-index: 999;
			top: 56%;
			left: 50%;
			width: 26px;
			height: 4px;
			margin: -1px 0 0 -12px;
			background: #FF7A2B;
			transition: .2s;
		}

		#nav_bt_icon:before, #nav_bt_icon:after {
			display: block;
			content: "";
			position: absolute;
			top: 56%;
			left: 0;
			width: 26px;
			height: 4px;
			background: #FF7A2B;
			transition: .3s;
		}

		#nav_bt_icon:before {
			margin-top: -12px;
		}

		#nav_bt_icon:after {
			margin-top: 8px;
		}

		#nav_bt .close {
			background: transparent;
		}

		#nav_bt .close:before, #nav_bt .close:after {
			margin-top: 0;
		}

		#nav_bt .close:before {
			transform: rotate(-45deg);
			-webkit-transform: rotate(-45deg);
			background-color: #FFF;
		}

		#nav_bt .close:after {
			transform: rotate(-135deg);
			-webkit-transform: rotate(-135deg);
			background-color: #FFF;
		}
		
		
		/* ナビゲーション
		------------------------*/
		
		nav {
			position: absolute;
			display: none;
			opacity: 0;
			z-index: 100;
			top: 0;
			width: 100%;
			height: 100%;
			padding: 25px 15px 30px 15px;
			background-color: #FF7A2B;
			box-shadow: 0 2px 2px #333;
			-webkit-box-shadow: 0 2px 2px #333;
			-moz-box-shadow: 0 2px 2px #333;
			box-sizing: border-box;
		}

		nav.open {
			display: block;
			opacity: 1;
			transition: 0.5s ;
		}
		
		nav p{
			margin-bottom: 5px;
			margin-left: 3px;
			color: #FFF;
			font-family: "dejima";
			font-weight: bold;
			font-size: 24px;
			font-size: 2.4rem;
			letter-spacing: 4px;
		}

		nav ul {
			width: 100%;
			height: 100%;
			padding: 10px 0 30px 0;
			overflow-y: scroll;
			-webkit-overflow-scrolling: touch;
			box-sizing: border-box;
		}
		
		nav ul li {
			width: 100%;
			height: 50px;
			padding-top: 5px;
			font-family: "dejima";
			font-weight: bold;
			font-size: 16px;
			font-size: 1.6rem;
			letter-spacing: 3px;
			line-height: 50px;
			text-align: left;
			border-bottom: 3px double #FFF;
		}

		nav ul li:last-child{
			margin-bottom: 20px;
		}
		
		nav ul li a,
		nav ul li a:link,
		nav ul li a:visited {
			display: block;
			width: 100%;
			text-decoration: none;
			color: #FFF;
			position: relative;
		}

		nav ul li a::after {
			position: absolute;
			display: block;
			content: '';
			top: 20px;
			right: 10px;
			width: 6px;
			height: 6px;
			border-right: 2px solid #FFF;
			border-bottom: 2px solid #FFF;
			-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}
	}

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



/* ======================================

  pankuzu 

========================================= */

#pankuzu{
	margin: 0 auto 30px auto;
	padding: 14px 15px 10px 15px;
	letter-spacing: 2px;
	background-color: #eee;
}

	#pankuzu ul{
		overflow:hidden;
		clear:both;
	}
	
	#pankuzu ul li{
		float:left;
		position: relative;
		margin:0 10px 5px 0;
		padding-left: 20px;
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: 400;
	}

	#pankuzu ul li::after {
		display: block;
		content: '';
		position: absolute;
		top: .4em;
		left: 0;
		width: 6px;
		height: 6px;
		border-right: 2px solid #FF7A2B;
		border-bottom: 2px solid #FF7A2B;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	#pankuzu ul li.first {
		padding-left: 0;
	}

	#pankuzu ul li.first::after {
		display: none;
	}

	#pankuzu a{
		text-decoration:underline;
	}

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



/* ======================================

  main 

========================================= */

section {
	padding: 0 15px;
	box-sizing: border-box;
}


	h1 {
		margin-bottom: 30px;
		padding: 12px 0;
		font-family: "dejima";
		font-weight: bold;
		font-size: 22px;
		font-size: 2.2rem;
		text-align: center;
		letter-spacing: 3px;
		line-height: 160%;
		border-top: 3px double #FF7A2B;
		border-bottom: 3px double #FF7A2B;
		box-sizing: border-box;
	}


	h2 {
		margin-bottom: 30px;
		padding: 8px 15px;
		font-family: "dejima";
		font-weight: bold;
		font-size: 20px;
		font-size: 2.0rem;
		text-align: left;
		letter-spacing: 3px;
		line-height: 160%;
		color: #FFF;
		background-color: #FF7A2B;
		box-sizing: border-box;
	}


	h3 {
		margin-bottom: 20px;
		padding-left: 10px;
		font-family: "dejima";
		font-weight: bold;
		font-size: 18px;
		font-size: 1.8rem;
		text-align: left;
		letter-spacing: 2px;
		line-height: 140%;
		color: #FF7A2B;
		border-left: 6px solid #FF7A2B;
		box-sizing: border-box;
	}

	section > p {
		font-size: 15px;
		font-size: 1.5rem;
		letter-spacing: 2px;
		line-height: 175%;

	}


	a.bt,
	a.bt:link,
	a.bt:visited,
	a.bt:hover {
		width:100%;
		padding: 20px 0 18px 0;
		display: block;
		font-family: "dejima";
		font-weight: bold;
		font-size: 20px;
		font-size: 2.0rem;
		text-align: center;
		text-decoration: none;
		text-indent: 3px;
		letter-spacing: 3px;
		line-height: 100%;
		color: #FFF;
		background-color: #FF7A2B;
		border-bottom: 3px solid #EA5800;
		box-sizing: border-box;
	}

	a.bt.gray {
		background-color: #7f8c8d;
		border-bottom: 3px solid #666;
	}

	a.bt.cart {
		text-indent: 30px;
		background-image: url(../img/icon_cart.png);
		background-size: 40px auto;
		background-position: 85px center;
		background-repeat: no-repeat;
	}
	
	
	.table {
		width: 100%;
		display: table;
		clear: both;
		box-sizing: border-box;
	}

	.table dt {
		display: block;
		position: relative;
		width: 100%;
		font-family: "dejima";
		font-size: 14px;
		font-size: 1.4rem;
		letter-spacing: 2px;
		color: #000;
		background: #eee;
		box-sizing: border-box;
	}

	.table dt p {
		position: relative;
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
	}

	
	.table dd {
		display: block;
		margin-bottom: 20px;
		padding: 15px 10px;
		font-size: 14px;
		font-size: 1.4rem;
		letter-spacing: 2px;
		line-height: 140%;
		border-bottom: 1px dotted #DDD;
		box-sizing: border-box;
	}


	.list li{
		position: relative;
		width: 100%;
		margin-bottom: 15px;
		padding: 0 0 15px 15px;
		font-size: 15px;
		font-size: 1.5rem;
		letter-spacing: 2px;
		line-height: 140%;
		color: #222;
		border-bottom: 1px dotted #DDD;
		box-sizing: border-box;
	}

	.list li::before{
		display: block;
		content: '';
		position: absolute;
		top: .35em;
		left: 0;
		width: 8px;
		height: 8px;
		background-color: #FF7A2B;
		border-radius: 100%;
	}
	
	.box {
		padding: 15px;
		font-family: "dejima";
		font-size: 15px;
		font-size: 1.5rem;
		font-weight: bold;
		letter-spacing: 2px;
		line-height: 140%;
		color: #FF7A2B;
		border: 1px dotted #FF7A2B;
		box-sizing: border-box;
	}
	
	a.link {
		padding-left: 15px;
		font-size: 15px;
		font-size: 1.5rem;
		letter-spacing: 2px;
		position: relative;
	}
	
	a.link::after {
		display: block;
		content: '';
		position: absolute;
		top: .25em;
		left: 0;
		width: 6px;
		height: 6px;
		border-right: 2px solid #FF7A2B;
		border-bottom: 2px solid #FF7A2B;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	
	
	#slider,
	.flexslider,
	.slides {
		z-index: 0;	
	}

	section#slider {
		padding: 0;
	}

	.flexslider .slides {
		margin-bottom: 45px;
	}

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



/* ====================================== 

  ページリンク 

========================================= */

#page_link{
	margin: 15px 0 20px 0;
	font-size: 13px;
	font-weight: bold;
}

	#all_news{
		margin:0 0 8px 5px;
		font-size: 12px;
		letter-spacing: 3px;
		color: #FF7A2B;
	}

	#next_prev{
		margin: 0;
		overflow: hidden;
		clear: both;
	}

	#next_prev #num_top{
		float: left;
		width: 18px;
		height: 18px;
		margin: 0 5px;
		padding: 8px 5px 3px 5px;
		display: block;
		line-height: 100%;
		color: #FF7A2B;
		text-decoration: none;
		text-align: center;
		border: 1px solid #FF7A2B;
	}


	#next_prev a{
		float: left;
		width: 18px;
		height: 18px;
		margin: 0 5px;
		padding: 8px 5px 3px 5px;
		display: block;
		line-height: 100%;
		color: #FFF;
		text-decoration: none;
		text-align: center;
		background-color: #FF7A2B;
		border: 1px solid #FF7A2B;
	}

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



/* ====================================== 

  フォーム部品 

========================================= */


* {
	-webkit-appearance: none;
}

select {
	width: 100%;
	height: 50px;
	padding: 0 40px 0 15px;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 2px;
	color: #333;
	background: transparent;
	position: relative;
	z-index: 0;
	border: 1px solid #ccc;
	border-radius: 0;
	border-radius: 5px;
	box-sizing: border-box;
}

select::-ms-expand {
	display: none;
}

.select {
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto 15px auto;
	background-color: #f8f8f8;
	box-sizing: border-box;
}

.select::before{
	content: '';
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	height: 100%;
	width: 50px;
}

.select::after{
	content: '';
	position: absolute;
	z-index: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
	right: 15px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 6px 0 6px;
	border-color: #FF7A2B transparent transparent transparent; 
}

input[type="tel"],
input[type="text"]{
	width:95%;
	-webkit-appearance: none;
	margin:0;
	padding: 5px 10px;
	height: 40px;
	font-size: 16px;
	letter-spacing: 1px;
	border: none;
	border: 1px solid #DDD;
	border-radius: 0;
}

input[type="text"].short{
	width: 120px !important;
}

textarea{
	-webkit-appearance: none;
	width:95%;
	margin:0;
	padding:10px !important;
	line-height:150%;
	font-size: 16px;
	letter-spacing: 1px;
	border: none;
	border: 1px solid #DDD;
	border-radius: 0;
}

select{
	height: 40px;
}

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



/* ====================================== 

  Progressbar

========================================= */

.progressbar {
	margin: 0 auto;
	padding: 0;
	counter-reset: step;
	z-index: 0;
	position: relative;
}

.progressbar li {
	list-style-type: none;
	margin-bottom: 20px;
	float: left;
	font-size: 13px;
	text-indent: 2px;
	letter-spacing: 2px;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	color: #aaa;
}

.progressbar.step3 li {
	width: 33.333%;
}

.progressbar.step5 li {
	width: 20%;
}

.progressbar li:before {
	width: 30px;
	height: 30px;
	content: counter(step);
	counter-increment: step;
	line-height: 30px;
	display: block;
	text-align: center;
	margin: 0 auto 10px auto;
	border-radius: 50%;
	background-color: #eee;
}

.progressbar li:after {
	width: 100%;
	height: 2px;
	content: '';
	position: absolute;
	background-color: #eee;
	top: 15px;
	left: -50%;
	z-index: -1;
}

.progressbar li:first-child:after {
	content: none;
}

.progressbar li.active {
	color: #FF7A2B;;
}

.progressbar li.active:before {
	background-color: #FF7A2B;
	color:#fff;
}

.progressbar li.active + li:after {
	background-color: #FF7A2B;
}

/* ======================================   



/* ======================================   

  f o o t e r 

========================================= */
	
footer{
	width: 100%;
	margin: 60px auto 30px auto;
	padding: 0 15px;
	box-sizing: border-box;
}
	
	/* 社名ロゴ
	------------------------*/
	#footer_title{
		width: 100%;
		margin: 0 auto 15px auto;
		padding-bottom: 10px;
		font-size: 18px;
		font-size: 1.8rem;
		letter-spacing: 4px;
		line-height: 100%;
		border-bottom: 2px solid #FF7A2B;
	}
	
	.footer_data,
	.footer_data a {
		margin-bottom: 5px;
		font-size: 13px;
		font-size: 1.3rem;
		letter-spacing: 2px;
		line-height: 160%;
	}

	.footer_link {
		margin-top: 15px;
	}
	
	.footer_link li {
		margin: 0 auto 10px auto;
		padding-left: 15px;
		font-size: 14px;
		font-size: 1.4rem;
		letter-spacing: 3px;
		position: relative;
	}

	.footer_link li::after {
		display: block;
		content: '';
		position: absolute;
		top: .3em;
		left: 0;
		width: 6px;
		height: 6px;
		border-right: 2px solid #FF7A2B;
		border-bottom: 2px solid #FF7A2B;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

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



/* ======================================   

  ページトップへ戻る 

========================================= */

.go_top{
	position: fixed;
	right: 20px;
	margin-bottom: 20px;
}

	.go_top a{
		display: block;
		width: 60px;
		height: 60px;
		color: #F00;
		text-indent: -9999px;
		background-image: url(../img/page_top.png);
		background-size: 60px auto;
		background-position: center center;
		background-repeat: no-repeat;
		filter:alpha(opacity=80);
		-moz-opacity: 0.8;
		opacity: 0.8;
	}

	.go_top a:hover{
		filter:alpha(opacity=100);
		-moz-opacity: 1.0;
		opacity: 1.0;
	}

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



/* ======================================   

  copyright 

========================================= */

#copyright{
	width: 100%;
	height: 40px;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: center;
	letter-spacing: 3px;
	line-height: 40px;
	background-color: #F4F4F4;
}

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