@charset "utf-8";
/* CSS Document */

/*********************************

大枠の設定

*********************************/

#campaign_body {
	padding: 0;
	margin: 0;
	height: 100vh;
}

* {
	box-sizing: border-box;
}

.tel_sp {
	pointer-events: none;
	color: #162e35;
	display: inline-block;
}

#wrapper {
	width: 100%;
	position: relative;
	font-size: 16px;
	/* overflow: hidden; */
}

#left {
	/* position: fixed; */
	left: 0;
	top: 0;
	z-index: 2;
	background: url('../img/left.jpg') center center no-repeat;
	background-size: cover;
	width: calc(50% - 187.5px);
	height: 100vh;
	display: block;
	overflow: hidden;
	position: sticky;
	width: 100%;
}

#center {
	margin: auto;
	width: 375px;
	max-width: 100%;
}

#center img {
	width: 100%;
}

#right {
	/* position: fixed; */
	right: 0;
	top: 0;
	background: url('../img/right.jpg') center center no-repeat;
	background-size: cover;
	width: calc(50% - 187.5px);
	height: 100vh;
	display: block;
	overflow: hidden;
	position: sticky;
	width: 100%;
}

#right ul a {
	color: #048607;
	font-size: 15px;
	font-weight: bold;
}

#center > div {
	padding: 0 20px;
}

#center a:hover {
	opacity: 0.7;
}

/*font:日本語*/
#center h2,
#center h3,
#center h4,
#center span,
#center em,
#center p,
#center ul,
#center a,
#right ul,
#right a {
	font-family: 'Zen Kaku Gothic New', 'Nanum Gothic', sans-serif, 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', ' Osaka', 'ＭＳ Ｐゴシック';
	font-weight: 500; /*300でlight,400でregular,500でmedium,700でbold,900でblack*/
	/*font-weight: 700;*/ /*Nanum Gothicを使う場合は400でregular,700でbold,800でextrabold*/
	font-style: normal;
	color: #231815;
}
/*font:英語*/
.en {
	font-family: 'Montserrat', sans-serif, 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'Meiryo', ' Osaka';
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	letter-spacing: 0.05em;
}

/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.box {
	opacity: 0; /* 初期値は透明にしておく */
	transition: 1.5s; /* 動くスピードを1.5秒に指定 */
	position: relative; /* 相対位置の設定 */
	top: 70px; /* 事前に下に70pxずらしておく */
}

.active {
	opacity: 1; /* 透明度を元に戻す */
	top: 0; /* ずらしていた位置を戻すことで上に上がっているようにみえる */
}

@media screen and (max-width: 1000px) {
	#right ul {
		display: none;
	}
}

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

@media screen and (max-width: 700px) {
	#left {
		display: none;
	}
	#right {
		display: none;
	}
	#center {
		position: inherit;
		width: 100%;
	}

	#center a:hover {
		opacity: 1;
	}
}

/*********************************

左側

*********************************/

#left h1 {
	position: absolute;
	width: 334px;
	object-fit: contain;
	height: 258px;
	top: 35%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);

	animation: he_bg 0.5s;
	transition: 0.4s;
}

#left img {
	width: 100%;
}

@media screen and (max-width: 1150px) {
	#left h1 {
		width: 80%;
	}
}

@media screen and (max-width: 1000px) {
	#left h1 {
		display: none;
	}
}

/*********************************

右側

*********************************/

#right ul {
	position: absolute;
	top: 30%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

#right ul li {
	margin-bottom: 20px;
}
#right ul li:last-child {
	margin-bottom: 0;
}

#right ul li::before {
	content: '';
	background: url('../img/link_icon.png') top left no-repeat;
	width: 26px;
	height: 14px;
	display: inline-block;
	margin-right: 16px;
}

#right ul li:hover {
	opacity: 0.7;
}

@media screen and (max-width: 1300px) {
	#right ul {
		width: 70%;
	}
}

/*********************************

MV

*********************************/
#center #mv {
	font-size: 0;
	text-align: center;
	padding: 0;
}

#center #mv h1 img {
	width: 90%;
}

#center #mv .mv_pc {
	padding-top: 30px;
}

#center #mv .mv_sp {
	display: none;
}

@media screen and (max-width: 750px) {
	#center #mv .mv_pc {
		display: none;
	}
	#center #mv .mv_sp {
		display: block;
	}
}

/*********************************

ハンバーガーメニュー

*********************************/

#header {
	width: 375px;
	position: fixed;
	z-index: 99;
	display: inline-block;
	animation: he_bg 0.5s;
	transition: 0.4s;
	box-sizing: border-box;
	padding-bottom: 20px;
	line-height: 1.3333;
	top: 80px;
}

#header > div {
	width: 100%;
	margin: 0 auto;
	max-width: 375px;
	overflow: hidden;
	height: 70px;
}

/*****ハンバーガーメニューの動き*****/

.hamburger {
	position: relative;
	/*ボタン内側の基点となるためrelativeを指定*/
	width: 50px;
	height: 50px;
	cursor: pointer;
	z-index: 111111;
	background: #ffffff;
	border-radius: 7px;
	top: 20px;
	float: right;
	display: none;
}

body:has(.-scrolled) #header {
	top: 0;
}

.hamburger div {
	width: 50px;
	height: 50px;
}

.hamburger div span {
	display: inline-block;
	transition: all 0.4s;
	/*アニメーションの設定*/
	position: absolute;
	left: 12px;
	height: 3px;
	background-color: #9a8f73;
}

.hamburger div span:nth-of-type(1) {
	top: 14px;
	width: 50%;
}

.hamburger div span:nth-of-type(2) {
	top: 24px;
	width: 50%;
}

.hamburger div span:nth-of-type(3) {
	top: 34px;
	width: 50%;
}

/*------ hamburger menu clickの時の LIST ------*/

div.head_inner {
	height: 100%;
	background-color: #f7f6f2;
	position: fixed;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
	z-index: 10000;
	top: 0;
	opacity: 0;
	display: block;
	overflow-y: scroll;
	padding: 120px 0;

	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 375px;
	max-width: 100%;
	color: #000000;

	display: none;
}

.head_inner ul {
	width: 600px;
	margin: 0 auto;
	max-width: 90%;
}

.head_inner ul li {
	margin-bottom: 20px;
}
.head_inner ul li a {
	color: #048607;
	font-size: 20px;
}
.head_inner ul li a:hover {
	color: #b89329;
}
.head_inner ul li:last-child {
	margin-bottom: 0;
}

.on {
	display: block;
}

.sp_hum_img {
	display: none;
}

.hamburger .opened span:nth-of-type(1) {
	top: 18px;
	left: 14px;
	transform: translateY(6px) rotate(-45deg);
	width: 45%;
}

.hamburger .opened span:nth-of-type(2) {
	display: none;
}

.hamburger .opened span:nth-of-type(3) {
	top: 30px;
	left: 14px;
	transform: translateY(-6px) rotate(45deg);
	width: 45%;
}

@media screen and (max-width: 1000px) {
	.hamburger {
		display: block;
	}
}

@media screen and (max-width: 750px) {
	#header {
		width: 100%;
	}
	#header > div {
		width: 95%;
		max-width: 100%;
	}

	div.head_inner {
		width: 100%;
	}

	.hamburger div span:nth-of-type(1) {
		top: 14px;
	}
	.hamburger div span:nth-of-type(2) {
		top: 24px;
	}

	.head_inner ul li a:hover {
		color: #048607;
	}
}

@media screen and (max-width: 700px) {
}

/*********************************

概要

*********************************/
#center #gaiyou {
	background: url('../img/satsumaimo_bg.png') bottom 238px center / 100% no-repeat, url('../img/tsuchi.png') bottom center / 100% no-repeat, url('../img/kami_pattern.jpg') no-repeat;
	text-align: center;
	font-size: 17px;
	font-weight: bold;
	padding: 60px 20px 160px;
}

#gaiyou p {
	margin-top: 40px;
	line-height: 1.8;
}

/*********************************

賞品紹介

*********************************/

#center #shouhin {
	background: url('../img/shouhin_bg.png') no-repeat;
	background-size: cover;
	padding: 60px 20px 100px;
	margin-top: -1px;
	z-index: 1;
}

#center #shouhin h2 {
	margin: 0 auto 40px;
	width: 161px;
}

#center #shouhin div {
	border-radius: 14px;
	margin: 0 auto;
	padding: 60px 20px 40px;
	text-align: center;
	background: #f8f6e6 url('../img/shouhin_yellow_bg.png') bottom center no-repeat;
	background-size: contain;
}

#center #shouhin > div > img {
	width: 90%;
}

#center #shouhin > div > img:last-child {
	width: 60%;
}

#center #shouhin ul {
	margin: 30px auto 40px;
	display: flex;
}

#center #shouhin li:first-child {
	background: #ffd528;
	width: 45%;
	color: #231815;
	border-radius: 8px 0 0 8px;
	padding-top: 30px;
}

#center #shouhin li:last-child {
	background: #ffffff;
	color: #231815;
	font-size: 13px;
	font-weight: 700;
	text-align: left;
	padding: 15px 12px;
	width: 55%;
	border-radius: 0 8px 8px 0;
}

/*********************************

応募方法

*********************************/

#center #oubo {
	background: #f8f6e6 url('../img/kami_pattern.jpg') top center repeat;
	padding: 0 0 60px;
	z-index: 2;
}

/* @media (max-width: 767px) {
	#center #oubo {
		margin-top: -60px;
		padding-top: 60px;
	}
} */

#center #oubo > h2 {
	position: relative;
	z-index: 2;
}

#center #oubo > h2 img {
	margin-top: -30px;
}

#center #oubo > div {
	width: calc(100% - 40px);
	margin: 0 auto;
}

#center #oubo .oubo_inner {
	background: #ffffff;
	border-radius: 14px;
	padding: 40px 20px 0;
	text-align: center;
	margin: 60px auto 28px;
	font-size: 0;
	position: relative;
}

#center #oubo .oubo_inner::before {
	content: '';
	width: 64px;
	/*height: 64px;*/
	border-radius: 32px;
	background: #ffd528;
	display: block;
	position: absolute;
	right: 40%;
	left: 40%;
	top: -32px;
	font-family: 'Montserrat', sans-serif, 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'Meiryo', ' Osaka';
	font-optical-sizing: auto;
	font-weight: 600;
}

#center #oubo .oubo_01::before,
#center #oubo .oubo_02::before {
	content: '1';
	font-size: 20px;
	color: #3c1d0e;
	padding: 20px 0;
}

#center #oubo .oubo_01::before {
	content: '1';
}
#center #oubo .oubo_02::before {
	content: '2';
}

#center #oubo .oubo_inner p {
	margin: 8px auto 20px;
	font-size: 18px;
}
#center #oubo .oubo_inner p a {
	color: #e22c2c;
	border-bottom: 2px solid #e22c2c;
	padding-bottom: 2px;
}

#center #oubo div > p {
	font-size: 13px;
}

/*******応募要項*******/

#center #oubo .oubo_shousai {
	padding: 40px 0;
	font-size: 13px;
	background: #ffffff;
	border-radius: 14px;
	padding: 40px 20px 40px;
	margin-top: 50px;
}

#center #oubo .oubo_shousai h2 {
	width: 148px;
	margin: 0 auto 24px;
}

#center #oubo .oubo_shousai .grad-btn {
	background: #3e733f;
	color: #ffffff;
	margin: 0 auto;
	border-radius: 25px;
	padding: 16px 10px;
	width: 80%;
	display: block;
	text-align: center;
	position: relative;
	font-family: 'Zen Kaku Gothic New', 'Nanum Gothic', sans-serif, 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', ' Osaka', 'ＭＳ Ｐゴシック';
	font-weight: 500; /*300でlight,400でregular,500でmedium,700でbold,900でblack*/
}

.grad-btn::before {
	content: '';
	background: #ffffff;
	height: calc(tan(60deg) * 7px / 2);
	width: 8px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	position: absolute;
	right: 10%;
	top: 43%;
}

#center #oubo .oubo_shousai .grad-btn:hover {
	opacity: 0.7;
}

.grad-item {
	font-family: 'Zen Kaku Gothic New', 'Nanum Gothic', sans-serif, 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', ' Osaka', 'ＭＳ Ｐゴシック';
	font-weight: 500;
	font-style: normal;
	text-align: justify;
	margin-bottom: 30px;
	position: relative;
	overflow: hidden;
	height: 140px;
	/*隠した状態の高さ*/
}

.grad-item::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 0;
	/*グラデーションで隠す高さ*/
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
	background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 0%, #fff 100%);
	content: '';
}

.grad-trigger {
	display: none; /*チェックボックスは常に非表示*/
}

.grad-trigger:checked ~ .grad-btn::before {
	content: '閉じる';
	transform: rotate(180deg);
	/*チェックされていたら、文言を変更する*/
}

.grad-trigger:checked ~ .grad-item {
	height: auto; /*チェックされていたら、高さを戻す*/
}

.grad-trigger:checked ~ .grad-item::before {
	display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}

@media screen and (max-width: 700px) {
	#center #oubo .oubo_shousai .grad-btn:hover {
		opacity: 1;
	}
}

/*********************************

さつまいも生産農家を知る

*********************************/

#center #interview {
	padding: 70px 20px 60px;
}

#center #interview h2,
#center #interview02 h2 {
	margin-bottom: 40px;
}

#center #interview h3,
#center #interview02 h3 {
	text-align: center;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 24px;
	text-align: left;
	padding: 0 7px;
}

#center #interview h3 span,
#center #interview02 h3 span {
	background: #e22c2c;
	color: #ffffff;
	padding: 5px 8px;
	font-size: 14px;
	display: block;
	width: fit-content;
	margin-bottom: 8px;
}

/****** interview01 森さん *******/

#center #interview .interview01 {
	text-align: center;
}

#center #interview .interview01 > div {
	text-align: left;
}

#center #interview .interview01 > div span {
	font-size: 28px;
	line-height: 1.3;
	display: inline-block;
	margin: -54px auto 20px;
	background: #ffffff;
	padding-right: 8px;
}
#center #interview .interview01 > div i {
	font-size: 16px;
	background: #ffffff;
	padding: 0px 9px 0;
	margin-left: -9px;
}
#center #interview .interview01 > div em {
	font-size: 20px;
}

#center #interview .interview01 > img {
	width: 75%;
}

#center #interview .interview01 > p {
	font-size: 12px;
	color: #aaba53;
	text-align: right;
	margin-top: 10px;
}

#center #interview .interview01 ul {
	margin-top: 40px;
}

#center #interview .interview01 li:first-child {
	margin-bottom: 20px;
}

#center #interview .fukidashi {
	background: #3e733f;
	padding: 11px 10px;
	border-radius: 5px;
	color: #ffffff;
	font-size: 16px;
	text-align: center;
	margin-bottom: 25px;
	position: relative;
}

#center #interview .fukidashi::after {
	content: '';
	background: #3e733f;
	height: calc(tan(60deg) * 14px / 2);
	width: 14px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	position: absolute;
	right: 50%;
	bottom: -11px;
}

#center #interview .interview01 ul p {
	text-align: justify;
}

#center #interview .interview01 ul p small {
	font-size: 12px;
}

#center #interview .interview01 ul p small::before {
	content: '※';
}

#center #interview .interview01 h4 {
	text-align: center;
	margin-bottom: 20px;
}
#center #interview .interview01 h4 img {
	width: 90%;
}

/****** interview02 森さん *******/

#center #interview02 .interview01 {
	text-align: center;
	margin-bottom: 60px;
}

#center #interview02 .interview01 > div {
	text-align: left;
}

#center #interview02 .interview01 > div span {
	font-size: 34px;
	line-height: 1.3;
	display: inline-block;
	margin: -54px auto 20px;
	background: #ffffff;
	padding-right: 8px;
}
#center #interview02 .interview01 > div i {
	font-size: 16px;
	background: #ffffff;
	padding: 0px 9px 0;
	margin-left: -9px;
}
#center #interview02 .interview01 > div em {
	font-size: 22px;
	margin-right: 8px;
}

#center #interview02 .interview01 > img {
	width: 75%;
}

#center #interview02 .interview01 > p {
	font-size: 12px;
	color: #aaba53;
	text-align: right;
	margin-top: 10px;
}

#center #interview02 .interview01 ul {
	margin-top: 40px;
}

#center #interview02 .interview01 li:first-child {
	margin-bottom: 20px;
}

#center #interview02 .fukidashi {
	background: #3e733f;
	padding: 11px 10px;
	border-radius: 5px;
	color: #ffffff;
	font-size: 16px;
	text-align: center;
	margin-bottom: 25px;
	position: relative;
}

#center #interview02 .fukidashi::after {
	content: '';
	background: #3e733f;
	height: calc(tan(60deg) * 14px / 2);
	width: 14px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	position: absolute;
	right: 50%;
	bottom: -11px;
}

#center #interview02 .interview01 ul p {
	text-align: justify;
}

#center #interview02 .interview01 h4 {
	text-align: center;
	margin-bottom: 20px;
}
#center #interview02 .interview01 h4 img {
	width: 90%;
}

/*********************************

メモリー
*********************************/
#memory img {
	display: block;
	margin: 0 auto 60px;
}

#memory div p {
	color: #2d1f1b;
	text-align: center;
	font-family: 'Zen Kaku Gothic New';
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 180%;
}

/*********************************

霧島酒造 原料担当からのメッセージ

*********************************/

#center #message {
	text-align: right;
	background: linear-gradient(180deg, #ffffff 0%, #ffffff 35%, #3c1d0e 35%, #3c1d0e 100%);
	padding: 60px 0 50px;
	font-size: 0;
}
#center #message > h2 {
	font-size: 40px;
	margin: 0 0 12px 20px;
	text-align: left;
	color: #3c1d0e;
	font-weight: bold;
}
#center #message > img {
	width: 84%;
}

#center #message div {
	width: calc(100% - 40px);
	margin: 30px auto 0;
	color: #ffffff;
}

#center #message div h2 {
	text-align: center;
	margin-bottom: 22px;
	font-size: 18px;
	color: #ffffff;
}

#center #message p {
	font-size: 13px;
	text-align: justify;
	margin-bottom: 20px;
	color: #ffffff;
	line-height: 2;
}
#center #message p i {
	font-size: 10px;
	vertical-align: 3px;
}

#center #message span {
	font-size: 10px;
	text-align: right;
	display: block;
	color: #ffffff;
}

/*********************************

オファーボタン01

*********************************/
#center #offer01 {
	padding: 40px 0 300px;
	background: url('../img/offer_img.png') bottom center no-repeat;
	background-size: contain;
}

#center .offer div {
	width: calc(100% - 40px);
	margin: 0 auto;
	text-align: center;
}

#center .offer div img {
	width: 270px;
}

#center .offer div a {
	background: #e22c2c;
	color: #ffffff;
	margin: 0 auto 0;
	border-radius: 38px;
	padding: 26px 10px;
	width: 90%;
	display: block;
	text-align: center;
	position: relative;
}

#center .offer div a::before {
	content: '';
	border: 2px solid #ffffff;
	box-sizing: border-box;
	border-radius: 29px;
	width: calc(100% - 20px);
	height: 56px;
	position: absolute;
	top: 38px;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

#center .offer div a::after {
	content: '';
	background: #ffffff;
	height: calc(tan(60deg) * 10px / 2);
	width: 8px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	position: absolute;
	right: 10%;
	top: 43%;
}

#center .offer div p {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #333333;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 5px;
}

#center .offer div p::before,
#center .offer div p::after {
	width: 1px;
	height: 15px;
	background-color: #000;
	content: '';
}

#center .offer div p::before {
	transform: rotate(-30deg);
	margin-right: 15px;
}

#center .offer div p::after {
	transform: rotate(30deg);
	margin-left: 15px;
}

/*********************************

オファーボタン02

*********************************/

#center #offer02 {
	padding: 40px 0 250px;
	background: url('../img/offer_img02.png') bottom center no-repeat;
	background-size: contain;
}

/*********************************

いもちしき

*********************************/

#center #imochishiki {
	background: url('../img/memo_bg.png') top 8px left / 18px repeat-y, url('../img/kami_pattern.jpg') top center repeat;
	padding-top: 40px;
	text-align: center;
}

#center #imochishiki > img {
	width: 90%;
	margin-top: 20px;
}

#center #imochishiki ul {
	font-size: 0;
	margin-top: 20px;
}
#center #imochishiki li {
	padding-bottom: 50px;
}
#center #imochishiki li > div {
	font-size: 16px;
	padding: 20px 16px 0;
}

#center #imochishiki p {
	margin-bottom: 20px;
	text-align: justify;
}

#center #imochishiki ul span {
	font-size: 13px;
	padding: 7px 10px;
	color: #ffffff;
	border-radius: 18px;
	width: 60%;
	display: block;
	text-align: center;
	position: relative;
	margin: 0 auto -17px;
}

#center #imochishiki ul em {
	display: block;
	background: #fff;
	padding: 33px 14px 20px;
	border-radius: 10px;
	text-align: center;
	font-size: 15px;
	font-weight: 600;
}

#center #imochishiki .green span {
	background: #3e733f;
}
#center #imochishiki .brown span {
	background: #3c1d0e;
}
#center #imochishiki .green em {
	color: #3e733f;
}
#center #imochishiki .brown em {
	color: #3c1d0e;
}

#center #imochishiki li > div div {
	padding-bottom: 50px;
	background: url('../img/line_pattern.png') bottom repeat-x;
	background-size: 14px;
}

.campaign-inner {
	margin: 0 auto;
	position: relative;
	width: 100%;
}

.campaign-inner__left {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	flex: 1;
	/* height: 100%; */
	width: calc(50% - 195.5px);
	height: var(--vh, 8171px);
}

.campaign-inner__right {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	flex: 1;
	/* height: 100%; */
	width: calc(50% - 195.5px);
	height: var(--vh, 8171px);
}
