@charset "utf-8";

/* ------------ */
/* デザイン共通 */
/* ------------ */

*,
*::before,
*::after{
	box-sizing:border-box;
}
html,body,div,span,applet,object,iframe,strong,h1,h2,h3,h4,h5,h6,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,ins,kbd,q,s,samp,small,strike,sub,sup,tt,var,fieldset,form,legend,caption,tbody,tfoot,thead,table,label,tr,th,td,p,img,figure,ul,dl,dt,dd{
	margin:0;
	padding:0;
	border:none;	
}
body{
	overflow-y:scroll;
	background:#fff;
	color:#000;
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	line-height:1.75;
	-webkit-text-size-adjust:100%;
}
#wrapper {
	display:none;
}
#load {
	position:fixed;
	width:100vw;
	height:100vh;
	background:url('images/hokke_gourmet/intro/intro_bg.png') 50% 50% no-repeat;
}

a{
	text-decoration:none;
	-webkit-transition: 0.5s ease-out;
	-moz-transition: 0.5s ease-out;
	-ms-transition: 0.5s ease-out;
	transition: 0.5s ease-out;
}
a:hover{
	opacity:0.65;
}
img{
	vertical-align:top;
	max-width:100%;
	height:auto;
}

@media screen and (max-width:767px) {
	html{ font-size:14px; }
	.sp_none{ display:none !important; }
}
@media print,screen and (min-width:768px) {
	html{ font-size:16px; }
	.pc_tab_none{ display:none !important; }
}
@media print,screen and (min-width:768px) and (max-width:1024px) {
	.tab_none{ display:none !important; }
}
@media print,screen and (min-width:1025px) {
	.pc_none{ display:none !important; }
}

/* ------------------------- */
/* コンテンツ　スクロールで出現用 */
/* ------------------------- */
@media print,screen and (min-width:768px) {
	.fadein {
		opacity:0 !important;
		transform: translate(0,40px); 
		-webkit-transition: 0.8s ease-out;
		-moz-transition: 0.8s ease-out;
		-ms-transition: 0.8s ease-out;
		transition: 0.8s ease-out;
	}
	.scrollin {
		transform: translate(0,0); 
		opacity:1 !important;
	}
}


/* ------ */
/* header */
/* ------ */
header {
	display:flex;
	justify-content:space-between;
	aline-items:flex-end;
	position:absolute;
	top:0;
	right:0;
	left:0;
	z-index:20;
	width:100%;
	height:100px;
}

header h1 {
	maring:0;
	padding:1.25rem 0 0 1.25rem;
}

@media screen and (max-width:767px) {
	
}
@media screen and (min-width:768px) {
	
}
@media screen and (min-width:1200px) {
	
}

/* ---- */
/* main */
/* ---- */
main{
	display: block;
	position: relative;
	top:0;
	z-index: 1;
}
main,
main *{ box-sizing: border-box; }

section strong {
	color:#ba272d;
	font-size:1.25rem;
}

section a.bnr {
	display:inline-block;
	width:97%;
	clear:both;
	box-shadow:15px 15px 0 0 rgba(255,255,255,0.9);
}

section .text p { margin-bottom:1em; }
section .text p:last-child { margin-bottom:0; }

/* ----------- */
/* main visual */
/* ----------- */

#main_visual {
	position:relative;
	width:100%;
	height:100vh;
	text-align:center;
	background:url('images/hokke_gourmet/main_visual/main_visual_bg.jpg');
	background-size:cover;
	background-attachment:fixed;
	overflow:hidden;
}
#main_visual::before,
#main_visual::after,
#main_visual > * {
	display:block;
	position:absolute;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	margin:0 auto;
	padding:0;
}

#main_visual::before {
	content:"";
	top:0;
	z-index:1;
	height:100%;
	background:rgba(0,0,0,0.2);
}
#main_visual::after {
	content:"";
	z-index:10;
	height:10vh;
	background:url('images/wave_msk.png') repeat-x;
}
#main_visual h1 {
	bottom:-3rem;
	z-index:5;
	height:90vh;
	background:url('images/hokke_gourmet/main_visual/main_visual_img.png') 50% 100% no-repeat;
	background-size:200%;
	opacity:0;
}
#main_visual .scroll_arrow {
	display:none;
	bottom:1.5rem;
	z-index:20;
	width:auto;
}

/* ------------ */
/* introduction */
/* ------------ */

#introduction {
	position:relative;
	padding:7rem 0 5rem;
	text-align:center;
	background:url('images/hokke_gourmet/intro/intro_bg.png') 50% 50% no-repeat;
	overflow:hidden;
}

#introduction h1 {
	display:inline-block;
	min-height:10em;
	margin:auto;
	color:#ba272d;
	text-align:left;
	vertical-align:top;
	font-size:3.25rem;
	font-weight:normal;
	font-family: serif;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

#introduction figure {
	position:absolute;
	top:5rem;
	width:270px;
}
#introduction figure:nth-of-type(1) { right:calc(50% + 480px); }
#introduction figure:nth-of-type(2) { right:calc(50% + 190px); }
#introduction figure:nth-of-type(3) { left:calc(50% + 190px); }
#introduction figure:nth-of-type(4) { left:calc(50% + 480px); }

/* ------ */
/* excuse */
/* ------ */
/* ------- */
/* gourmet */
/* ------- */

#excuse_area {
	position:relative;
	padding-bottom:15rem;
	background:url('images/hokke_gourmet/excuse/excuse_bg.jpg') 50% 50% no-repeat;
	background-size:cover;
	background-attachment:fixed;
	overflow:hidden;
}

#excuse_area::before,
#excuse_area::after {
	display:block;
	content:"";
	position:absolute;
	z-index:10;
	width:100%;
	height:120px;
}
#excuse_area::before {
	top:0;
	background:url('images/wave_msk_r.png') repeat-x;
}
#excuse_area::after {
	bottom:0;
	background:url('images/wave_msk.png') repeat-x;
}

#excuse_area section {
	position:relative;
	z-index:20;
	width:100%;
	margin:0 auto;
}
#excuse_area section h1 {
	width:100%;
	height:9em;
	padding:2.5em 1em 3.5em;
	color:#fff;
	line-height:1.2em;
	text-align:center;
	font-size:3rem;
	background:url('images/hokke_gourmet/excuse/excuse_title_back.png') 50% 50% no-repeat;
	background-size:cover;
}
#excuse_area section article {
	width:95%;
	margin:2rem auto;
	text-align:left;
}
#excuse_area section article h2,
#gourmet_area section h2 {
	margin-bottom:1em;
	color:#ba272d;
	line-height:1.2em;
	font-size:2.75rem;
	font-weight:normal;
}


#excuse_area section article .img figure { width:100%; margin-bottom:1rem; }

#gourmet_area { overflow:hidden; }

#gourmet_area section {
	position:relative;
	width:95%;
	margin:0 auto;
	padding-bottom:3rem;
	
}
#gourmet_area section h1 {
	width:100%;
	height:9em;
	margin-bottom:3rem;
	padding:2em 1em 4em;
	color:#fff;
	line-height:1.2em;
	text-align:center;
	font-size:3rem;
	background:url('images/hokke_gourmet/gourmet/gourmet_title_back.png') 50% 50% no-repeat;
	background-size:cover;
}
#gourmet_area section .text { width:100%; }
#gourmet_area section a.bnr { margin-top:5rem; box-shadow:15px 15px 0 0 rgba(225,225,225,0.9); }

/* ------------------- */
/* hokke & izushi 共通 */
/* ------------------- */

#hokke_area section,
#izushi_area section {
	/*display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:flex-start;
	*/
	width:95%;
	margin:0 auto;
}
#hokke_area section h1,
#izushi_area section h1 {
	margin-bottom:0.3em;
	padding:0;
	line-height:1.5em;
	font-size:3rem;
}

#hokke_area section h1 {
	color:#ff3;
	background:url('images/hokke_gourmet/hokke/hokke_title_back.png') 100% 50% no-repeat;
	background-size:contain;
}
#izushi_area section h1 {
	color:#ba272d;
	background:url('images/hokke_gourmet/izushi/izushi_title_back.png') 100% 50% no-repeat;
	background-size:contain;
}
#hokke_area section h1 > span,
#izushi_area section h1 > span { font-size:1.25em; }

#hokke_area section > figure,
#izushi_area section > figure {
	position:relative;
	width:100%;
	margin:0 auto;
}
#hokke_area section > figure >.img,
#izushi_area section > figure >.img {
	margin:0;
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
}

#hokke_area section > figure.catch_img,
#izushi_area section > figure.catch_img { width:100%; }

#hokke_area section > figure.catch_img { margin:0 auto 1rem; }
#izushi_area section > figure.catch_img { padding-top:6rem; margin:0 2% 0 0; }

#hokke_area section > figure:nth-of-type(2),
#hokke_area section > figure:nth-of-type(3),
#izushi_area section > figure:nth-of-type(2),
#izushi_area section > figure:nth-of-type(3){ margin-bottom:2rem; }
#hokke_area section > .index,
#izushi_area section > .index { width:100%; }
#hokke_area section > .index strong { color:#ff6; }

#hokke_area section figure img,
#izushi_area section figure img { position:relative; z-index:5; }

#hokke_area section figure figcaption,
#izushi_area section figure figcaption {
	display:block;
	position:relative;
	z-index:10;
	margin:1rem auto 2rem;
	padding:1em;
	line-height:1.5em;
	background:#fff;
	border-radius:5px;
}
#hokke_area section figure figcaption p,
#izushi_area section figure figcaption p {
	width:94%;
	margin:auto;
	padding:0;
}
#hokke_area section figure figcaption::before,
#izushi_area section figure figcaption::before {
	display:block;
	content:"";
	position:absolute;
	top:-1.5rem;
	right:0;
	left:0;
	z-index:20;
	width:0;
	height:0;
	margin:auto;
	border-bottom:#fff 1.5rem solid;
	border-right:transparent 1rem solid;
	border-left:transparent 1rem solid;
}

/* ----- */
/* hokke */
/* ----- */

#hokke_area {
	position:relative;
	padding:180px 0;
	color:#fff;
	background:url('images/hokke_gourmet/hokke/hokke_bg.jpg') 50% 50% no-repeat;
	background-size:cover;
	background-attachment:fixed;
	overflow:hidden;
}
#hokke_area + aside {
	padding:3rem 0;
	text-align:center;
}
#hokke_area::before {
	display:block;
	content:"";
	position:absolute;
	top:0;
	width:100%;
	height:120px;
	background:url('images/wave_msk_r.png') repeat-x;
}

#hokke_area::after {
	display:block;
	content:"";
	position:absolute;
	z-index:10;
	width:100%;
	height:120px;
	bottom:0;
	border-left:transparent 100vw solid;
	/*border-bottom:#fff 120px solid;*/
}

#hokke_area section figure figcaption { color:#333; }


#hokke_area section a.bnr { margin:5rem 0 15rem; }


/* ------ */
/* izushi */
/* ------ */

#izushi_area {
	position:relative;
	background:url('images/hokke_gourmet/izushi/izushi_bg.jpg') 50% 50% no-repeat;
	background-size:cover;
	background-attachment:fixed;
	overflow:hidden;
}
#izushi_area::before {
	display:block;
	content:"";
	width:100%;
	border-right:transparent 100vw solid;
	/*border-top:#fff 120px solid;*/
	border-top:transparent 120px solid;
}
#izushi_area::after {
	display:block;
	content:"";
	position:absolute;
	z-index:10;
	width:100%;
	height:120px;
	bottom:0;
	background:url('images/wave_msk.png') repeat-x;
}

#izushi_area section a.bnr { margin:5rem 0 15rem; }

/* ------- */
/* line up */
/* ------- */

#line_up {
	position:relative;
	padding-bottom:5rem;
	overflow:hidden;
}

#line_up section {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:flex-start;
	width:95%;
	margin:0 auto;
	line-height:1;
}
#line_up section h1 {
	margin:0 0 3rem;
	padding:0;
}
#line_up section h1 img { width:100%; }
#line_up section article {
	width:100%;
	margin-bottom:3rem;
}
#line_up section article h2 {
	margin:1.5em auto 0.5em;
	text-align:center;
}
#line_up section article p {
	margin:0;
	text-align:center;
	font-size:1.25rem;
}
#line_up section article a {
	display:block;
	width:90%;
	margin:1rem auto 0;
	padding:1rem;
	color:#fff;
	text-align:center;
	font-size:1.23rem;
	background:#ba272d;
	border-radius:1rem;
}

#line_up .contact {
	width:100%;
	text-align:center;
	
}

/* ------ */
/* footer */
/* ------ */
footer{
	padding:0.75rem 0;
	color:#fff;
	line-height:1;
	background:#000;
}

footer .footer_area {
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:95%;
	margin:0 auto;
}

footer .footer_area nav {
	width:60%;
	text-align:left;
}
footer .footer_area nav a {
	display:inline-block;
	margin:0 0 0.5rem;
	color:#fff;
}

footer .footer_area .copy {
	width:35%;
	text-align:right;
	font-size:0.75rem;
}

@media screen and (max-width:767px) {
	
}
@media print,screen and (min-width:768px) {
	
}
/* ---- */
/* LAST */
/* ---- */
