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

/* Google Font */
.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}


/* color */
:root {
	--main: #444;
	--orange: #f17d1b;
}


/*----- common -----*/
#campaign {
	position: relative;
	max-width: 100%;
	overflow: hidden;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 300;
	font-style: normal;
	color: var(--main);
	line-height: 1.5;
	box-sizing: border-box;
	text-align: center;
	margin: auto;
}
#campaign * {
  box-sizing: border-box;
}
#campaign a {
  text-decoration: none;
}
#campaign a:hover {
  text-decoration: none;
}
#campaign a:hover img {
  opacity: 1;
}
#campaign *:focus {
  border: none;
  outline: none;
}
#campaign img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}
#campaign h2{
	width: 50%;
	margin: auto;
}
#campaign .sp{
	display: none;
}
#campaign .pc{
	display: block;
}
#page_top{
	position: fixed;
	right: 2%;
	bottom: 2%;
	width: 77px;
	opacity: 0.8;
	z-index: 99;
}
#page_top:hover{
	opacity: 1;
	transition: .3s ease-in-out;
}
#page_top img{
	width: 100%;
}


/*----- #閉じる -----*/
.close_top{
	position: fixed;
	top: 5%;
	right: 4%;
}
.close_top a{
    position: relative;
    padding: 1px 11px 4px;
	width: 100%;
    height: 100%;
    top: 0%;
    background-color: #000;
    color: #fff;
    font-size: 33px;
    opacity: 0.7;
}
.close_top a:hover{
	opacity: 1;
}
.close {
	display: block;
    width: 30%;
    text-align: center;
    margin: 7rem auto 3rem;
    padding: 10px 20px;
	background-color: #fff;
    color: #000;
    border: 1px solid #000;
}




/*----- MV -----*/
#campaign .mv {
	position: relative;
	width: 100%;
	height: 100vh;
	/*aspect-ratio:1900/1021;*/
	background-image: url(../img/mv_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
}
#campaign .mv img{
	position: absolute;
}
#campaign .mv .logo{
	position: fixed;
	width: 12%;
	top: 3%;
	left: 5%;
	z-index: 100;
}
#campaign .mv .mv_ttle{
	position: absolute;
	width: 40%;
	top: 27%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#campaign .mv p{
	position: absolute;
	top: 44.4%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #000;
	font-size: 1.2em;
}
#campaign .mv .btn{
	position: absolute;
	width: 22%;
	top: 70%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
}
#campaign .mv .btn_p{
	position: absolute;
	top: 78%;
	text-shadow: 2px 2px 3px #E5F6B0,-2px 2px 3px #E5F6B0,2px -2px 3px #E5F6B0,-2px -2px 3px #E5F6B0, 2px 2px 4px #E5F6B0,-2px 2px 4px #E5F6B0,2px -2px 4px #E5F6B0,-2px -2px 4px #E5F6B0, 2px 2px 4px #E5F6B0,-2px 2px 4px #E5F6B0,2px -2px 4px #E5F6B0,-2px -2px 4px #E5F6B0;
}


/*----- こんなシーンで活用いただけます -----*/
#campaign .top{
	text-align: center;
	margin: auto;
	background-color: #e1f4a6;
	background-image:linear-gradient(180deg, #e1f4a6, #fff 93% 100%);
}
#campaign .top #top ul{
	display: flex;
	flex-wrap: wrap;
	width: 50%;
	text-align: center;
	margin: 1% auto 0;
}
#campaign .top #top li{
	display: flex;
	align-items: center;
	text-align: center;
	width: calc((100% - 0px) / 2);
}

/*jqueryふわっと表示用*/
.reveal { transition: opacity .6s ease; will-change: opacity, filter; }
.reveal-blur { transition: opacity .6s ease, filter .6s ease; }
.reveal { opacity: 0; }
.reveal.is-visible { opacity: 1; }


#campaign .top #top .top_info{
	display: flex;
	width: 45%;
	margin: 2% auto;
}
#campaign .top #top .top_info p{
	width: 55%;
	text-align: left;
	margin: auto 0 auto;
}
#campaign .top #top .top_info a{
	width: 45%;
	padding: 0 0 0 2%;
	margin: auto;
}
#campaign .top #top .top_info img{
	margin: auto 0 auto;
}


/*----- 取り扱い商品例 -----*/
#campaign .top #example{
	margin-top: 7%;
	padding-bottom: 9%;
}
#campaign .top #example ul{
	display: flex;
	flex-wrap: wrap;
	width: 60%;
	text-align: center;
	margin: 1% auto 0;
}
#campaign .top #example li{
	display: flex;
	align-items: center;
	text-align: center;
	width: calc((100% - 0px) / 3);
}


/*----- JAタウンが選ばれる理由 -----*/
#campaign .point_wrapper{
	width: 100%;
	overflow: hidden;
}
#campaign .point_wrapper #point{
	position: relative;
	background: #D8EFA5;
	padding-top: 17%;
	padding-bottom: 17%;
	border-top-left-radius: 100% 40%;
	border-top-right-radius: 100% 40%;
	border-bottom-left-radius: 100% 40%;
	border-bottom-right-radius: 100% 40%;
	height: auto;
	margin-left: -100px;
	margin-right: -100px;
	padding-left: 100px;
	padding-right: 100px;
}
#campaign .point_wrapper #point .ttl{
	margin-top: -14%;
}

#campaign .point_wrapper #point .point_col_wrapper{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1%;
	margin: 4% auto 3%;
}
#campaign .point_wrapper #point .point_col_wrapper .point_col{
	width: 20%;
    position: relative;
    display: flex;
    flex-direction: column;
} 

/*jqueryひょこっと表示用*/
#campaign .point_col_wrapper .point_col { opacity:0; transform: translateY(12px); transition: opacity 1.5s ease, transform 1.5s ease; }
#campaign .point_col_wrapper.is-inview .point_col { opacity:1; transform:none; }
#campaign .point_col_wrapper.is-inview .point_col:nth-child(1) { transition-delay: 0ms; }
#campaign .point_col_wrapper.is-inview .point_col:nth-child(2) { transition-delay: 480ms; }
#campaign .point_col_wrapper.is-inview .point_col:nth-child(3) { transition-delay: 960ms; }


#campaign .point_wrapper #point .point_col_wrapper .point_col img{
	width: 100%;
}
#campaign .point_wrapper #point .point_col_wrapper .point_col p{
	display: flex;
	flex: 1 1 auto;
	width: 90%;
	margin: 5% auto;
	align-items: flex-start;
	text-align: left;
}
#campaign .point_wrapper #point .point_attention{
	margin: 0 auto -9%;
}



/*----- JAタウン 47都道府県おすすめ商品一覧 -----*/
/*----- 日本地図 -----*/
#campaign #list{
	background-image:linear-gradient(180deg, #f9fdec, #fff 100%);
	margin: -17% auto 0;
	padding: 22% 0 0;
}
#campaign #list .map{
	position: relative;
	width: 100%;
	margin: 4% auto;
}
#campaign #list .map .map_parts{
	position: relative;
	width: 35%;
}
#campaign #list .map .map_btn{
	position: absolute;
    display: inline-block;
    background: #fff;
    border-radius: 25px;
    padding: 5px 25px 5px 30px;
    font-size: 20px;
    font-weight: bold;
    text-decoration: none;
    border: 2px solid var(--orange);
    box-shadow: 3px 5px 8px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}
#campaign #list .map .map_btn::after{
	content: "▼";
	font-size: 10px;
	margin-left: 8px;
	vertical-align: middle;
	transition: all 0.3s 
}
#campaign #list .map .hokkaido { color: #88C0F2; }
#campaign #list .map .kanto { color: #77C66B; }
#campaign #list .map .chubu { color: #C3DD64; }
#campaign #list .map .kinki { color: #F9DD67; }
#campaign #list .map .chugoku { color: #EFAC62; }
#campaign #list .map .kyushu { color: #F78B86; }

#campaign #list .map .hokkaido{
	top: 30%;
	left: 66%;
	border-color: #88C0F2;
}
#campaign #list .map .kanto{
	top: 55%;
	left: 63%;
	border-color: #77C66B;
}
#campaign #list .map .chubu{
	top:33%;
	left: 44%;
	border-color: #C3DD64;
}
#campaign #list .map .kinki{
	top:46%;
	left: 35%;
	border-color: #F9DD67;
}
#campaign #list .map .chugoku{
	top:77%;
	left: 55%;
	border-color: #EFAC62;
}
#campaign #list .map .kyushu{
	top: 66%;
	left: 22%;
	border-color: #F78B86;
}

/*----- 都道府県リスト -----*/
/*----- 地域別カラー -----*/
#campaign #list .osusume-links .region.hokkaido { border-color: #88C0F2; color: #88C0F2; }
#campaign #list .osusume-links .region.kanto { border-color: #77C66B; color: #77C66B; }
#campaign #list .osusume-links .region.chubu { border-color: #C3DD64; color: #C3DD64; }
#campaign #list .osusume-links .region.kinki { border-color: #F9DD67; color: #F9DD67; }
#campaign #list .osusume-links .region.chugoku { border-color: #EFAC62; color: #EFAC62; }
#campaign #list .osusume-links .region.kyushu { border-color: #F78B86; color: #F78B86; }

.osusume-links {
	padding: 40px 0;
}

#campaign #list .osusume-links .area_inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px 60px;
  width: 1200px;
  margin: 0 auto;
  padding-top: 40px;
}
#campaign #list .osusume-links .region {
  background: #fff;
  border-radius: 12px;
  padding: 30px 30px;
  box-shadow: 4px 6px 11px rgba(0,0,0,0.1);
  border: 3px solid transparent;
  transition: all 0.3s ease;
}

#campaign #list .region-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

#campaign #list .region-text h3 {
  font-size: 35px;
  font-weight: bold;
  display: inline-block;
  text-decoration: none;
  padding-bottom: 5px;
  padding-top: 0;
  margin: 0 0 20px;
}

#campaign #list .region-text h3 :hover {
  opacity: 0.7; 
}

#campaign #list .region-text h3 span {
  padding-bottom: 3px;
  color: var(--main);
}

/* おすすめ商品バッジ部分　*/
#campaign #list .osusume-links .osusume {
  display: inline-block;
  background: #fff;
  border: 1.5px solid #ccc;
  border-radius: 20px;
  padding: 3px 10px;
  margin-left: 6px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--main);
  white-space: nowrap;
}

/* 商品が複数ある場合の間隔 */
#campaign #list .osusume-links li .osusume + .osusume {
  margin-left: 8px;
}

/* 各県リスト */
#campaign #list .region-text ul {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}
#campaign #list .region-text li {
	display: flex;
	align-items: flex-start;
	flex-wrap: nowrap;
	margin: 0 auto 10px;
	padding: 0;
	width: 100%;
	height: auto;
	border: none;
}
#campaign #list .region-text li span{
	color: var(--main);
}

/* 県名 */
.region-text .pref {
	font-weight: 600;
	margin-right: 10px;
	width: 80px;
	white-space: nowrap;
	flex-shrink: 0;
	text-align: left;
	padding-bottom: 3px;
}
.region-text .pref span {
  display: inline-block;
  border-bottom: 1px solid var(--main);
  padding-bottom: 3px;
}

/* おすすめ商品ラッパー */
.region-text .osusume-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 0px;
  flex: 1;
  justify-content: flex-start;
}

/*おすすめ商品バッジ */
.region-text .osusume {
  display: inline-block;
  background: #fff;
  border: 1.5px solid #ccc;
  border-radius: 20px;
  padding: 3px 10px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--main);
  white-space: nowrap;
}

/* リスト並び順 */
.hokkaido { grid-column: 1; grid-row: 1; }
.kanto { grid-column: 2; grid-row: 1; }
.chubu { grid-column: 1; grid-row: 2; }
.kinki { grid-column: 2; grid-row: 2; }
.chugoku { grid-column: 1; grid-row: 3; }
.kyushu { grid-column: 2; grid-row: 3; }





/*----- 導入事例 -----*/
#campaign #voice{
	background-image: url(../img/bg_wave.png),url(../img/bg_green.png);
	background-size: 100%, cover;
	background-position: bottom, top;
	background-repeat: no-repeat, no-repeat;
	padding: 10% 0 17%;
}
#campaign #voice h2{
	padding-bottom: 5%;
}
#campaign #voice .voice_list{
	position: relative;
	width: 64%;
	margin: auto;
	padding-bottom: 3%;
	z-index: 3;
}
#campaign #voice .voice_list .voice_list_no{
	position: absolute;
	width: 100%;
}
#campaign #voice .voice_list:nth-of-type(odd) .voice_list_p{
	width: 77%;
	margin: 0 2% 0 auto;
	padding-bottom: 10%;
}
#campaign #voice .voice_list:nth-of-type(even) .voice_list_p{
	width: 77%;
	margin: 0 auto 0 2%;
	padding-bottom: 10%;
}
#campaign #voice .voice_list h3{
	text-align: left;
	font-size: 2em;
	font-weight: bold;
	color: var(--orange);
	padding: 5% 0 2%;
}
#campaign #voice .voice_list h4{
	text-align: left;
	font-size: 1.5em;
	padding: 0 0 2%;
}
#campaign #voice .voice_list p{
	text-align: left;
	font-size: 1em;
	letter-spacing: 1.5px;
	line-height: 1.8;
	text-shadow: 2px 2px 4px #fff,-2px 2px 4px #fff,2px -2px 4px #fff,-2px -2px 4px #fff, 2px 2px 3px #fff,-2px 2px 3px #fff,2px -2px 3px #fff,-2px -2px 3px #fff;
}
#campaign #voice .voice_list01, #campaign #voice .voice_list02, #campaign #voice .voice_list03{
	position: relative;
	overflow: visible;
}
#campaign #voice .voice_list01::before{
	content: "";
	position: absolute;
	bottom: 0;
	left: -16%;
	width: 100%;
	height: 100%;
	background: url('../img/voice_img01.png') no-repeat left bottom 25%;
	background-size: 35%;
	z-index: -1;
}
#campaign #voice .voice_list02::before{
	content: "";
	position: absolute;
	bottom: 0;
	right: -16%;
	width: 100%;
	height: 100%;
	background: url('../img/voice_img02.png') no-repeat right bottom 25%;
	background-size: 35%;
	z-index: -1;
}
#campaign #voice .voice_list03::before{
	content: "";
	position: absolute;
	bottom: 0;
	left: -16%;
	width: 100%;
	height: 100%;
	background: url('../img/voice_img03.png') no-repeat left bottom 25%;
	background-size: 35%;
	z-index: -1;
}

/*- ひょこっと表示用 -*/
.reveal02 { transition: opacity 1.5s cubic-bezier(.22,.61,.36,1), transform 1.5s cubic-bezier(.22,.61,.36,1); will-change: opacity, transform; }
.reveal02 { opacity: 0; transform: translateY(100px); }
.reveal02.is-visible { opacity: 1; transform: translateY(0); }


/*----- お問い合わせ後から実施までのスケジュール -----*/
#campaign #schedule{
	position: relative;
	background-color: #D8EFA5;
	padding: 0 0 3%;
}
#campaign #schedule::after{
	content: '';
	position: absolute;
	bottom: -3%;
	right: 5%;
	width: 100%;
	height: 100%;
	background: url('../img/jata.png') no-repeat right bottom;
	background-size: 15%;
}
#campaign #schedule h2{
	margin: -3% auto 3%;
}
#campaign #schedule p{
	margin: 0.5rem auto;
}

/* フロー図 */

#campaign #schedule .flow{
	display: flex;
	gap: 5%;
	margin: 5% 20%;
}
#campaign #schedule .flow .col{
	flex: 1;
	display: flex;
	flex-direction: column;
	position: relative;
}
#campaign #schedule .flow .left{
	margin-bottom: 20%;
}
#campaign #schedule .flow .right{
	margin-top: 20%;
}

#campaign #schedule .flow .col .item{
	position: relative;
	display: flex;
	flex: 1;
	min-height: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 18px;
	align-items: center;
	justify-content: center;
	padding: 10%;
	box-shadow: 3px 5px 11px rgba(0,0,0,0.1);
	margin: 5% 0;
}
#campaign #schedule .flow .left .item::after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 97%;
	width: 100%;
	height: 100%;
	background: url('../img/schedule_arrow01.png') no-repeat left bottom 10%;
	background-size: 17%;
	z-index: 3;
}
#campaign #schedule .flow .right .item:not(:last-child)::before{
	content: '';
	position: absolute;
	bottom: 0;
	right: 13%;
	width: 100%;
	height: 100%;
	background: url('../img/schedule_arrow02.png') no-repeat left bottom 10%;
	background-size: 17%;
	z-index: 3;
}
#campaign #schedule .flow .col .item .item_inner{
	align-items: center;
	margin: auto;
}
#campaign #schedule .flow .col .item .item_inner h3{
	margin: 7% auto 3%;
	font-size: 1.5em;
	font-weight: bold;
}
#campaign #schedule .flow .col .item .item_inner p{
	text-align: left;
}
#campaign #schedule a{
	display: block;
	position: relative;
	width: 25%;
	margin: auto;
	z-index: 3;
}



/*----- フッター -----*/
#campaign .footer{
	display: flex;
	justify-content: center;
	gap: 5%;
	align-items: center;
	background-color: #FFF;
	margin: 4% 15%;
}
#campaign .footer a{
	width: 30%;
}
#campaign .footer p{
	text-align: left;
}



















/*====================== SP =======================*/

@media only screen and (max-width: 768px) {
	
	/*----- common -----*/
	body{
		min-width: 0;
	}
	#campaign .sp{
		display: block;
	}
	#campaign .pc{
	display: none;
}
	#campaign h2{
		width: 100%;
	}

	
	
	/*----- 閉じる -----*/	
.close {
   width: 60%;
   margin: 3rem auto 5rem;
	}
.close_top {
    top: 3%;
    right: 5%;
}
	.close_top a{
        padding: 0px 9px;
	}
	


	/*----- MV -----*/
	#campaign .mv {
		width: 100%;
		height: 85vh;
		background-image: url("../img/mv_bg_sp.png");
		background-size: cover;
		background-repeat: no-repeat;
		background-position: bottom;
	}
	#campaign .mv .logo{
		position: absolute;
		width: 30%;
		top: 2%;
		left: 5%;
	}
	#campaign .mv .mv_ttle{
		width: 100%;
		top: 37%;
	}
	#campaign .mv p{
		width: 85%;
		top: 60%;
		font-size: 14px;
		text-align: center;
		text-shadow: 2px 2px 4px #fff,-2px 2px 4px #fff,2px -2px 4px #fff,-2px -2px 4px #fff;

	}
	#campaign .mv .btn{
		width: 66%;
		top: 83%;
	}
	#campaign .mv .btn_p{
		top: 94%;
	}

	/*----- こんなシーンで活用いただけます -----*/
	#campaign .top #top{
		margin: 0 auto;
		padding: 10% 0 0;
	}
	#campaign .top #top h2{
		width: 80%;
	}
	#campaign .top #top ul{
		width: 100%;
		margin: 5% auto 0 0.5%;
	}
	#campaign .top #top ul li{
		display: block;
		width: 100%;
		margin: -1% auto;
		
	}
	#campaign .top #top .top_info{
		display: block;
		width: 85%;
	}
	#campaign .top #top .top_info p{
		width: 100%;
		font-size: 14px;
		margin: 7% auto;
	}
	#campaign .top #top .top_info a{
		padding: 0;
		margin: 0;
	}
	#campaign .top #top .top_info a .btn{
		width: 80%;
		margin: 7% auto;
	}

	
	
	/*----- 取り扱い商品例 -----*/
	#campaign .top #example{
		margin-top: 14%;
		padding-bottom: 14%;
	}
	#campaign .top #example h2{
		width: 80%;
	}
	#campaign .top #example ul{
		width: 95%;
		margin: 3% auto 0;
	}
	#campaign .top #example li{
		width: calc((100% - 0px) / 2);
		margin: -1% auto;
	}
	
	
	
	/*----- JAタウンが選ばれる理由 -----*/
	#campaign .point_wrapper #point{
		border-top-left-radius: 100% 20%;
		border-top-right-radius: 100% 20%;
		border-bottom-left-radius: 100% 20%;
		border-bottom-right-radius: 100% 20%;
	}
	#campaign .point_wrapper #point .ttl{
		margin-top: 5%;
	}
	#campaign .point_wrapper #point .point_col_wrapper{
		display: block;
		margin: 7% auto 0;
	}
	#campaign .point_wrapper #point .point_col_wrapper .point_col{
		width: 85%;
		margin: auto;
	}
	#campaign .point_wrapper #point .point_col_wrapper .point_col p{
		margin: 5% auto 14%;
	}
	#campaign .point_wrapper #point .point_attention{
		width: 80%;
		text-align: left;
		margin: 3% auto 2%;
	}
	
	
	/*----- JAタウン 47都道府県おすすめ商品一覧 -----*/
	/*- 日本地図 -*/
	#campaign #list{
		margin: -8% auto 0;
	}
	#campaign #list .map .map_parts{
		width: 77%;
		margin: 0 auto 0 10%;
	}
	#campaign #list .map .map_btn{
		border-radius: 99px;
	}
	#campaign #list .map .hokkaido{
		top: 14%;
		left: 3%;
	}
	#campaign #list .map .chubu{
		top: 32%;
		left: 3%;
	}
	#campaign #list .map .kinki{
		top: 50%;
		left: 3%;
	}
	#campaign #list .map .kanto{
		top: 55%;
		left: auto;
		right: 3%;
	}
	#campaign #list .map .chugoku{
		top: 73%;
		left: auto;
		right: 3%;
	}
	#campaign #list .map .kyushu{
		top: 91%;
		left: auto;
		right: 3%;
	}

	
	/*- 都道府県リスト -*/
	#campaign #list .osusume-links .area_inner{
		display: flex;
		flex-direction: column;
		width: 92%;
		margin: 0 auto;
		gap: 10px;
		padding: 2% 5%;
	}
	#campaign #list .osusume-links .region{
		width: 100%;
		box-sizing: border-box;
		padding: 0;
	}
	#campaign #list .region-text{
		display: flex;
		flex-direction: column;
		gap: 17px;
		align-items: flex-start;
		margin: 3% 5%;
	}
	#campaign #list .region-text h3{
		font-size: 22px;
		margin: 0;
		padding: 0;
	}
	#campaign #list .region-text p{
		font-weight: bold;
		margin: auto;
	}

	
	/* アコーディオンメニュー　　デフォルト状態　*/

	#campaign #list .region-text .accordion-content {
		display: none;
	}
	#campaign #list .region-text .accordion-ttl{
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	#campaign #list .region-text .accordion-icon {
		font-size: 15px;
		font-weight: bold;
		margin: auto 0 auto auto;
}
	
	
	/*----- 導入事例 -----*/
	#campaign #voice{
		
	}
	#campaign #voice h2{
		width: 70%;
	}
	#campaign #voice .voice_list{
		width: 95%;
		padding-bottom: 50%;
	}
	#campaign #voice .voice_list01::before, #campaign #voice .voice_list03::before{
		bottom: -8%;
		left: 0;
		background-size: 66%;
		background-position: right bottom 25%;
	}
	#campaign #voice .voice_list02::before{
		bottom: -8%;
		right: 0;
		background-size: 66%;
		background-position: left bottom 25%;

	}
	#campaign #voice .voice_list:nth-of-type(odd) .voice_list_p,
	#campaign #voice .voice_list:nth-of-type(even) .voice_list_p{
		width: 100%;
		margin: 0 auto;
	}
	#campaign #voice .voice_list:nth-of-type(odd) h3{
		width: 77%;
		font-size: 1.2rem;
		margin: 0 auto 0 23%;
		padding: 2% 0 0 0;
		letter-spacing: 1px;
	}
	#campaign #voice .voice_list:nth-of-type(odd) h4{
		width: 77%;
		font-size: 1rem;
		font-weight: bold;
		margin: 0 auto 0 23%;
		padding: 1.5% 0 0 0;
	}
	#campaign #voice .voice_list:nth-of-type(odd) p,
	#campaign #voice .voice_list:nth-of-type(even) p{
		padding: 3% 5%;
		font-size: 0.8rem;
		letter-spacing: 0;
		line-height: 1.7;
	}
	#campaign #voice .voice_list:nth-of-type(even) h3{
		width: 77%;
		font-size: 1.2rem;
		margin: 0 20% 0 auto;
		padding: 2% 0 0 0;
		letter-spacing: 1px;
	}
	#campaign #voice .voice_list:nth-of-type(even) h4{
		width: 77%;
		font-size: 1rem;
		font-weight: bold;
		margin: 0 20% 0 auto;
		padding: 1.5% 0 0 0;
	}	
	
	/*----- お問い合わせ後から実施までのスケジュール -----*/
	#campaign #schedule{
		padding: 5% 0;
	}
	#campaign #schedule h2{
		width: 90%;
		margin: -3% auto 5%;
	}
	#campaign #schedule p{
		width: 90%;
		text-align: left;
		margin: 0.3rem auto 1rem;
	}
	
	#campaign #schedule a{
		width: 70%;
		margin: 10% auto;
	}
	#campaign #schedule::after{
		background-size: 30%;
	}

	/* フロー図 */
	#campaign #schedule .flow{
		gap: 2%;
		margin: 14% 2% 10%;
	}
	#campaign #schedule .flow .col .item{
		padding: 5%;
	}
	#campaign #schedule .flow .left .item::after{
		left: 93%;
		bottom: -3%;
		background-size: 20%;
	}
	#campaign #schedule .flow .right .item:not(:last-child)::before{
		bottom: -7%;
		background-size: 20%;
	}
	#campaign #schedule .flow .col .item .item_inner{
		margin: 20% 0 10%;
	}
	#campaign #schedule .flow .col .item .item_inner img{
		width: 35%;
	}
	#campaign #schedule .flow .col .item .item_inner h3{
		font-size: 1rem;
	}
	#campaign #schedule .flow .col .item .item_inner p{
		font-size: 0.8em;
		padding-top: 0.5em;
	}
	
	/*----- フッター -----*/
	#campaign .footer{
		display: block;
		margin: 17% 8%;
	}
	#campaign .footer a{
		display: block;
		width: 100%;
		margin: 5% auto;
	}
}






