@charset "UTF-8";
/*
 * layout.css
 *
 *  version --- 1.0
 *  updated --- 2017/9/3
 */
header, footer, nav, section, aside, article
{ display: block;}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ vertical-align: top; max-width: 100%;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}
q:after, q:before
{ content:'';}
a, input,select,textarea,button
{ outline: none; }
abbr, acronym
{ border: 0;}

a {
	color: #333;
	text-decoration: none;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}

a:hover {
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.op{
	text-decoration:none;
	-webkit-transition: opacity 0.5s ease-out;
	-moz-transition: opacity 0.5s ease-out;
	-ms-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}
.op:hover{
	text-decoration:none;
	opacity: .7;
	-webkit-opacity: .7;
	-moz-opacity: .7;
	filter: alpha(opacity=70);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=70)"; /* IE 8 */
	-webkit-transition: opacity 0.5s ease-out;
	-moz-transition: opacity 0.5s ease-out;
	-ms-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}

select,
input[type=radio],
input[type=checkbox],
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=number],
input[type=reset],
input[type=button],
input[type=submit],
textarea {
	font-family: "Noto Sans JP", sans-serif;
}
input[type=reset],
input[type=button],
input[type=submit],
button{
	font-family: "Noto Sans JP", sans-serif;
	cursor: pointer;
}


/* !Clearfix
---------------------------------------------------------- */
.clearfix {
	display: block;
	min-height: 1%;
}
.clearfix:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
*{
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
html {
	overflow-y: scroll;
	font-size: 62.5%;
}
body{
	background: transparent;
	line-height: 1.5;
	color: #333;
	font-family: "Noto Sans JP", sans-serif;
	font-size:1.6rem;
}
.font01{
	font-family: 'Noto Serif JP', serif;
}
@media screen and (max-width: 767px) {
	body{ font-size:1.4rem;}
}

/* !wrapper
---------------------------------------------------------- */
#wrapper {
	overflow:hidden;
	position: relative;
	width:100%;
	min-height:100vh;
}

/* !header
---------------------------------------------------------- */
#header {
	position: relative;
	width: 100%;
	height: 130px;
}
#page_homepage #header {
	height: auto;
}
#headerFixed {
	padding-bottom: 130px;
	position: fixed;
	width: 100%;
	left: 0;
	z-index: 999;
}
#page_homepage #headerFixed {
	padding-bottom: 165px;
	position: absolute;
	bottom: 0;
}
.noPad #headerFixed {
	padding-bottom: 130px !important;
}
.fixedScroll #headerFixed {
	position: fixed !important;
	top: 0;
	bottom: auto !important;
}
#header .notice{
	padding:8px 0;
	background:#BF9556;
	text-align: center;
	color:#fff;
	font-size:1.3rem;
	font-weight:500;
position: relative;
}
#header .notice .close{
	position: absolute;
	display:block;
	width:35px;
	height:35px;
	background:url(../img/common/ico_x.png) no-repeat center center;
	right: 30px;
	top: 50%;
	margin-top: -17px;
}
#headerIn{
	width:100%;
	background:#fff;
	position: fixed;
	left:0;
	top:0;
	z-index: 999;
	width:100%;
}
.fixedScroll #headerIn {
	position: absolute;
}
#page_homepage #headerIn{

}
#header .left{
	float:left;
	display:flex;
	align-items: center;
	height:60px;
	max-width:40%;
}
#header .search{
	margin-right:20px;
	padding:0 18px 0 20px;
	width:160px;
	background:#F2F2F2;
	border-radius:50px;
	font-size:1.3rem;
}
#header .search input[type=search],
#header .search input[type=text] {
	float:left;
	height:34px;
	width:80%;
	border:0;
	background:transparent;
}
#header .search input[type=image]{
	float:right;
	margin:8px 0;
}
#header .energize {
	width:130px;
	line-height: 1.6;
	font-size:1rem;
	font-weight:500;
}
#header .areaShipping a {
	font-size: 1.2rem;
	margin-left: 20px;
	background:url(../img/common/ico_areashippng.svg) no-repeat center left;
	background-size: contain;
	padding-left: 23px;
	letter-spacing: 0.06em;
    position: relative;
    cursor: pointer;
}
#header .faxOrder {
	font-size: 1.2rem;
	margin-left: 20px;
	background:url(../img/common/ico_fax.svg) no-repeat center left;
	background-size: 12px 16px;
	padding-left: 20px;
	letter-spacing: 0.06em;
    position: relative;
    cursor: pointer;
}
#header .faxOrder .faxOrder_link {
    position: absolute;
    font-size: 1.2rem;
    line-height: 2.2em;
    border-radius: 4px;
    background: #fff;
    width: 180px;
	box-sizing: border-box;
	padding: 20px 0 20px 30px;
	z-index: 100;
    margin: 36px 0 0 -50px;
}
#header .faxOrder .faxOrder_link:before {
    content: "";
    position: absolute;
    top: -18px;
	left: 80px;
    border: 10px solid transparent;
    border-top: 10px solid #fff;
    transform: rotateZ(180deg);
}

#headLogo {
	position: absolute;
	left:50%;
	bottom:-89px;
	transform: translateX(-50%);
	padding:20px 0;
	width:335px;
	height:149px;
	background:url(../img/common/bg_head.png) no-repeat center bottom;
	background-size:100%;
	text-align: center;
}
#headLogo img{width:60%;}
.headLinks{
	float:right;
	display:flex;
}
.headLinks a{
	display:flex;
	align-items: center;
	justify-content: center;
	padding:0 20px 0 45px;
	height:60px;
	background-repeat: no-repeat;
	background-position: 20px center;
	font-size:1.2rem;
	font-weight:bold;
}
.headLinks .head01{
	background-image:url(../img/common/ico_head01.png);
	background-size:14px;
}
.headLinks .head02{background-image:url(../img/common/ico_head02.png);}
.headLinks .head03{
	background-image:url(../img/common/ico_head03.png);
	background-size:16px;
}
.headLinks .cart{
	position: relative;
	padding:0;
	text-align: center;
}
.headLinks .cart:before{
	content:"";
	position: absolute;
	left:0;
	bottom:-11px;
	width:100%;
	height:22px;
	border-radius:100%;
	background:#EE8000;
}
.headLinks .cart span{
	display:block;
	position: relative;
	padding:45px 5px 0;
	height:100%;
	width:100px;
	background:url(../img/common/ico_cart_white.svg) no-repeat center 16px #EE8000;
	color:#fff;
}
.headLinks .cart span.num {
	position: absolute;
    right: 28px;
    top: 4px;
    width: 22px;
    height: 22px;
    line-height: 22px;
    background: #EE8000;
    border-radius: 50%;
    color: #fff;
    font-size: 0.7rem;
    text-align: center;
	padding: 0;
	color: #fff;
	border: 1px solid #fff;
}
/* !gNav
---------------------------------------------------------- */
#headerNav{
	position: absolute;
	left:0;
	bottom:0;
	z-index: 998;
	width:100%;
}
.goNav {
	transition: all 0.3s;
	width:100%;
	background:rgba(230,0,18,0.9);
	text-align: center;
}
.goNav .inner {
	display:flex;
	justify-content: space-between;
}
#page_homepage .goNav .inner{
	display:block;
}
#page_homepage .fixedScroll .goNav .inner{
	display:flex !important;
}

.goNav ul{
	display:inline-flex;
	justify-content: center;
}
.goNav .level02{display:none;}
.goNav li{
	display:flex;
	align-items:center;
	height:70px;
}
.goNav li + li:before{
	content:"|";
	opacity: 0.32;
	color:#fff;
}

.goNav .contactMenu {
	position: relative;
	color: #fff;
    cursor: pointer;
	font-weight: bold;
}
.goNav .contactMenu .contactMenu_text {
	padding: 0 20px;
}
.goNav .contactMenu .contactMenu_link {
    position: absolute;
    font-size: 1.4rem;
    line-height: 2.2em;
    border-radius: 4px;
    background: #fff;
    width: 200px;
	box-sizing: border-box;
	padding: 20px ;
	z-index: 100;
    margin: 10px 0 0 -30px;
	box-shadow: 0 0 8px rgba(0,0,0,0.1);
}
.goNav .contactMenu .contactMenu_link:before {
    content: "";
    position: absolute;
    top: -18px;
	left: 80px;
    border: 10px solid transparent;
    border-top: 10px solid #fff;
    transform: rotateZ(180deg);
}
.goNav .contactMenu .contactMenu_link a {
	padding: 0 !important;
	color: #333;
	margin: 10px 0;
	display: 10px 0;
}

#page_homepage .level01 + .level01 li:before{
	content:"|";
	opacity: 0.32;
	color:#fff;
}
#page_homepage .goNav .contactMenu .contactMenu_link {
	margin-left: 0;
}
#page_homepage .goNav .contactMenu .contactMenu_text {
	padding: 0 30px;
	font-size: 14px;
}
.goNav li a{
	padding:0 20px;
	color:#fff;
	font-weight: bold;
}
#page_homepage .goNav li a{padding:0 30px;}
#page_homepage .fixedScroll .goNav li a{ 
	padding:0 20px;
	font-size: 14px;
}

.slideUp {
  -webkit-transform: translateY(-250%);
  -ms-transform: translateY(-250%);
  -o-transform: translateY(-250%);
  transform: translateY(-250%);
  -webkit-transition: transform .5s ease-out;
  -o-transition: transform .5s ease-out;
  transition: transform .5s ease-out;
}
.slideDown {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: transform .5s ease-out;
  -o-transition: transform .5s ease-out;
  transition: transform .5s ease-out;
}
/*** タブレット ***/
@media screen and (max-width: 1380px) {
	#header .inner {
		padding: 0;
	}
	.headLinks a{
		padding: 0 20px;
		background-position: left center;
	}
	.goNav li a,
	#page_homepage .fixedScroll .goNav li a{
		padding:0 15px;
		font-size:1.4rem;
	}
	#page_homepage .goNav li a{padding:0 25px;}
	#page_homepage .goNav .contactMenu .contactMenu_text {
		padding: 0 25px;
	}
	#page_homepage .goNav .contactMenu .contactMenu_link {
		margin-left: -23px;
	}
}
@media screen and (max-width: 1200px) {

	.headLinks .cart span{width:72px;}
	#headLogo{
		bottom:-74px;
		width: 280px;
    	height: 134px;
	}
	#header .search{width:160px;}

	.goNav li a,
	#page_homepage .fixedScroll .goNav li a {
		padding:0 10px;
	}
	.goNav .contactMenu .contactMenu_text{
		padding:0 10px;
		font-size: 1.4rem;
	}
	.goNav .contactMenu .contactMenu_link {
		margin-left: -50px;
	}
}
@media screen and (max-width: 1023px) {
	#page_homepage .goNav li a{padding:0 20px;}
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	.headLinks .head02{
		height: 25px;
		margin: 30px -100px 0 0px;
		background: none;
	}
	.headLinks .head03{
		height: 25px;
		margin-top: 5px;
		background: none;
	}
}

/*SP*/
@media screen and (max-width: 767px) {
	#wrapper{padding-top: 45px;}
	#header {
		height: auto;
	}
	#headerFixed {
		padding-bottom: 0;
	}
	#header .inner{
		position: relative;
		padding: 0 15px;
	}
	/*
	#header .notice{
		text-align: left;
		height: 35px;
		position: relative;
		padding: 0;
	}
	#header .notice p{
		position: absolute;
		left: 90%;
		top: 0;
		padding: 8px 0;
		width: 150%;
		z-index: 2;
		white-space: nowrap;
		-webkit-animation: _move 10s linear infinite;
	  		animation: _move 10s linear infinite;
	}
	#header .notice p:nth-child(2){
		left: 150%;
		display: block;
	}
	#header .notice p:nth-child(3){
		left: 250%;
		display: block;
	}
	#header .notice p:nth-child(4){
		left: 350%;
		display: block;
	}
	#header .notice p:nth-child(5){
		left: 450%;
		display: block;
	}*/
	#header .inner{
		position: relative;
		padding: 0 15px;
	}
	#header .notice{
		text-align: left;
		height: 35px;
		position: relative;
		padding: 0;
	}
	#header .notice .inner {
		white-space: nowrap;
		position: absolute;
		-webkit-animation: _move 15s linear infinite;
		animation: _move 15s linear infinite;
	}
	#header .notice p{
		padding: 8px 15px;
		z-index: 2;
		white-space: nowrap;
		display:inline-block;
	}

	#header .left{height:50px;}
	#headLogo {
		bottom: -35px;
		padding: 10px 0;
		width: 180px;
		height: 80px;
	}
	#headLogo img{width:110px;}

/*
	#header .notice .close{
		position: absolute;
		display:block;
		width:35px;
		height:35px;
		background:url(../img/common/ico_x.png) no-repeat center center #BF9556;
		right: 0;
		top: 0;
		z-index: 3
	}
*/
	#header .notice .close{
		position: absolute;
		display:block;
		width:35px;
		height:35px;
		background:url(../img/common/ico_x.png) no-repeat center center #BF9556;
		right: 0;
		top: 0;
		z-index: 3;
		margin-top: 0;
	}

	.btnMenu{
		display:block;
		position: absolute;
		right:15px;
		top:10px;
		z-index: 1001;
		width:26px;
		height:30px;
		background:url(../img/common/ico_menu.png) no-repeat center;
		background-size:100%;
	}
	.btnMenu.active{
		background-image:url(../img/common/ico_menu_close.png);
	}

	#header .search,
	.goNav .search{
		width:100%;
		padding: 0 18px 0 20px;
		background: #fff;
		border-radius: 50px;
	}
	#header .search input[type=search],
	.goNav .search input[type=search]{
		height: 34px;
		width:240px;
		border:0;
	}
	#header .search input[type=image],
	.goNav .search input[type=image]{
		float: right;
		margin: 8px 0;
	}
	#page_homepage .level01 + .level01 li:before{
		display: none;
	}
	.headLinks{
		display: block;
		margin-bottom:10px;
		float:none;
		position: relative;
		padding-right:125px;
	}
	.headLinks a{
		float:left;
		width:50%;
		height:40px;
		color:#fff;
		font-size:1.4rem;
	}
	.headLinks .head03{
		clear: both;
		width: 100%;
		justify-content: flex-start;
		padding-left: 30px;
	}
	.headLinks .head04{
		clear: both;
		width: 100%;
		background-image:url(../img/common/ico_fax_white.svg);
		background-size:15px 20px;
		justify-content: flex-start;
		padding-left: 30px;
		letter-spacing: 0.06em;
		font-weight: normal;
	}
	.headLinks .cart{
		position:absolute;
		right:0;
		top:10px;
		width:120px;
		height: auto;
		border-radius:4px;
		overflow: hidden;
		font-size:1.6rem;
	}
	.headLinks .cart span{
		width:100%;
		padding: 23px 5px 23px 50px;
		background-position:15px center;
		background-size:22px;
	}
	.headLinks .cart span.num {
		right: inherit;
		top: 10px;
		left: 28px;
	}
	.headLinks .cart:before{content:none;}
	#headerNav{ position: static; }
	.goNav,
	#page_homepage .goNav{
		display: none;
		position:fixed;
		top:0;
		left:0;
		z-index: 1001;
		transition: all 0s;
		padding:90px 0;
		height:100vh;
		overflow-y: scroll;
		text-align: left;
	}
	.goNav .inner,
	#page_homepage .fixedScroll .goNav .inner,
	.goNav ul,
	.goNav li{
		display:block !important;
	}
	.goNav li{height:auto;}
	.goNav li + li:before{content:none;}
	.goNav .level01 li a,
	#page_homepage .goNav .level01 li a{
		display:block;
		padding:14px 0;
		border-bottom:1px solid #F06872;
		font-size:1.6rem;
	}
	.goNav .level02{
		display:block;
		margin-top:15px;
	}
	.goNav .level02 li a,
	#page_homepage .goNav .level02 li a{
		display:block;
		padding:5px 0;
		font-weight:300;
	}
	.goNav li .sns {float:right;}
	.goNav li .sns img{
		width:30px;
	}
	.goNav .contactMenu_sp {
		border-bottom: 1px solid #F06872;
		padding-bottom: 5px;
	}
	.goNav .contactMenu_sp .contactMenu_sp_text {
		display: block;
		padding: 14px 0 5px 0;
		font-size: 1.6rem;
		color: #fff;
		font-weight: bold;
	}
	.goNav .contactMenu_sp .contactMenu_sp_link a {
		border-bottom: none !important;
		padding: 7px 0 7px 20px !important;
		font-size: 1.4rem !important;
	}
	.areaShipping_sp {
		margin-bottom: 20px;
	}
	.areaShipping_sp a {
		font-size: 1.5rem;
		color: #fff;
		background: url(../img/common/ico_areashippng_white.svg) no-repeat center left;
		background-size: contain;
		padding-left: 26px;
		letter-spacing: 0.06em;
	}
	.faxOrder_sp {
		font-size: 1.5rem;
		color: #fff;
		margin-bottom: 30px;
	}
	.faxOrder_sp .faxOrder_sp_text {
		clear: both;
		width: 100%;
		background-image:url(../img/common/ico_fax_white.svg);
		background-size:15px 20px;
		background-repeat: no-repeat;
		justify-content: flex-start;
		padding-left: 26px;
		letter-spacing: 0.06em;
		font-weight: normal;
		margin-bottom: 8px;
	}
	.faxOrder_sp .faxOrder_sp_link a {
		color: #fff;
	}
	.faxOrder_sp .faxOrder_sp_link {
		display: flex;
		padding-left: 26px;
	}
	.faxOrder_sp .faxOrder_sp_link a {
		margin-right: 30px;
	}
	.cart_sp {
		position: absolute;
		top: 10px;
		right: 63px;
	}
	.cart_sp a {
		position: relative;
		display: block;
		width: 26px;
		height: 30px;
		background-image:url(../img/common/ico_cart_red.svg);
		background-size:26px 27px;
		background-repeat: no-repeat;
		background-position: 0 3px;
	}
	.cart_sp a span:first-child {
		display: none;
	}
	.cart_sp span.num {
		position: absolute;
		right: -12px;
		top: -7px;
		width: 22px;
		height: 22px;
		line-height: 22px;
		background: #E60012;
		border-radius: 50%;
		color: #fff;
		font-size: 0.7rem;
		text-align: center;
		padding: 0;
		border: 1px solid #fff;
	}
}
@keyframes _move {
	0% {
		-webkit-transform: translateX(0);
			transform: translateX(0);
	}
	100% {
		-webkit-transform: translateX(-100%);
			transform: translateX(-100%);
	}
}

/* !mainVisual
---------------------------------------------------------- */
#mainVisual {
	position: relative;
	z-index: 100;
	padding: 60px 0 0 0;
}
.mainSlider .item{
	position: relative;
	height:500px;
}
.mainSlider .slick-track {
	height: 500px;
}
.mainSlider .slick-slide {
	opacity: 1 !important;
	transition: none !important;
	z-index: 1 !important;
	height: 790px;
	left: 0 !important;
	position: absolute !important;
	top: 0;
}
.mainSlider .slick-slide.slick-active {
	z-index: 200 !important;
}
.mainSlider .item .bgImg{
	position:absolute;
	left:0;
	top:0;
	width:0%;
	height: 790px;
	overflow: hidden;
	-webkit-transition-property: width;
  transition-property: width;
  -webkit-transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
          transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  will-change: width;
  overflow: hidden;
  z-index: 2;
}
.mainSlider .slick-slide.slick-active .bgImg {
  width:100% !important;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.mainSlider .slick-slide.slick-hide .bgImg {
  width: 0% !important;
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.mainSlider .slick-slide.is-fromRight .bgImg {
  left: 0;
}
.mainSlider .item .bgImg p{
	position:absolute;
	right:0;
	top:-145px;
	width:100%;
	height: 100%;
	background-repeat:repeat-x;
	background-position: center center;
	background-size: cover;
	-webkit-transition:opacity 2s cubic-bezier(.55,.085,.68,.53) 0s,-webkit-transform 2s cubic-bezier(.55,.085,.68,.53) 0s;
	transition:opacity 2s cubic-bezier(.55,.085,.68,.53) 0s,-webkit-transform 2s cubic-bezier(.55,.085,.68,.53) 0s;
	transition:opacity 2s cubic-bezier(.55,.085,.68,.53) 0s,transform 2s cubic-bezier(.55,.085,.68,.53) 0s;
	transition:opacity 2s cubic-bezier(.55,.085,.68,.53) 0s,transform 2s cubic-bezier(.55,.085,.68,.53) 0s,-webkit-transform 2s cubic-bezier(.55,.085,.68,.53) 0s;
	-webkit-transform: scale(1.15,1.15);
    transform: scale(1.15,1.15);
    -webkit-transform-origin: 30% 70%;
    transform-origin: 30% 70%;
}
.mainSlider .item .bgImg.active p{
	-webkit-transition:opacity 1s cubic-bezier(.215,.61,.355,1),-webkit-transform 8s cubic-bezier(.075,.82,.165,1);
	transition:opacity 1s cubic-bezier(.215,.61,.355,1),-webkit-transform 8s cubic-bezier(.075,.82,.165,1);
	transition:opacity 1s cubic-bezier(.215,.61,.355,1),transform 8s cubic-bezier(.075,.82,.165,1);
	transition:opacity 1s cubic-bezier(.215,.61,.355,1),transform 8s cubic-bezier(.075,.82,.165,1),-webkit-transform 8s cubic-bezier(.075,.82,.165,1);
	-webkit-transform:scale(1);
	transform:scale(1);
}
.mainSlider .slick-slide.is-fromRight .bgImg p {
  left: 0;
  background-position: left center !important;
}
.bgImg01{
	background: url(../img/top/mainslide01.png) repeat-x center center;
	background-size: auto 500px !important;
}
.mainSlider .slick-prev,
.mainSlider .slick-next{
	width: 73px;
    height: 73px;
	background-repeat: no-repeat;
	background-position: center;
	background-size:auto 100%;
}
.mainSlider .slick-prev{
	left:10%;
	background-image:url(../img/common/ico_left.png);
}
.mainSlider .slick-next{
	right:10%;
	background-image:url(../img/common/ico_right.png);
}
.mainSlider .slick-dots{
	bottom:100px;
	right:50%;
	margin-right:-640px;
	width: auto;
}
.mainSlider .slick-dots li{
	width:18px;
	height:19px;
	background:url(../img/common/ico_dot.png) no-repeat center;
	background-size:100%;
	border:0;
}
.mainSlider .slick-dots li.slick-active{
	background-image:url(../img/common/ico_dot_on.png);
}
.mainSlider .slick-dots li:first-child:last-child {
	display: none;
}
#mainVisual .title{
	position: absolute;
	left:50%;
	top:50%;
	transform: translate(-50%, -50%);
}
#mainVisual .scroll{
	position: absolute;
	left:50%;
	bottom:100px;
	transform: translateX(-50%);
}
#mainVisual .steamStart,
#mainVisual .steamStart img{
	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#mainVisual .steamStart img:nth-child(3) {
	animation: steam_start 1.25s ease-in-out forwards
}
#mainVisual .steamStart img:nth-child(2) {
	animation: steam_start 1.25s ease-in-out .25s forwards
}
#mainVisual .steamStart img:first-child {
	animation: steam_start 1.25s ease-in-out .5s forwards
}
@keyframes steam_start {
	0% {
		top: 0;
		opacity: 0
	}

	50% {
		opacity: 1
	}

	to {
		top: -25%;
		opacity: 0
	}
}

/* !teaser
---------------------------------------------------------- */
#teaser {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height:300px;
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	border-bottom:1px solid #EEEEEE;
	text-align: center;
}
#page_product_list #teaser, #page_product_detail #teaser {background-image:url(../img/lineup/teaser.jpg);}
#page_recipe_list #teaser{background-image:url(../img/recipe/teaser.jpg);}
#company #teaser{background-image:url(../img/company/teaser.jpg);}
#teaser:before{
	content:"";
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(51,51,51,0.15);
}
#teaser h2{
	position: relative;
	line-height:1.5;
	color:#fff;
	font-size:4rem;
}
#teaser h2 .eng{
	display:block;
	font-size:1.6rem;
}

#teaser.whiteBg:before{content:none;}
#teaser.whiteBg h2{color:#111;}

@media screen and (max-width: 767px) {
	#teaser {
		height: 160px;
	}
	#teaser h2{font-size:3rem;}
	#teaser h2 .eng{font-size:1.4rem;}
#company #teaser{background-image:url(../img/company/teaser_sp.jpg);}
}

/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb{
	padding:20px 0;
	font-size:0;
}
#recipe_detail #breadcrumb{margin-top:30px;}
#breadcrumb a, #breadcrumb span{
	display: inline-block;
	vertical-align: middle;
	margin-right:15px;
	font-size:1.2rem;
	font-weight:bold;
}
#breadcrumb a.index{
	width:13px;
	height:13px;
	background:url(../img/common/ico_home.png) no-repeat center;
	background-size:13px;
}
#breadcrumb a + a:before,
#breadcrumb span:before{
	content:"/";
	margin-right:15px;
}

/*** タブレット ***/
@media screen and (max-width: 1380px) {
	.mainSlider .slick-dots {
		right: 50px;
		margin-right:0;
	}
}

@media screen and (max-width: 767px) {
	#mainVisual {
		padding:5px 0 0 0;
	}
	.mainSlider .item,
	.mainSlider .slick-track,
	.mainSlider .slick-slide,
	.mainSlider .item .bgImg{
		height: 390px;
	}
	.mainSlider .item .bgImg p {
		top: 0;
	}
	.bgImg01 {
		background-image: url(../img/top/mainslide_sp01.png);
	}
	#mainVisual .title{width:90%;}

	#breadcrumb.detail{
		position: relative;
		padding:40px 0 0;
	}
}


/* !contents
---------------------------------------------------------- */
#contents {
	transform:none;
	will-change: auto;
}

#main {
}

#side {
}
.inner {
	margin:0 auto;
	padding: 0 50px;
	max-width:1380px;
}

/*** タブレット ***/
@media screen and (max-width: 1280px) {
	.inner {padding: 0 30px;}
}

@media screen and (max-width: 767px) {
	.inner {padding: 0 15px;}
}

/* !pageTop
---------------------------------------------------------- */
.pageTop {

}


/* !footer
---------------------------------------------------------- */
.contactInfo{padding:30px 0 40px;}
.contactInfo li{
	display:flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding:0 20px;
	text-align: center;
}
.contactInfo li + li:before{
	content:"";
	position:absolute;
	left:0;
	top:50%;
	transform: translateY(-50%);
	width:1px;
	height:80px;
	background:#E5E3DB;
}
.contactInfo .tit{
	padding:40px 0 0;
	background-position: center top;
	background-repeat: no-repeat;
	background-size:auto 28px;
	letter-spacing: 0.06em;
	font-size:2rem;
	font-weight:bold;
}
.contactInfo .tit01{background-image:url(../img/common/ico_email_red.png);}
.contactInfo .tit02{background-image:url(../img/common/ico_tel_red.png);}
.contactInfo .tit03{background-image:url(../img/common/ico_fax_red.png);}
.contactInfo .email{
	display: block;
	margin:15px auto 0;
	padding:13px;
	max-width:240px;
	background:#E60012;
	border:1px solid #E60012;
	border-radius:5px;
	color:#fff;
	font-weight:bold;
}
.contactInfo .email:hover{
	background:transparent;
	color:#E60012;
}
.contactInfo .tel a{
	padding-left:30px;
	background:url(../img/common/ico_contact.png) no-repeat left center;
	font-size:3.4rem;
	font-weight:bold;
}
.contactInfo .tel_mini {
	display: flex;
	justify-content: center;
	align-items: center;
}
.contactInfo .tel_mini a{
	font-size:2rem;
	font-weight:bold;
}
.contactInfo .tel_mini span {
	font-size: 1.3rem;
}
.contactInfo .fax{
	font-size:2.8rem;
	font-weight:bold;
}
.contactInfo .time{
	margin-top:10px;
	font-size:1.2rem;
}

.pageTop{
	position: absolute;
	right:50%;
	top:60px;
	transform:translateX(640px);
}
#footer {
	position: relative;
	padding:60px 0 0;
	background:#fff;
	text-align: center;
}
#footLogo {
	margin-bottom:30px;
	color:#333333;
	font-size:1rem;
	font-weight:500;
}
#footLogo img{margin-bottom:10px;}
.footLinks{
	margin-bottom:60px;
	text-align:center;
}
.footLinks li a{color:#333333;}
.footLinks li a:hover{opacity:0.7;}
.footLinks ul{
	display:flex;
	justify-content: center;
}
.footLinks .level01 li{
	margin:0 35px 20px 0;
	font-weight: bold;
}
.footLinks .level01 li + li:before{
	content:"";
	display: inline-block;
	margin-right:35px;
	width:1px;
	height:16px;
	background:rgba(255,255,255,0.32);
}
.footLinks .level01 .eng{display:none;}
.footLinks .level02 li{
	padding:0 20px;
	font-size:1.4rem;
}
.footLinks .sns img{width:20px;}
#copyright{
	padding:24px 20px;
	border-top:1px solid #E8E8E8;
	text-align:center;
	letter-spacing: 0.06em;
	color:#BFBFBF;
	font-size:1.2rem;
	font-weight:500;
}
/*** タブレット ***/
@media screen and (max-width: 767px) {
	.contactInfo{padding:10px 0;}
	.contactInfo ul li{
		padding: 30px 20px;
		width:100%;
	}
	.contactInfo li + li:before{
		left: 50%;
		top: 0%;
		transform: translate(-50%, 0);
		width: 100px;
		height: 1px;
	}
	#footer{padding: 50px 0 0;}
	.footLinks{margin-bottom:50px;}
	.footLinks ul{
		display:block;
		text-align: left;
	}
	.footLinks .level01 li,
	.footLinks .level02 li{
		margin:0;
		padding:0;
	}
	.footLinks .level01 li + li{border-top:1px solid #E8E8E8;}
	.footLinks .level01 li + li:before{content:none;}
	.footLinks li a{
		display: block;
	}
	.footLinks .level01 li a{
		padding:13px 0;
		font-size:1.6rem;
	}
	.footLinks .level01 .eng{
		display:block;
		float:right;
		color:#E0E0E0;
		font-weight: 300;
		font-size: 1.4rem;
	}
	.footLinks .level02 li a{padding:5px 0;}
	.footLinks li .sns{
		float:right;
		margin-top:-30px;
	}
	.footLinks .sns img {
		width: 30px;
	}
	#copyright {
		padding: 20px 5px;
	}
	.pageTop{
		position: fixed;
		right:20px;
		top:inherit;
		bottom: 20px;
		transform:none;
		z-index: 1000;
	}
	.pageTop img {
		display: none;
	}
	.pageTop a {
		width: 50px;
		height: 50px;
		background: url("../img/common/pagetop.svg") no-repeat center center;
		background-size: 100% auto;
		display: block;
	}
}

/* !h(n)eading
---------------------------------------------------------- */
.hdL {
	line-height: 1;
	letter-spacing: 0.04em;
	text-align: center;
	font-size:3rem;
	font-weight: bold;
}
.hdL .eng{
	font-size:1.4rem;
}

.hdM {
	margin-bottom:60px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-size:3.2rem;
	font-weight: bold;
}
.hdM .hot{
	color:#E60012;
	font-size:6rem;
}
.hdM .con{
	display:inline-block;
	padding:0 30px;
	background:url(../img/common/ico_slash_left.png) no-repeat left 78%, url(../img/common/ico_slash_right.png) no-repeat right 78%;
}

.hdS {
	margin-bottom:30px;
	font-size:3.6rem;
	font-weight: bold;
}
.hdS:after{
	content:"";
	display: block;
	margin:30px 0 0;
	width:36px;
	height:1px;
	background:#333;
}
.style01 .hdS{
	text-align: center;
	font-size:3.2rem;
}
.style02 .hdS{
	font-size:2.6rem;
}
.style03 .hdS{
	text-align: center;
	font-size:2.8rem;
}
.style04 .hdS{
	font-size:2rem;
	margin-bottom: 15px;
}
.style04 .hdS::after {
	display: none;
}
.style01 .hdS:after,
.style02.text-center .hdS:after,
.style03 .hdS:after{
	margin: 20px auto 0;
}

.displaySP{display:none;}

/*** タブレット ***/
@media screen and (max-width: 767px) {

	.displayPC{display:none;}
	.displaySP{display:block;}

	.hdL { font-size:2.6rem; }
	.hdL .eng{font-size:1.2rem;}

	.hdM {
		margin-bottom: 40px;
		font-size: 1.8rem;
	}
	.hdM .hot { font-size: 3rem;}
	.hdM .con{
		padding: 0 20px;
		background-size:8px;
		background-position: left 68%, right 68%;
	}

	.hdS {
		margin-bottom:25px;
		font-size:3rem;
	}
	.hdS:after{
		margin:10px 0 0;
		width:32px;
	}
	.style01 .hdS{font-size:2.6rem; }


}



/* !common
---------------------------------------------------------- */
.col02 > li{
	float:left;
	width:50%;
}
.col03 > li{
	float:left;
	width:33.33%;
}
.col04 > li{
	float:left;
	width:25%;
}

.bgLightYellow{background-color:#FAF8F0;}

.full{width:100%;}


.imgBox{
	width: 100%;
	display: block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.imgBox img{
	width: 100%;
}

.btnlink{margin-top:20px;}
.btnlink a{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width:300px;
	height:64px;
	border:1px solid #333;
	border-radius:5px;
	font-weight: bold;
}
.btnlink a:hover{
	background:#333;
	color:#fff;
}
.btnlink a span {
	background:url(../img/common/ico_fax.svg) no-repeat center left;
	background-size: 12px 16px;
	padding-left: 20px;
}
.btnlink a:hover span {
	background:url(../img/common/ico_fax_white02.svg) no-repeat center left;
	background-size: 12px 16px;
}

.telLink{pointer-events:none;}

.colorRed{color:#E60012;}
.colorBlue{color:#0F419D;}

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

	.btnlink{text-align:center;}
	.btnlink a{
		height:60px;
	}

	.telLink{pointer-events:inherit;}
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
}

