@charset "utf-8";
.campaign_section {
		padding: 110px 0;
}
.campaign_inner {
		padding: 0 30px;
		position: relative;
}
.campaign_inner::before {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 360px);
		left: 0;
		width: 100%;
		height: 1005px;
		background-repeat: no-repeat;
		background-position: center 0;
		background-size: 3000px;
		background-image: url(../images/product_lineBG_pc.png);
		pointer-events: none;
}
@media(max-width: 767px) {
		.campaign_section {
				padding: 80px 0;
		}
		.campaign_inner {
				padding: 0 15px;
		}
}
.campaign_wrap {
		max-width: 1080px;
		margin: 0 auto;
}
.campaign_col_hd {
		display: flex;
		justify-content: space-between;
		align-items: center;
		color: #fff;
		height: 88px;
		padding: 0 40px;
		position: relative;
		z-index: 1
}
.campaign_col_hd h4 {
		font-size: 36px;
		font-weight: 700;
}
.campaign_col_hd p {
		font-weight: 500;
		font-size: 30px;
		letter-spacing: 0
}
.campaign_col_hd p span {
		font-family: 'Inter', sans-serif;
		font-size: 150%;
		font-weight: 700;
		margin-right: 2px;
}
@media(max-width: 960px) {
		.campaign_col_hd h4 {
				font-size: 28px;
		}
		.campaign_col_hd p {
				font-size: 24px;
		}
		.campaign_col_hd p span {
				font-size: 150%;
		}
}
@media(max-width: 767px) {
		.campaign_col_hd {
				height: auto;
				padding: 7px 15px;
		}
		.campaign_col_hd h4 {
				font-size: 20px;
				line-height: 1.5;
		}
		.campaign_col_hd p {
				font-size: 20px;
		}
		.campaign_col_hd p span {
				font-size: 40px;
		}
}
.camp_txt-1, .camp_txt-2, .camp_txt-3 {
		text-align: center;
		font-weight: 800;
}
.camp_txt-1 {
		font-size: 40px;
		margin: 0 0 20px;
}
.camp_txt-2 {
		font-size: 56px;
		margin: 0 0 20px;
}
.camp_txt-2 span.large {
		font-size: 150%;
		letter-spacing: 0 !important
}
.camp_txt-3 {
		font-size: 28px;
		margin: 0 0 15px;
}
.camp_txt-3 span.large {
		font-size: 160%;
		letter-spacing: 0
}
@media(max-width: 960px) {
		.camp_txt-1 {
				font-size: 32px;
		}
		.camp_txt-2 {
				font-size: 42px;
		}
		.camp_txt-2 span.large {
				font-size: 150%;
				letter-spacing: 0 !important
		}
		.camp_txt-3 {
				font-size: 22px;
				margin: 0 0 15px;
		}
		.camp_txt-3 span.large {
				font-size: 160%;
				letter-spacing: 0
		}
}
@media(max-width: 767px) {
		.camp_txt-1 {
				font-size: 24px;
		}
		.camp_txt-2 {
				font-size: 38px;
		}
		.camp_txt-2.extra {
				margin-bottom: 15px;
		}
		.camp_txt-2 span.large {
				font-size: 150%;
				letter-spacing: 0 !important
		}
		.camp_txt-3 {
				font-size: 22px;
				margin: 0 0 10px;
		}
		.camp_txt-3.first {
				margin-top: 35px;
		}
		.camp_txt-3.last {
				margin-bottom: 30px;
		}
		.camp_txt-3 span.large {
				font-size: 160%;
				letter-spacing: 0
		}
}
.campaign_notes_gr {
		margin: 20px 0 40px;
}
.campaign_col {
		margin: 0 0 25px;
		background-repeat: repeat-y;
		background-position: center center;
		background-size: 1200px;
		background-image: url("../images/campaign_col_bg.png");
		padding: 0 7px 7px;
		position: relative;
		z-index: 1
}
.campaign_col_inner {
		background: #fff;
		min-height: 100px;
}
.campaign_item {
		max-width: 680px;
		margin: 0 auto;
		padding: 30px;
}
.campaign_item_thumb {
		margin-bottom: 20px;
}
.campaign_item_thumb img {
		width: 100%;
		height: auto
}
.campaign_item p {
		text-align: center;
		line-height: 1.8;
		font-weight: 600;
		margin: 0 0 15px;
}
@media(max-width: 767px) {
		.campaign_item {
				padding: 30px 15px;
		}
}
.campaicn_bnr_flex {
		display: flex;
		align-items: center;
		justify-content: space-between;
		max-width: 990px;
		margin: 0 auto;
		position: relative;
		z-index: 2
}
.campaicn_bnr_left, .campaicn_bnr_right {
		display: flex;
		align-items: center;
		height: 200px;
}
.campaicn_bnr_left {
		background: #000;
		color: #fff;
		width: calc(68% - 10px);
		box-sizing: border-box;
		padding-left: 45px;
}
.campaicn_bnr_right {
		background: #DCDCDC;
		color: #000;
		width: calc(32% - 10px);
		box-sizing: border-box;
		padding-left: 30px;
}
.campaicn_bnr_thumb {
		margin-right: 20px;
}
.campaicn_bnr_thumb img {
		width: 100%;
		height: auto
}
.campaicn_bnr_left .campaicn_bnr_thumb {
		width: 170px;
}
.campaicn_bnr_right .campaicn_bnr_thumb {
		width: 110px;
}
.campaicn_bnr_caption {
		font-weight: 700;
}
.campaicn_bnr_left h5, .campaicn_bnr_right h5 {
		font-size: 20px;
		margin: 0 0 15px;
}
.campaicn_bnr_left p {
		font-size: 20px;
		line-height: 1.6;
}
.campaicn_bnr_right p {
		line-height: 1.6;
}
@media(max-width: 1200px) {
		.campaicn_bnr_left h5, .campaicn_bnr_right h5 {
				font-size: 18px;
				margin: 0 0 10px;
		}
		.campaicn_bnr_left p {
				font-size: 18px;
				line-height: 1.6;
		}
		.campaicn_bnr_left p .spbr {
				display: block
		}
		.campaicn_bnr_left {
				width: calc(63% - 5px);
				padding-left: 25px;
		}
		.campaicn_bnr_right {
				width: calc(37% - 5px);
				padding-left: 25px;
		}
		.campaicn_bnr_left .campaicn_bnr_thumb {
				width: 136px;
		}
		.campaicn_bnr_right .campaicn_bnr_thumb {
				width: 88px;
		}
}
@media(max-width: 960px) {
		.campaicn_bnr_left {
				width: calc(63% - 5px);
				padding-left: 20px;
		}
		.campaicn_bnr_right {
				width: calc(37% - 5px);
				padding-left: 20px;
		}
		.campaicn_bnr_left, .campaicn_bnr_right {
				height: 180px;
		}
}
@media(max-width: 767px) {
		.campaicn_bnr_flex {
				display: block;
		}
		.campaicn_bnr_left, .campaicn_bnr_right {
				width: 100%;
		}
		.campaicn_bnr_left {
				margin-bottom: 15px;
		}
		.campaicn_bnr_left .campaicn_bnr_thumb {
				width: 100px;
				margin-right: 10px;
		}
		.campaicn_bnr_right .campaicn_bnr_thumb {
				width: 110px;
				margin-right: 0;
		}
		.campaicn_bnr_left h5, .campaicn_bnr_right h5 {
				margin: 0 0 5px;
		}
		.campaicn_bnr_left p, .campaicn_bnr_right p {
				font-size: 14px;
				line-height: 1.5;
		}
		.campaicn_bnr_left, .campaicn_bnr_right {
				height: auto;
				padding: 20px 0px 20px 20px
		}
}