@charset "UTF-8";
/*----------
	top
----------*/
body {
	overflow-x: hidden;
}
@media (min-width: 768px), print {
	.l-header-nav__link {
		color: #fff;
		text-shadow: 0px 0px 6px #000;
	}
	.l-header-nav__link:hover {
		color: #E7C77D;
	}
	.l-header.is-scroll .l-header-nav__link {
		color: #0D2A84;
		transition: all .3s;
		text-shadow: none;
	}
	.l-header.is-scroll .l-header-nav__link:hover {
		color: #B9943F;
	}
}

.l-main {
	width: 100%;
	overflow-x: hidden;
}

/* bg */
.swiper.p-bg {
	position: fixed;
	width: 100%;
	height: calc( 100vh - 30px );
	z-index: -1;
	opacity: 0;
	transition: opacity 2s;
}
.swiper.p-bg.swiper-container-initialized {
	opacity: 1;
}
.swiper.p-bg .swiper-slide {
	width: 100%;
	height: calc( 100vh - 30px );
}
.swiper.p-bg .swiper-slide > figure {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.swiper.p-bg .swiper-slide > figure > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.swiper.p-bg .swiper-slide.swiper-slide-active img {
	animation: zoom-in 12s linear 0s 1 normal both;
}
.swiper.p-bg .swiper-slide.swiper-slide-duplicate-active img {
	animation: zoom-in 12s linear 0s 1 normal both;
}
.swiper.p-bg .swiper-slide.swiper-duplicate-slide-active img {
	animation: zoom-in 12s linear 0s 1 normal both;
}
.swiper.p-bg .swiper-slide.swiper-slide-prev img {
	animation: zoom-in 12s linear 0s 1 normal both;
}
.swiper.p-bg .swiper-slide.swiper-slide-duplicate-prev img {
	animation: zoom-in 12s linear 0s 1 normal both;
}
@keyframes zoom-in {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.1);
	}
}

/* mainv */
.p-mainv {
	width: 100%;
	height: calc( 100vh - 30px );
	position: relative;
}
.p-mainv::before {
	position: absolute;
	bottom: 4px;
	left: 0;
	width: 100%;
	height: 4px;
	content: "";
	background: #00338A;
}
.p-mainv::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	content: "";
	background: #E7C77D;
}
.p-mainv__pic {
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height: calc( 100vh - 30px );
	overflow: hidden;
}
.p-mainv__pic > img {
	width:100%;
	height: 1000px;
}
.p-mainv__box {
	position: absolute;
	display: inline-block;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	opacity: 0;
	transition: opacity 1s;
}
.p-mainv__box.is-active {
	opacity: 1;
}
.p-mainv__copy {
	font-size: 2.4rem;
	line-height: 2.5;
	font-weight: 700;
	text-align: left;
	color: #fff;
	text-shadow: 0px 0px 6px #000;
}
.p-mainv__copyinner {
	display: inline-block;
	white-space: nowrap;
	position: relative;
}
.p-mainv__copyinner::before {
	position: absolute;
	top: 26px;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-image: radial-gradient(circle, #ffffff 1.5px, transparent 1.5px);
	background-position: 0 0;
	background-size: 7px 63px;
}
.p-mainv__copyicon {
	display: inline-block;
	width: 48px;
	margin-right: 6px;
}
.p-mainv__copyicon::before {
	position: absolute;
	top: 10px;
	left: 0;
	width: 48px;
	height: 42px;
	content: "";
	background: url(/hokkaido100/assets/img/common/icon_hokkaido.svg) no-repeat center center / contain;
}
.p-mainv__link {
	display: inline-block;
	margin-top: 30px;
	padding: 0 40px 0 0;
	text-align: center;
	font-size: 1.6rem;
	line-height: 2;
	font-weight: 700;
	color: #fff;
	text-shadow: 0px 0px 6px #000;
	position: relative;
}
.p-mainv__linkicon {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	width: 30px;
	height: 30px;
	border: solid 1px #fff;
	border-radius: 50%;
	-webkit-filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.6));
	filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.6));
}
.p-mainv__linkicon::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 12px;
	height: 12px;
	content: "";
	background: url(/hokkaido100/assets/img/common/icon_arrow2_white.svg) no-repeat center center / contain;
}
.p-mainv__bottom {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 52px;
	height: 52px;
	overflow: hidden;
	z-index: 10;
	opacity: 0;
	transition: opacity: 1s;
}
.p-mainv__bottom.is-active {
	opacity: 1;
}
.p-mainv__bottom::before {
	position: absolute;
	bottom: -26px;
	left: 0;
	width: 52px;
	height: 52px;
	content: "";
	background: #fff;
	border-radius: 50%;
}
.p-mainv__bottom::after {
	position: absolute;
	bottom: 2px;
	left: 50%;
	transform: translate(-50%, 0);
	width: 16px;
	height: 16px;
	content: "";
	background: url(/hokkaido100/assets/img/common/icon_arrow_blue.svg) no-repeat center center / contain;
}
.p-mainv-bottom__text {
	font-size: 1.4rem;
	line-height: 1.3;
	font-weight: 700;
	color: #fff;
	text-shadow: 0px 0px 6px #000;
	text-align: center;
}
.p-mainv__products {
	display: none;
}
@media (min-width: 768px), print {
	.p-mainv__copy {
		font-size: 3.7rem;
	}
	.p-mainv__copyicon {
		display: inline-block;
		width: 62px;
		margin-right: 12px;
	}
	.p-mainv__copyicon::before {
		top: 20px;
		width: 62px;
		height: 54px;
	}
	.p-mainv__copyinner::before {
		position: absolute;
		top: 36px;
		left: 0;
		width: 100%;
		height: 100%;
		content: "";
		background-image: radial-gradient(circle, #ffffff 1.5px, transparent 1.5px);
		background-position: 0 0;
		background-size: 7px 93px;
	}
	.p-mainv__link {
		font-size: 2rem;
		padding: 0 56px 0 0;
		transition: transform .3s;
	}
	.p-mainv__link:hover {
		transform: scale(1.05);
	}
	.p-mainv__linkicon {
		width: 46px;
		height: 46px;
	}
	.p-mainv__linkicon::before {
		width: 18px;
		height: 18px;
	}
	.p-mainv-bottom__text {
		font-size: 1.6rem;
	}
	.p-mainv__products {
		display: block;
		position: absolute;
		bottom: -30px;
		right: 5px;
		width: 578px;
		z-index: 3;
		opacity: 0;
		transition: opacity 1s;
	}
	.p-mainv__products.is-active {
		opacity: 1;
	}
}
/* bnr */
.p-bnr {
	background: #fff;
	padding: 60px 0;
}
.p-bnr__inner {
	padding: 0 30px;
	overflow: hidden;
}
@media (min-width: 768px), print {
	.p-bnr {
		padding: 130px 0 120px;
	}
	.p-bnr__inner {
		width: 100%;
		max-width: 1260px;
		margin: 0 auto;
		padding: 0 30px;
		overflow: hidden;
	}
}
.swiper.p-bnr__content {
	width: 100%;
	position: relative;
}
.swiper.p-bnr__content .swiper-slide {
	width: 100%;
}
.p-bnr__content  .swiper-button-prev {
	position: absolute;
	top: 50%;
	left: -20px;
	transform: translate(0, -50%);
	width: 40px;
	height: 40px;
	content: "";
	background: #00338A;
	border-radius: 50%;
	display: block;
	margin: 0;
}
.p-bnr__content  .swiper-button-prev::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(180deg);
	width: 14px;
	height: 14px;
	content: "";
	background: url(/hokkaido100/assets/img/common/icon_arrow_white.svg) no-repeat center center / contain;
}
.p-bnr__content .swiper-button-next {
	position: absolute;
	top: 50%;
	right: -20px;
	transform: translate(0, -50%);
	width: 40px;
	height: 40px;
	content: "";
	background: #00338A;
	border-radius: 50%;
	display: block;
	margin: 0;
}
.p-bnr__content .swiper-button-next::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform:  translate(-50%, -50%);
	width: 14px;
	height: 14px;
	content: "";
	background: url(/hokkaido100/assets/img/common/icon_arrow_white.svg) no-repeat center center / contain;
}
@media (min-width: 768px), print {
	.p-bnr__content  .swiper-button-prev {
		left: -23px;
		width: 46px;
		height: 46px;
	}
	.p-bnr__content  .swiper-button-prev::after {
		width: 18px;
		height: 18px;
	}
	.p-bnr__content  .swiper-button-next {
		right: -23px;
		width: 46px;
		height: 46px;
	}
	.p-bnr__content  .swiper-button-next::after {
		width: 18px;
		height: 18px;
	}
}
/* products */
.p-products {
	background: #FDFAEF;
	padding: 120px 0;
	margin: 0 0 400px 0;
	position: relative;
}
.p-products__inner {
	padding: 0 30px;
}
.p-products::before {
	position: absolute;
	top: 0;
	right: 50%;
	transform: translate(223px, 0);
	width: 570px;
	height: 46px;
	content: "";
	background: url(/hokkaido100/assets/img/common/bg_white.png) no-repeat center top / contain;
	z-index: 2;
}
.p-products::after {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-200px, 0);
	width: 570px;
	height: 46px;
	content: "";
	background: url(/hokkaido100/assets/img/common/bg_yellow.png) no-repeat center top / contain;
}
@media (min-width: 768px), print {
	.p-products {
		margin: 0 0 500px 0;
	}
	.p-products::before {
		transform: translate(130px, 0);
	}
	.p-products::after {
		transform: translate(-32px, 0);
	}
	.p-products__inner {
		width: 100%;
		max-width: 1260px;
		margin: 0 auto;
		padding: 0 30px;
	}
}
.p-products__lead {
	font-family: "Noto Sans JP";
	font-size: 1.4rem;
	line-height: 2;
	color: #22394D;
	text-align: center;
	margin-left: -30px;
	margin-right: -30px;
}
.p-products__list {
	margin-top: 60px;
	margin-left: auto;
	margin-right: auto;
	width: 295px;
}
.p-products__item + .p-products__item {
	margin-top: 35px;
}
.p-products__link {
	display: block;
	position: relative;
}
.p-products__link::before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 295px;
	height: 295px;
	content: "";
	background: #fff;
	border-radius: 50%;
}
.p-products__copy {
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 700;
	color: #22394D;
	text-align: center;
	margin-bottom: 20px;
}
.p-products__copyinner {
	display: inline-block;
	padding: 0 10px;
	position: relative;
}
.p-products__copyinner::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 2px;
	height: 25px;
	content: "";
	background: #22394D;
	transform: rotate(-20deg) translate(0, -50%);
}
.p-products__copyinner::after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 2px;
	height: 25px;
	content: "";
	background: #22394D;
	transform: rotate(20deg) translate(0, -50%);
}
.p-products__pic {
	width: 230px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.p-products__name {
	padding: 0 0 40px 0;
	text-align: center;
	position: relative;
	z-index: 2;
}
.p-products__stext {
	display: inline-block;
	position: relative;
	font-size:1.2rem;
	line-height: 1.5;
	font-weight: 700;
	color: #00338A;
	padding: 0 27px 0 0;
}
.p-products__stext::before {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	width: 22px;
	height: 19px;
	content: "";
	background: url(/hokkaido100/assets/img/common/icon_hokkaido.svg) no-repeat center center / contain;
}
.p-products__text {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 700;
	color: #333;
}
.p-products .c-btn {
	margin-top: 40px;
}
@media (min-width: 768px), print {
	.p-products__lead {
		font-size: 1.6rem;
	}
	.p-products__list {
		margin-top: 80px;
		width: 1590px;
		display: flex;
		overflow: visible;
	}
	.p-products__item {
		width: 360px;
	}
	.p-products__item + .p-products__item {
		margin-top: 0;
		margin-left: 50px;
	}
	.p-products__link::before {
		width: 360px;
		height: 360px;
	}
	.p-products__copy {
		font-size: 2rem;
	}
	.p-products__copyinner::before {
		height: 30px;
	}
	.p-products__copyinner::after {
		height: 30px;
	}
	.p-products__pic {
		width: 280px;
	}
	.p-products__pic > img {
		transition: transform .3s;
	}
	.p-products__link:hover .p-products__pic > img {
		transform: translate(0, -5px);
	}
	.p-products__name {
		padding: 0 0 60px 0;
	}
}
/* recipe */
.p-recipe {
	background: #fff;
	padding: 80px 0;
}
.p-recipe__inner {
	padding: 0 30px;
}
.p-recipe__01 {
	width: 100%;
}
.p-recipe-01__link {
	display: block;
	width: 100%;
	height: 350px;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}
.p-recipe-01__pic {
	width: 100%;
	height: 100%;
}
.p-recipe-01__picinner {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.p-recipe-01__picinner > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.p-recipe-01__text {
	position: absolute;
	bottom: 20px;
	left: 0;
	width: 100%;
}
.p-recipe-01__lead {
	font-size: 1.4rem;
	line-hieght: 2;
	font-weight: 700;
	text-align: center;
	color: #22394D;
}
.p-recipe-01__text .c-btn {
	margin-top: 15px;
	padding: 0 20px;
	margin-left: auto;
	margin-right: auto;
}
.p-recipe__02 {
	margin-top: 50px;
}
@media (min-width: 768px), print {
	.p-recipe {
		padding: 120px 0;
	}
	.p-recipe__inner {
		width: 100%;
		max-width: 1260px;
		margin: 0 auto;
		padding: 0 30px;
	}
	.p-recipe-01__link {
		height: 400px;
	}
	.p-recipe-01__picinner > img {
		transition: all .3s;
	}
	.p-recipe-01__link:hover .p-recipe-01__picinner > img {
		transform: scale(1.05);
	}
	.p-recipe-01__text {
		bottom: 100px;
		left: initial;
		right: 40px;
		width: 450px;
	}
	.p-recipe-01__lead {
		font-size: 2rem;
		margin-left: 0;
	}
	.p-recipe-01__text .c-btn {
		margin-top: 24px;
		padding: 0 0;
		text-align: left;
	}
	.p-recipe-01__text .c-btn__link:hover {
		transform: scale(1.0);
	}
	.p-recipe__02 {
		margin-top: 100px;
	}
}
