@charset "utf-8";
/*******************************************
 	wrap
*******************************************/
#load{
	display:flex;
	display:-webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	align-items: center;
	-webkit-align-items: center;
	position:fixed;
	width:100%;
	height:100vh;
	background:#fff;
	z-index:999999;
	top:0;
	left:0;
}
#wrap-inner{
	background:url(/images/top/top_bg.jpg) no-repeat center top;
}
@media screen and (max-width: 640px) {
	#wrap-inner{
		padding:0 20px;
	}
	#load img{
		padding:0 0 13vh;
	}
}
/*******************************************
 	visual
*******************************************/
#visual{
	background:#F1F6F5;
	min-width:1180px;
	overflow:hidden;
}
#visual .chimg{
	visibility:hidden;
}
#visual li{
	position:relative;
	text-align:center;
}
#visual li dl{
	position:absolute;
	width:960px;
	top:20%;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
}
#visual li p{
	text-align:center;
}
#visual li dl dt{
	margin:0 0 10px;
}
#visual li dl dd{
	text-align:center;
	font-size:1.6rem;
	font-weight:bold;
	letter-spacing:3px;
}
#visual li dl dd a{
	display:inline-block;
	margin:15px 0 0;
	font-size:1.5rem;
}
#visual .bx-wrapper{
	position:relative;
	height:100%;
}
#visual .bx-pager{
	text-align:center;
	min-width:1180px;
	margin:auto;
	position:absolute;
	left:0;
	right:0;
	bottom:15px;
	z-index:8888;
}
#visual .bx-pager-item,
#visual .bx-pager-link{
	display:inline-block;
}
#visual .bx-pager-link{
	font-size:0;
	margin:0 5px;
}
#visual .bx-pager-link:after{
	content:"●";
	text-indent:0;
	font-size:1.2rem;
	color:#fff;
}
#visual .bx-pager-link.active:after{
	color:#388E3C;
}
#visual li p.mincho{
	position:absolute;
	top:40%;
	right:15%;
	margin:auto;
	text-align:right;
	font-size: 2.4rem;
    line-height: 1.3;
    letter-spacing: 2px;
    /*text-shadow:1px 1px 2px #fff, 1px 0px 2px #fff, 0px 1px 2px #fff, 0px 0px 2px #fff;*/
}
#visual #visual03 p.mincho{
	font-size:2.4rem;
	top:10%;
	text-align:left;
	right:auto;
	left:15%;
}
#visual .arw01:after{
	color:#fff;
	background:#388E3C;
}
#visual01 dt{
	font-size:6.6rem;
	text-align:center;
	line-height:1.2;
}
#visual01 dt span{
	font-size:2.0rem;
	line-height:2;
}
#visual #visual02 dl{
	position:absolute;
	top:auto;
	bottom:20%;
	left:50%;
	right:0;
}
#visual #visual02 dl dt{
	font-size:4.0rem;
	line-height:1.2;
	padding-left:.5em;
	text-indent:-.5em;
	margin:0 0 20px;
	color:#5390c7;
}
#visual #visual02 dl dd{
	font-size:1.5rem;
	line-height:1.8;
	text-align:left;
}
#visual #visual04 p.mincho{
	position:absolute;
	top:20%;
	right:10%;
}
#visual #visual05 p.mincho{
	position:absolute;
	top:10%;
	right:10%;
}
#visual #visual06 dl{
	top:20%;
}
#visual06 dt{
	font-size:4.0rem;
	text-align:center;
}
#visual06 dl dd{
	font-size:1.5rem;
	line-height:1.8;
	text-align:center;
}
#visual .slide-outer{
	position:relative;
	height:0;
	padding-top:45.25423728813559%;
	width:100%;
}
#visual .slide-inner{
	position:absolute;
	top:0;
	height:100%;
	width:100%;
	overflow:hidden;
}
@media screen and (max-width: 1500px) {
	#visual li dl{
		top:15%;
	}
}
@media screen and (max-width: 1300px) {
	#visual li dl{
		top:10%;
	}
}
@media screen and (max-width: 640px) {
	#visual,
	#visual li dl{
		width:100%;
		min-width:0;
	}
	#visual #visual06 dl{
		top:10%;
	}
	#visual .bx-pager{
		min-width:0;
	}
	#visual .slide-outer{
		padding-top:122.5%;
		height:0;
		position:relative;
	}
	#visual .slide-inner{
		position:absolute;
		top:0;
		width:100%;
		height:100%;
	}
	#visual .bx-wrapper{
		height:100%;
	}
	.bx-viewport{
	height:100%;
	}
	#visual #visual01 dl dt,
	#visual #visual06 dl dt{
		font-size:2.6rem;
		line-height:1.5;
		margin:0 0 5px;
	}
	#visual #visual01 dl dt span{
		line-height:1;
	}
	#visual #visual01 dl dd,
	#visual #visual06 dl dd{
		font-size:1.0rem;
	}
	#visual #visual02 dl{
		bottom:auto;
		top:7%;
		left:0;
		right:0;
	}
	#visual #visual02 dl dt,
	#visual #visual02 dl dd{
		width:95%;
		text-align:center;
		margin:0 auto;
	}
	#visual #visual02 dl dt{
		margin-bottom:5%;
		font-size:2.0rem;
	}
	#visual #visual02 dl dd{
		font-size:1.0rem;
	}
	#visual #visual04 p.mincho{
		text-shadow:1px 1px 1px #fff,
		-1px -1px 1px #fff,
		1px -1px 1px #fff,
		-1px 1px 1px #fff;
	}
	#visual li p.mincho,
	#visual #visual03 p.mincho,
	#visual #visual04 p.mincho,
	#visual #visual05 p.mincho{
		top:10%;
		left:0;
		right:0;
		margin:auto;
		text-align:center;
		font-size:2.0rem;
		line-height:1.8;
		letter-spacing: 3px;
	}
}
/*******************************************
 	box01
*******************************************/
#box01{
	padding:60px 0 80px;
}
#box01 .title01{
	margin:0 0 40px;
}
#box01 > p{
	font-size:1.4rem;
	text-align:center;
	line-height:2;
	margin:0 0 100px;
}
#box01 ul{
	padding:0 50px;
}
#box01 ul li{
	width:620px;
	margin:0 0 100px;
}
#box01 ul li + li{
	margin:0 0 0 460px;
}
#box01 ul li > .bg{
	background:#fff;
	background:rgba(255,255,255,0.75);
}
#box01 ul li dl{
	padding:70px 0;
	text-align:center;
}
#box01 ul li dt{
	display:inline-block;
	margin:0 0 25px;
}
#box01 ul li dd p{
	text-align:center;
}
#box01 ul li dd .mincho{
	font-size:2.3rem;
	margin:0 0 20px;
}
#box01 ul li dd .arw01{
	font-size:1.6rem;
}
#box01 ul li dd .arw01:after{
	height:16px;
	width: 14px;
	line-height:1.2;
    padding: 0 0 0 2px;
	border:1px solid #424242;
}
#box01 ul li:nth-child(1) dt{
	background:url(/common/images/bnr_saveur_ov.png) no-repeat top left;
}
#box01 ul li:nth-child(2) dt{
	background:url(/common/images/bnr_syunsetsu_ov.png) no-repeat top left;
}
#box01 ul li:nth-child(1) > .bg:hover{
	background:rgba(67,135,196,0.9);
}
#box01 ul li:nth-child(2) > .bg:hover{
	background:rgba(56,56,89,0.9);
}
#box01 ul li > .bg:hover dt{
	background-color:transparent;
}
#box01 ul li > .bg:hover dt img{
	visibility:hidden;
}
#box01 ul li > .bg:hover dd{
	color:#fff;
}
#box01 ul li > .bg:hover dd .arw01:after{
	border:1px solid #fff;
}
#box01 ul li .bnr{
	margin:20px 0 0;
}
#box01 ul li .bnr:hover{
	opacity:0.5;
}
@media screen and (max-width: 640px) {
	#box01 > p{
		text-align:left;
		margin:0 0 20px;
	}
	#box01 ul{
		padding:0;
	}
	#box01 ul li,
	#box01 ul li + li{
		margin:0 0 20px;
		width:100%;
	}
	#box01 ul li .bnr{
		margin:3% auto 6%;
		width:80%;
	}
}
/*******************************************
 	box02
*******************************************/
#box02{
	margin-bottom:110px;
	position:relative;
	z-index:2;
}
#box02 h3{
	margin:0 0 40px;
}
#box02 .cards.c03{
	padding:0 50px;
}
#box02 .cards.c03 > li{
	width:332px;
	margin:0 40px 0 0;
}
#box02 .cards.c03 > li:last-child{
	margin:0;
}
@media screen and (max-width: 640px) {
	#box02{
		margin-bottom:80px;
	}
	#box02 .cards.c03{
		padding:0 20px;
	}
	#box02 .cards.c03 > li{
		width:100%;
		margin:0 0 40px;
	}
	#box02 .cards.c03 .photo img{
		width:100%;
	}
}
/*******************************************
 	box03
*******************************************/
#box03{
	padding:0 0 40px;
}
#box03 h3{
	margin:0 0 40px;
}
#box03 p{
	width:280px;
	margin:0 auto;
}
#box03 p a{
	display:block;
	padding:14px;
	background:#212121;
	font-size:1.4rem;
	text-align:center;
	color:#fff;
	border-radius:4px;
}
#box03 .bloglist{
	padding:0 220px 30px;
	border-top:none;
}
#box03 .bloglist li{
	margin:0 0 20px;
	padding:0;
	border-bottom:none;
}
.bloglist dd{
	width:490px;
}
@media screen and (max-width: 640px) {
	#box03 .bloglist{
		padding:0;
		border-top:none;
	}
	#box03 p,
	.bloglist dd{
		width:100%;
	}
}
/*******************************************
 	movie
*******************************************/
#box04{
	margin-bottom:80px;
}
#box04 h3 {
    margin: 0 0 40px;
}
#box04 .panels{
	margin:0 0 30px;
}
#box04 .panels .panel{
	display:none;
	position:relative;
	height:0;
	width:854px;
	margin:0 auto;
	font-size:0;
	line-height:0;
	padding-top:480px;
	overflow:hidden;
}
#box04 .panels .panel iframe{
	position:absolute;
	top:0;
	width:100%;
	height:100%;
}
#box04 .panels .panel.on{
	display:block;
}
#box04 > div{
	background:rgba(255,255,255,0.75);
	padding:60px 20px 50px;
	text-align:center;
}
#box04 .tabs,
#box04 .tab,
#box04 .tab a{
	display:inline-block;
	font-size:1.6rem;
	vertical-align:middle;
}
#box04 .tab a{
	padding:10px 20px;
	border-right:1px solid #BDBDBD;
}
#box04 .tab:last-child a{
	border:none;
}
@media screen and (max-width: 640px) {
	#box04 > div{
		padding:10px;
	}
	#box04 .panels{
		margin:0 0 10px;
	}
	#box04 .panels .panel{
		width:100%;
		padding-top:56.20608899297424%;
	}
	#box04 .tabs,
	#box04 .tab,
	#box04 .tab a{
		display:block;
	}
	#box04 .tab a{
		border-right:0 solid #BDBDBD;
		border-bottom:1px solid #BDBDBD;
		text-align:center;
	}
}