@charset "UTF-8";
/*
 * CSS base.css
 */
/* ---------------------------------------
base
--------------------------------------- */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&subset=japanese');

body {
	color: #000;
	font-size: 15px;
	line-height: 1.8;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
	text-align: justify;
	letter-spacing: -0.001em;
	max-height: 999999px;
	-webkit-text-size-adjust: 100%;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	
}


a {
	color: #000;
	text-decoration: underline;
	transition: 0.3s;
}

a:hover, a:active, a:focus {
	text-decoration: none;
	transition: 0.3s;
}



/* ---------------------------------------
wrapper
--------------------------------------- */
.wrapper{

}
@media screen and (max-width: 1040px) {
	.wrapper{

	}
}


#header{
	height: 158px;
	width: 100%;
	background: #fff;
	padding-top: 17px;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	transition: 0.3s;
	text-align: center;
}
#header.is-scroll{
	height: 130px;
	padding-top: 10px;
	box-shadow: 0 1px 10px 0 rgba(0,0,0,0.2);
}
#header .logo{
	display: inline-block;
	vertical-align: middle;
	/*margin-right: 100px;*/
	position: absolute;
	top: 20px;
	left: 50%;
    margin-left: -115px;
	transition: 0.3s;
	z-index: 2000;
}
/*#header.is-scroll .logo{
	top: 10px;
}*/
#header.is-scroll .logo{
	top: 15px;
	margin-left: -85px;
}
#header .logo img{
	width: 273px;
	transition: 0.3s;
}
#header.is-scroll .logo img{
	width: 200px;
}
#header .other_nav{
	position: fixed;
	top: 0;
	right: 0;
	z-index: 20;
}
#header .btn_shop a{
	display: table;
	width: 126px;
	height: 126px;
	background: #E94056;
	color: #fff;
	/*-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;*/
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	border: 2px solid #E94056;
}
#header .btn_shop a:hover{
	background: #fff;
	color: #E94056;
}
#header .btn_shop a span{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
#header .btn_shop a span:before{
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	background: url(../svg/common/ico_shop.svg) no-repeat center;
	background-size: 100%;
	margin: 0 auto 10px;
}
#header .btn_shop a span:hover:before{
	background: url(../svg/common/ico_shop_h.svg) no-repeat center;
	background-size: 100%;
}
#header .btn_home a{
	display: table;
	width: 126px;
	height: 126px;
	background: #5B332C;
	color: #fff;
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	border: 2px solid #5B332C;
}
#header .btn_home a:hover{
	background: #fff;
	color: #5B332C;
}
#header .btn_home a span{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
#header .btn_home a span:before{
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	background: url(../svg/common/ico_home.svg) no-repeat center;
	background-size: 100%;
	margin: 0 auto 10px;
}
#header .btn_home a span:hover:before{
	background: url(../svg/common/ico_home_h.svg) no-repeat center;
	background-size: 100%;
}
@media screen and (max-width: 1400px){
	#header .logo{
		margin-left: -206px;
	}
	#header.is-scroll .logo{
		top: 20px;
		margin-left: -125px;
	}
}
@media screen and (max-width: 1300px){
	#header{
		height: 135px;
	}
	#header .logo{
		margin-left: -150px;
	}
	#header .logo img{
		width: 230px;
	}
}
@media screen and (max-width: 1200px){
	#header{
		height: 125px;
	}
	#header .logo{
		margin-left: -160px;
	}
	#header .logo img{
		width: 200px;
	}
}
@media screen and (max-width: 1040px){
	/*#header{
		height: 120px!important;
		padding-top: 15px!important;
		box-shadow: none!important;
	}*/
	#header.is-scroll{
		height: 100px;
		box-shadow: 0 1px 10px 0 rgb(0 0 0 / 20%);
	}
	#header.is-scroll .logo img {
		width: 150px;
	}
	#header .logo{
		margin-left: -100px!important;
		top: 15px;
	}
	/*#header .logo img{
		width: 200px!important;
	}*/
	#header .btn_shop{
		display: none;
	}
	#header .btn_home{
		display: none;
	}
}
@media screen and (max-width: 767px) {
	#header{
		height: 100px;
		padding-top: 15px!important;
		text-align: left;
	}
	#header .logo{
		margin-left: 0!important;;
		left: 30px;
	}
	/*#header.is-scroll .logo{
		top: 12px;
	}*/
	#header .logo img{
		width: 160px!important;
	}
	/*#header.is-scroll .logo img{
		width: 170px;
	}*/
}
@media screen and (max-width: 479px) {
	#header{
		height: 80px!important;
		padding-top: 0px!important;
		text-align: left;
	}
	#header .logo{
		margin-left: 0!important;;
		top: 9px;
		left: 25px;
	}
	#header .logo img{
		width: 140px!important;
	}
	#header.is-scroll .logo{
		top: 10px;
	}
}

#gnav{
	display: inline-block;
	vertical-align: middle;
	padding-top: 67px;
	position: relative;
	/*top: 67px;*/
/* 	z-index: 2000; */
	/*margin-right: 100px;*/
}
#header.is-scroll #gnav{
	padding-top: 58px;
}
#header .gnav_in{
	/*padding-top: 100px;*/
	transition: 0.3s;
}
/*#header.is-scroll .gnav_in{
	padding-top: 40px;
}*/
#gnav .navlist{
	text-align: center;
	position: relative;
}
#gnav .navlist>li{
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 10px;
	margin: 0 5px;
	-webkit-transition: 0.3s; -moz-transition : 0.3s; transition : 0.3s;
}
/*#gnav .navlist>li.nav7{
	display: none;
}*/
/*#gnav .navlist>li:nth-child(4){
	margin-right: 330px;
}*/
#gnav .navlist>li>a,
#gnav .navlist>li>span{
	display: block;
	text-decoration: none;
	font-weight: bold;
	font-size: 15px;
	position: relative;
	z-index: 1;
}
#gnav .navlist>li>a:hover{
	opacity: 0.7;
}
#gnav .navlist>li.nav5{
	line-height: 1.5;
}
#gnav .navlist>li.nav12{
	line-height: 1.5;
	margin-right: 360px;
}
#header.is-scroll #gnav .navlist>li.nav12{
	margin-right: 290px;
}
#gnav .navlist>li.nav9{
	position: fixed;
	top: 0;
	right: 0;
	margin: 0;
}
#gnav .navlist>li.nav9>a{
	background: #E94056;
	color: #fff;
	line-height: 1.5;
	padding: 25px;
	border: 2px solid #E94056;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#gnav .navlist>li.nav9>a:hover{
	opacity: 1;
	background: #fff;
	color: #E94056;
}
#gnav .navlist>li.nav9>a:before{
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	background: url(../svg/common/ico_shop.svg) no-repeat center;
	background-size: 100%;
	margin: 0 auto 5px;
}
#gnav .navlist>li.nav9>a:hover:before{
	background: url(../svg/common/ico_shop_h.svg) no-repeat center;
	background-size: 100%;
}
#gnav .navlist>li.nav10{
	position: fixed;
	top: 130px;
	right: 0;
	margin: 0;
}
#gnav .navlist>li.nav10>a{
	background:#ACDB7A;
	color: #fff;
	line-height: 1.5;
	padding: 25px;
	border: 2px solid #ACDB7A;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: 130px;
	display: flex; align-items: center; justify-content: center;
}
#gnav .navlist>li.nav10>a:hover{
	opacity: 1;
	background: #fff;
	color: #ACDB7A;
}
#gnav .navlist>li.nav11{
	position: fixed;
	top: 260px;
	right: 0;
	margin: 0;
}
#gnav .navlist>li.nav11>a{
	color: #fff;
	line-height: 1.5;
	padding: 25px;
	border: 2px solid #b278d8;
	background:#b278d8;
	color: #f5e5ff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: 130px;
	display: flex; align-items: center; justify-content: center;
}
#gnav .navlist>li.nav11>a:hover{
	opacity: 1;
	color: #b278d8;
	background: #f5e5ff;
}

/*#gnav .navlist>li>a:before{
	content: "";
	width: 0;
	height: 12px;
	background: rgba(233,64,86,0.5);
	position: absolute;
	bottom: 1px;
	left: -5px;
	z-index: -1;
	transition: 0.3s ease-in-out;
}
#gnav .navlist>li>a:hover:before{
	width: calc(100% + 10px);
}*/
#gnav .gnav_sub{
	display: none;
	background: rgba(233,64,86,0.95);
	text-align: left;
	padding: 30px 25px;
	position: absolute;
	top: 45px;
	margin-left: -44px;
}
#gnav .navlist>li.nav3 .gnav_sub{ margin-left: -80px; }
#gnav .navlist>li.nav4 .gnav_sub{ margin-left: -64px; }
#gnav .gnav_sub:before{
	content: "";
	display: block;
	border: 10px solid transparent;
	border-bottom: 10px solid rgba(233,64,86,0.9);
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -10px;
}
#gnav .gnav_sub ul li{
	margin-bottom: 3px;
}
#gnav .gnav_sub ul li:last-child{
	margin-bottom: 0;
}
#gnav .gnav_sub ul li a{
	display: inline-block;
	color: #fff;
	font-weight: bold;
	font-size: 1.06em;
}
@media screen and (max-width: 1400px){
	#gnav{
		margin-right: 100px;
	}
}
@media screen and (max-width: 1300px){
	#gnav{
		padding-top: 58px;
	}
	#header.is-scroll #gnav{
		padding-top: 50px;
	}
	#gnav .navlist>li>a,
	#gnav .navlist>li>span{
		font-size: 1em;
	}
	#gnav .navlist>li.nav12{
		margin-right: 290px;
	}
}
@media screen and (max-width: 1200px){
	#gnav{
		padding-top: 50px;
	}
	#gnav .navlist>li>a{
		font-size: 0.9em;
	}
	#gnav .navlist>li.nav4{
		margin-right: 220px;
	}
	#gnav .navlist>li.nav9>a{
		padding: 18px;
	}
	/*#gnav .navlist>li:nth-child(4){
		margin-right: 270px;
	}*/
	#gnav .navlist>li.nav10{
		top: 112px;
	}
	#gnav .navlist>li.nav10>a{
		padding: 18px;
		height: 112px;
	}
	#gnav .navlist>li.nav11{
		top: 224px;
	}
	#gnav .navlist>li.nav11>a{
		padding: 18px;
		height: 112px;
	}
}
@media screen and (max-width: 1040px){
	#gnav{
		height: 100%;
		background: #3B1F0C;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		padding-top: 0!important;
		margin-right: 0;
		z-index: 3000;
	}
	#gnav .gnav_in{
		padding: 60px 0;
		overflow-y: auto;
		-ms-overflow-style:none;
	}
	#gnav .gnav_in::-webkit-scrollbar{
		display: none;
	}
	#gnav .navlist>li{
		display: block;
		padding-bottom: 0;
		margin: 0 0 15px;
	}
	#gnav .navlist>li.nav5 { line-height:inherit; font-size:1em; }
	#gnav .navlist>li.nav5 br { display:none; }
	#gnav .navlist>li.nav7{
		display: block;
	}
	#gnav .navlist{
		padding-top: 0;
	}
	#gnav .navlist>li:nth-child(4){
		margin-right: 0!important;
	}
	#gnav .navlist>li:nth-child(5){
		margin-right: 0!important;
	}
	#gnav .navlist>li>a,
	#gnav .navlist>li>span{
		color: #fff;
		font-size: 18px;
	}
	#gnav .navlist>li.nav9{
		position: static;
	}
	#gnav .navlist>li.nav9>a{
		display: inline-block;
		padding: 10px 15px;
	}
	#gnav .navlist>li.nav10{
		position: static;
		margin-top: 15px;
	}
	#gnav .navlist>li.nav10>a{
		display: inline-block;
 		padding: 10px 9px;
		 height: auto;
		/*:color: #fff;
		background: #3B1F0C;
		border: none;*/
	}
	#gnav .navlist>li.nav11{
		position: static;
		margin-top: 15px;
		margin-bottom: 30px;
	}
	#gnav .navlist>li.nav11>a{
		color: #fff;
		line-height: 1.8;
		padding: 0;
		border: none;
		background: transparent;
		height: auto;
		display: inline-block;
	}
	#gnav .navlist>li.nav11>a:hover{
		opacity: .8;
		background:transparent;
		color: #fff;
	}
	
	#gnav .navlist>li.nav9>a:before{
		display: inline-block;
		margin: -8px 15px 0 0;
		vertical-align: middle;
	}
	#gnav .navlist>li>a:before{
		display: none;
	}
	#gnav .gnav_sub{
		display: block;
		background: none;
		text-align: center;
		padding: 0;
		position: static;
		margin-left: 0!important;
		line-height: 1.6;
		margin-top: 5px;
	}
	#gnav .gnav_sub:before{
		display: none;
	}
	#gnav .gnav_sub ul li a{
		font-size: 18px;
		text-decoration: none;
		font-weight: normal;
	}
}
@media screen and (max-width: 639px) {
	#gnav .gnav_sub ul li a{
		font-size: 1em;
	}
	#gnav .navlist>li>a,
	#gnav .navlist>li>span{
		font-size: 1em;
	}
	#gnav .navlist>li.nav10>a {
   	 padding: 10px 13px;
	}

}

.btn_menu1 { display: none; }
@media screen and (max-width: 1040px){
	.btn_menu1 {
		display: inline-block;
		box-sizing: border-box;
		position: fixed;
		top: 0px;
		right: 100px;
		z-index: 2000;
	}
	.btn_menu1 a {
		display: flex; align-items: center; justify-content: center;
		background: #ACDB7A;
		color: #fff;
		line-height:1.3;
		border: 1px solid #ACDB7A;
		width: 100px;
		height: 100px;
		box-sizing: border-box;
		text-decoration: none;
		font-weight: bold;
		text-align: center;
		/*
		cursor: pointer;
		*/		
	}
	.btn_menu1 a:hover {
		background: #fff;
		color: #ACDB7A;
	}
}

.btn_menu2 { display: none; }
@media screen and (max-width: 1040px){
	.btn_menu2 {
		display: inline-block;
		box-sizing: border-box;
		position: fixed;
		top: 100px;
		right: 0;
		z-index: 2000;
	}
	.btn_menu2 a {
		display: flex; align-items: center; justify-content: center;
		background: #b278d8;
		color: #fff;
		line-height:1.3;
		border: 1px solid #b278d8;
		width: 100px;
		height: 60px;
		box-sizing: border-box;
		text-decoration: none;
		font-weight: bold;
		text-align: center;
		/*
		cursor: pointer;
		*/		
	}
	.btn_menu2 a:hover {
		background: #fff;
		color: #b278d8;
	}
}


.btn_menu { display: none; }
@media screen and (max-width: 1040px){
	.btn_menu,
	.btn_menu span{
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.btn_menu{
		position: fixed;
		top: 0px;
		right: 0px;
		width: 100px;
		height: 100px;
		z-index: 10000;
		cursor: pointer;
		background: #3B1F0C;
		font-weight: bold;
		color:#fff;
		line-height:1.3;
		padding-top:30px;
		box-sizing: border-box;
		text-align: center;

	}
	.btn_menu span{
		position: absolute;
		right: 30px;
		width: 40px; height: 1px;
		background: #000;
		opacity: 0;
	}
	.btn_menu span.txt1 {
		font-size:11px;
		position: static;
		opacity: 1;
		width: 100%;
		height: auto;
		margin-left: 0;
		background: 0;
	}
	.btn_menu span.txt2 {
		font-size:17px;
		position: static;
		height: auto;
		opacity: 1;
		width: 100%;
		margin-left: 0;
		background: 0;
	}
	.btn_menu.is-active span{
		background: #fff;
		opacity: 1;
	}
	.btn_menu.is-active span.txt1,
	.btn_menu.is-active span.txt2 { display: none; }
	.btn_menu span:nth-of-type(1){
		top: 40%; 
		-webkit-transform: translateY(8px) translateX(0) rotate(-45deg);
		transform: translateY(8px) translateX(0) rotate(-45deg);
	}
	.btn_menu span:nth-of-type(2){
		top: 60%;
		-webkit-transform: translateY(-12px) translateX(0) rotate(45deg);
		transform: translateY(-12px) translateX(0) rotate(45deg);
	}
	@-webkit-keyframes active-menu-bar{
		100%{ height: 0; }
	}
	@keyframes active-menu-bar{
		100%{ height: 0; }
	}
}
@media screen and (max-width: 479px) {
	.btn_menu{
		width: 80px;
		height: 80px;
		padding-top:20px;
		letter-spacing: -0.05em;
	}
	.btn_menu span{
		right: 20px;
	}
	.btn_menu span.txt2 {
		font-size:16px;
		}
	.btn_menu span:nth-of-type(1){
		-webkit-transform: translateY(6px) translateX(0) rotate(-45deg);
		transform: translateY(6px) translateX(0) rotate(-45deg);
	}
	.btn_menu span:nth-of-type(2){
		-webkit-transform: translateY(-10px) translateX(0) rotate(45deg);
		transform: translateY(-10px) translateX(0) rotate(45deg);
	}
	.btn_menu1{
		right: 80px;
	}
	.btn_menu1 a {
		width: 80px;
  		height: 80px;
		font-size: 12px;
	}
	.btn_menu2{
		right: 0; top: 80px;
	}
	.btn_menu2 a {
		width: 80px;
  		height: 60px;
		font-size: 12px;
	}
}



#content{
	min-height: 400px;
	margin-top: 158px;
	transition: 0.3s;
}
/*#content.is-scroll{
	margin-top: 100px;
}*/
@media screen and (max-width: 1300px){
	#content{
		margin-top: 135px;
	}
}
@media screen and (max-width: 1200px){
	#content{
		margin-top: 125px;
	}
}
@media screen and (max-width: 1040px){
	#content{
		margin-top: 125px;
	}
}
@media screen and (max-width: 767px) {
	#content{
		min-height: 1px;
		margin-top: 100px;
	}
}
@media screen and (max-width: 479px){
	#content {
	    margin-top: 80px;
	}
}
#cnt_main{
	min-height: 300px;
	background: url(../img/common/bg1.png) repeat center;
}
@media screen and (max-width: 1040px){
	
}
@media screen and (max-width: 767px){
	#cnt_main{
		min-height: 1px;
	}
}

#footer{
	padding-top: 30px;
}
#footer .logo{
	margin-left: 60px;
	margin-bottom: 20px;
}
#footer .logo img{
	width: 383px;
}
#footer .f_bottom{
	background: #F5F4F3;
	text-align: center;
	padding: 20px;
}
#footer #f_nav{
	display: inline-block;
}
#footer #f_nav .navlist{
	text-align: center;
}
#footer #f_nav .navlist li{
	display: inline-block;
	vertical-align: middle;
	margin: 0 6px;
}
#footer #f_nav .navlist li a{
	text-decoration: none;
	font-weight: bold;
}
#footer #f_nav .navlist li.ico_fb{
	position: relative;
	top: -3px;
}
#footer #f_nav .navlist li.ico_fb img{
	width: 12px;
}
#footer #f_nav .navlist li.ico_insta{
	position: relative;
	top: -2px
}
#footer #f_nav .navlist li.ico_insta img{
	width: 23px;
}
#footer #f_nav .navlist li.ico_twitter{
	position: relative;
	top: -4px
}
#footer #f_nav .navlist li.ico_twitter img{
	width: 23px;
}
#footer .copyright{
	display: inline-block;
	/*font-size: 0.9em;*/
	position: relative;
	top: 2px;
	margin-left: 20px;
}

@media screen and (max-width: 1040px){
	#footer{
		margin-bottom: 64px;
	}
	#footer #f_nav .navlist li.pccnt{
		display: none;
	}
}
@media screen and (max-width: 767px) {
	#footer{
		padding-top: 20px;
	}
	#footer .logo{
		margin-left: 20px;
		margin-bottom: 20px;
	}
	#footer .logo img{
		width: 220px;
	}
}

@media screen and (max-width: 479px){
	#footer{
		margin-bottom: 54px;
	}
}





#footer #pagetop{
	position: fixed;
	/*bottom: 210px;*/
	bottom: 30px;
	right: 60px;
	-webkit-transform: translateY(130px) translateX(0);
	transform: translateY(130px) translateX(0);
	transition: 0.4s;
	z-index: 20;
}
#footer #pagetop.is-animation{
	-webkit-transform: translateY(0) translateX(0);
	transform: translateY(0) translateX(0);
}
#footer #pagetop.is-fixed{
	bottom: 135px;
}
#footer #pagetop a img{
	width: 72px;
}
@media screen and (max-width: 1040px){
	#footer #pagetop{
		display: none;
		bottom: 30px;
		right: 30px;
	}
}
@media screen and (max-width: 767px){
	#footer #pagetop{
		bottom: 20px;
		right: 20px;
	}
	#footer #pagetop.is-fixed{
		bottom: 115px;
	}
	#footer #pagetop a img{
		width: 50px;
	}
}


#footer .tablet_btn_wrap{
	display: none;
}
@media screen and (max-width: 1040px){
	#footer .tablet_btn_wrap{
		display: block;
	}
	#footer .tablet_btn{
		width: 101%;
		height: 64px;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index:10000;
	}
	#footer .tablet_btn .btn{
		float: left;
		display: table;
		width: 42%;
		height: inherit;
	}
	#footer .tablet_btn .btn a{
		display: table-cell;
		height: inherit;
		text-decoration: none;
		background: #E94056;
		color: #fff;
		font-weight: bold;
		font-size: 1em;
		text-align: center;
		vertical-align: middle;
	}
	#footer .tablet_btn .btn._2 a{
		background: #5B332C;
	}
	#footer .tablet_btn .btn._2 a br{
		display: none; 
	}
	#footer .tablet_btn .btn._1 a:before{
		content: "";
		display: inline-block;
		width: 21px;
		height: 21px;
		background: url(../svg/common/ico_shop.svg) no-repeat center;
		background-size: 100%;
		position: relative;
		top: 5px;
		margin-right: 6px;
	}
	#footer .tablet_btn .btn._2 a:before{
		content: "";
		display: inline-block;
		width: 21px;
		height: 20px;
		background: url(../svg/common/ico_home.svg) no-repeat center;
		background-size: 100%;
		position: relative;
		top: 5px;
		margin-right: 6px;
	}
	#footer .tablet_btn .tablet_pagetop{
		float: left;
		display: table;
		width: 16%;
		height: inherit;
	}
	#footer .tablet_btn .tablet_pagetop a{
		display: table-cell;
		height: inherit;
		background: #DED6D5;
		text-align: center;
		vertical-align: middle;
		line-height: 1;
	}
	#footer .tablet_btn .tablet_pagetop a img{
		width: 21px;
	}
}
@media screen and (max-width: 767px){
	#footer .tablet_btn .btn a{
		font-size: 0.8em;
	}
}
@media screen and (max-width: 479px){
	#footer .tablet_btn{
		height: 54px;
	}
	#footer .tablet_btn .btn a{ font-size: 0.76em; line-height: 1.6; }
	#footer .tablet_btn .btn._1 a:before,
	#footer .tablet_btn .btn._2 a:before{ content: none; }
	#footer .tablet_btn .btn._2 a br{
		display: block; 
	}
}