				/* ==========================================================================
   1. 共通 / PC スタイル (コード内容の変更なし)
   ========================================================================== */

				header {
					display: block;
					background: #fff;
					padding: 20px 30px;
					line-height: 1;
					position: relative;
					z-index: 99;
				}

				header #logo {
					display: block;
				}

				#mainvisual {
					display: block;
					width: 100%;
					padding: 0 40px;
				}

				#mainvisual img {
					display: block;
					margin: 0 auto;
					width: 100%;
				}

				.container {
					display: block;
					max-width: 1020px;
					width: 100%;
					margin: 0 auto;
				}

				.present {
					margin-bottom: 16px;
				}

				.present img {
					width: 100%;
				}

				/* コンテナ設定 */
				.campaign-container {
					width: 100%;
					max-width: 100%;
					/* 画像の比率に合わせた最大幅 */
					display: flex;
					flex-direction: column;
					gap: 16px;
					/* 行間の隙間 */
				}

				.present_wrap .container {
					position: relative;
				}

				/* 行の基本スタイル */
				.campaign-row {
					display: flex;
					border-radius: 12px;
					/* 角丸 */
					overflow: hidden;
					color: #ffffff;
					margin-bottom: 20px;
					min-height: 100px;
				}

				/* 背景色のバリエーション */
				.row-teal {
					background-color: #2cb3a4;
				}

				.row-pink {
					background-color: #e56b95;
				}

				.row-blue {
					background-color: #4991d1;
				}

				/* 左側：ラベル部分 */
				.campaign-label {
					width: 21%;
					min-width: 120px;
					display: flex;
					align-items: center;
					justify-content: center;
					font-size: 24px;
					font-weight: bold;
					letter-spacing: 0.05em;
					border-right: 3px solid #ffffff;
					/* 白い区切り線 */
					position: relative;
					flex-shrink: 0;
				}

				/* 右側：コンテンツ部分 */
				.campaign-content {
					width: 79%;
					padding: 18px 24px;
					display: flex;
					flex-direction: column;
					justify-content: center;
					line-height: 1.5;
				}

				/* 横並び用（預入金額・期間で使用） */
				.campaign-content.flex-align {
					flex-direction: row;
					align-items: center;
					justify-content: flex-start;
					gap: 20px;
					flex-wrap: wrap;
				}

				/* テキストスタイル詳細 */
				.font-bold {
					font-weight: bold;
				}

				.main-text {
					font-size: 21px;
					margin-bottom: 6px;
					letter-spacing: 0.02em;
				}

				.note-asterisk {
					font-size: 14px;
					vertical-align: super;
				}

				.condition-item {
					font-size: 18px;
					font-weight: bold;
					margin-top: 2px;
					letter-spacing: 0.02em;
				}

				.inline-note {
					font-size: 13px;
					font-weight: bold;
					margin-left: 8px;
					display: inline-block;
					vertical-align: middle;
				}

				.amount-text,
				.period-text {
					font-size: 24px;
					letter-spacing: 0.05em;
				}

				.content-note {
					font-size: 16px;
					font-weight: bold;
					letter-spacing: 0.02em;
				}

				/* 改行コントロール用 */
				.sp-only {
					display: none;
				}

				/* コンポーネント全体のコンテナ */
				.campaign-catch-container {
					box-sizing: border-box;
					width: 100%;
					max-width: 100%;
					margin: 0 auto;
					padding: 40px 0;
					display: flex;
					gap: 30px;
					/* WeasyPrint/レガシー環境互換のためテーブルレイアウトを採用 */
					table-layout: fixed;
					background-color: #ffffff;
					/* 必要に応じて背景色を変更してください */
				}

				/* 左右のイラストエリア・中央テキストエリアの共通子要素設定 */
				.illustration-left,
				.catch-text-content,
				.illustration-right {
					display: table-cell;
					vertical-align: middle;
				}

				/* 左側イラストエリア（幅は必要に応じて調整してください） */
				.illustration-left {
					width: 25%;
					text-align: left;
					position: relative;
				}

				/* 右側イラストエリア（幅は必要に応じて調整してください） */
				.illustration-right {
					width: 20%;
					text-align: right;
					position: relative;
				}

				/* イラストを画像タグで入れる場合の基本スタイル */
				.illustration-left img,
				.illustration-right img {
					max-width: 100%;
					height: auto;
					display: inline-block;
					vertical-align: middle;
				}

				/* 中央のテキストエリア */
				.catch-text-content {
					width: 55%;
					text-align: center;
					color: #333333;
					/* 文字色（濃いめのグレー） */
					line-height: 1.6;
				}

				.campaign-catch-container .benefit-text {
					font-size: 21px;
					line-height: 1.8;
					font-weight: bold;
					letter-spacing: 0.03em;
					margin: 0 0 30px 0;
					font-family: "Yu Gothic Medium", "YuGothic", "游ゴシック体", "游ゴシック", sans-serif;
					font-weight: bold;
				}

				.campaign-catch-container .sub-message {
					font-size: 20px;
					font-weight: bold;
					letter-spacing: 0.05em;
					margin: 0 0 44px 0;
					/* 下部リード文との間の広い余白 */
				}

				.campaign-catch-container .lead-text {
					font-size: 22px;
					font-weight: bold;
					letter-spacing: 0.05em;
					margin: 0;
					font-family: "Yu Gothic Medium", "YuGothic", "游ゴシック体", "游ゴシック", sans-serif;
					font-weight: bold;
				}

				/* ==========================================================================
【修正箇所】100%幅・上下楕円形のオレンジ背景設定
========================================================================== */

				.campaign-summary {
					margin-bottom: 80px;
				}

				.campaign-summary-bg {
					width: 100%;
					/* background-image: url('../images/present_bg.svg');
					background-repeat: no-repeat;
					background-position: top center;
					background-size: cover; */
					background-color: #f29600;
					display: flex;
					justify-content: center;
					align-items: center;
					text-align: center;
					/* padding: 135px 20px 17% 20px; */
					padding: 0 20px;
				}

				.circle_img {
					display: block;
					width: 100%;
					line-height: 1;
				}

				.circle_img img {
					display: block;
					width: 100%;
				}

				.campaign-container {
					max-width: 1020px;
					display: block;
					margin: 0 auto;
					position: relative;
				}

				.campaign-summary-bg .campaign-container {
					margin-top: -50px;
				}


				.present_top_section {
					display: block;
					width: 100%;
					margin-bottom: 60px;
					padding-bottom: 10px;
					border-bottom: 2px solid #fff;
				}

				.campaign-container p.title {
					display: block;
					padding: 15px;
					background-color: #fff;
					font-size: 24px;
					color: #f29600;
					text-align: center;
					border-radius: 5px;
					line-height: 1;
					position: relative;
				}

				.campaign-container p.title span {
					position: absolute;
					left: 5px;
					top: 30px;
					z-index: 9;
				}

				.campaign_text {
					display: block;
					font-size: 24px;
					color: #fff;
					text-align: center;
					margin: 50px 0 20px 0;
					line-height: 1;
				}

				.present_section {
					display: flex;
					align-items: center;
					justify-content: center;
					width: 100%;
					gap: 20px;
				}

				.present_section p {
					display: block;
					text-align: left;
					font-size: 18px;
					color: #fff;
				}

				p.present_max {
					display: block;
					margin-top: 15px;
					color: #fff;
					font-size: 21px;
					text-align: center;
				}

				/* 全体コンテナ（背景のオレンジ） */
				.bonus-container {
					background-color: #ee9500;
					padding: 40px 20px;
					width: 100%;
					box-sizing: border-box;
				}

				/* インナーラッパー */
				.bonus-inner {
					display: flex;
					justify-content: center;
					align-items: center;
					max-width: 1000px;
					margin: 0 auto;
				}

				/* -------------------------------------------
左側：U字線 ＆ タイトルエリア
------------------------------------------- */
				.bonus-left-wing {
					position: relative;
					flex: 1;
					height: 245px;
					/* テーブルの高さ（52px * 4行 + 隙間）に合わせる */
					display: flex;
					align-items: center;
					justify-content: flex-end;
					/* テーブル側に寄せる */
					margin-right: 40px;
					/* テーブルとの適度な余白 */
				}

				/* 左のU字線（画像を使わずCSSの3辺 border で再現） */
				.bonus-left-wing::before {
					content: "";
					position: absolute;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					border-top: 4px solid #ffffff;
					border-bottom: 4px solid #ffffff;
					border-left: 4px solid #ffffff;
					/* 右側（テーブル側）は border を無しにして分断 */
					border-top-left-radius: 100px;
					/* 高さ180pxの半分 */
					border-bottom-left-radius: 100px;
					pointer-events: none;
				}

				.bonus-title {
					color: #ffffff;
					font-size: 38px;
					font-weight: bold;
					letter-spacing: 0.05em;
					margin: 0;
					white-space: nowrap;
					z-index: 1;
				}

				/* -------------------------------------------
中央：テーブルエリア（独立）
------------------------------------------- */
				.bonus-table-area {
					width: 520px;
					flex-shrink: 0;
					z-index: 2;
				}

				.bonus-table {
					width: 100%;
					border-collapse: collapse;
					border-spacing: 2px;
					table-layout: fixed;
					border: 2px solid #fff;
				}

				.bonus-table th,
				.bonus-table td {
					height: auto;
					border-bottom: 1px solid #fff;
					border-right: 1px solid #fff;
					text-align: center;
					vertical-align: middle;
					font-weight: bold;
					line-height: 1;
					box-sizing: border-box;
				}

				.bonus-table th {
					padding: 15px 0;
					border-bottom: 2px solid #fff;
				}

				.bonus-table td {
					padding: 10px 0;
				}

				/* 預入金額列（ブルー） */
				.th-deposit {
					background-color: #2b84ca;
					color: #ffffff;
					font-size: 24px;
					letter-spacing: 0.05em;
				}

				.td-deposit {
					background-color: #2b84ca;
					color: #ffffff;
					font-size: 32px;
					position: relative;
					padding-right: 30px;
				}

				/* 矢印アイコン */
				.td-deposit::after {
					content: "";
					position: absolute;
					right: 24px;
					top: 50%;
					transform: translateY(-50%);
					border-top: 8px solid transparent;
					border-bottom: 8px solid transparent;
					border-left: 10px solid #ffffff;
				}

				/* 特典列（ピンク） */
				.th-benefit {
					background-color: #e66695;
					color: #ffffff;
					font-size: 24px;
					letter-spacing: 0.1em;
				}

				.td-benefit {
					background-color: #e66695;
					color: #ffffff;
					font-size: 32px;
				}

				/* -------------------------------------------
右側：U字線エリア（空白）
------------------------------------------- */
				.bonus-right-wing {
					position: relative;
					flex: 1;
					height: 245px;
					margin-left: 40px;
				}

				/* 右のU字線 */
				.bonus-right-wing::before {
					content: "";
					position: absolute;
					top: 0;
					left: 0;
					right: 0;
					bottom: 0;
					border-top: 4px solid #ffffff;
					border-bottom: 4px solid #ffffff;
					border-right: 4px solid #ffffff;
					/* 左側（テーブル側）は border を無しにして分断 */
					border-top-right-radius: 100px;
					border-bottom-right-radius: 100px;
					pointer-events: none;
				}

				.bonus_about_table {
					display: block;
					width: 100%;
					border: 3px solid #4593d0;
					background: #fff;
					border-radius: 10px;
				}

				.bonus_about_table table {
					border-collapse: collapse;
				}

				.bonus_about_table table th {
					width: 17%;
					border-bottom: 1px solid #4593d0;
					border-right: 1px solid #4593d0;
					color: #717071;
					font-weight: 500;
					font-size: 16px;
					padding: 15px;
				}

				.bonus_about_table table td {
					width: 83%;
					border-bottom: 1px solid #4593d0;
					text-align: left;
					color: #717071;
					font-weight: 500;
					font-size: 16px;
					padding: 15px;
				}

				.bonus_about_table table td span.small_text {
					font-size: 14px;
					margin-top: 10px;
					display: block;
				}

				.campaign_illust {
					display: block;
					text-align: center;
					margin-top: -60px;
				}

				.campaign_join {
					display: block;
					width: 100%;
				}

				.campaign_join .container {
					position: relative;
				}

				.campaign_join p.title {
					display: block;
					width: 100%;
					padding: 15px;
					font-size: 24px;
					border-radius: 5px;
					font-weight: 500;
					text-align: center;
					color: #fff;
					background-color: #ea6d99;
					line-height: 1;
				}

				.campaign_join .colum {
					display: flex;
					gap: 30px 30px;
					width: 100%;
					padding: 20px 10px;
				}

				.campaign_join .colum .colum_text {
					display: block;
					flex: 0 0 48%;
				}

				.campaign_join .colum .colum_ph {
					flex: 1;
					text-align: center;
				}

				.campaign_join .colum .colum_title {
					display: block;
					font-size: 24px;
					color: #d53472;
				}

				.campaign_join .colum p {
					display: block;
					line-height: 1.8;
					font-size: 18px;
				}

				/* ==========================================
Layout & Container
========================================== */
				.campaign-wrapper {
					width: 100%;
					background: #ffffff;
					margin-top: -7%;
				}

				/* ==========================================
【重要修正】上下が共に湾曲したピンクの背景
========================================== */
				.bg-pink-curve {
					width: 100%;
					/* 高さはデザインに応じて調整してください。ここでは文字が入る高さを確保 */
					text-align: center;
					position: relative;
					background-position: top center;
					height: auto;
				}

				.bg-pink-curve img {
					display: block;
					width: 100%;
				}

				/* 白いバッジ（ピンク背景の中に配置） */
				.tag-badge {
					display: inline-block;
					background-color: #ffffff;
					color: #e56299;
					font-weight: bold;
					font-size: 24px;
					max-width: 1020px;
					width: 100%;
					letter-spacing: 0.05em;
					padding: 12px 65px;
					border-radius: 6px;
					box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
					position: absolute;
					left: 50%;
					bottom: 35%;
					transform: translateX(-50%);
					z-index: 5;
				}

				/* ==========================================
コンテンツセクション（白背景エリア）
========================================== */
				.content-body {
					text-align: center;
					padding-bottom: 0;
					position: relative;
					z-index: 10;
					margin-top: -8%;
				}

				/* 画像エリア */
				.image-area {
					display: flex;
					justify-content: center;
					gap: 90px;
					max-width: 100%;
					margin: 0 auto 30px;
				}

				.image-area img {
					max-width: 370px;
				}

				.main-visual {
					width: 100%;
					height: auto;
				}

				.campaign-wrapper .text-area {
					position: relative;
				}

				/* ==========================================
Text Area & Typography
========================================== */
				.catch-phrase {
					display: flex;
					align-items: center;
					justify-content: center;
					flex-wrap: wrap;
					gap: 28px;
					margin-bottom: 35px;
					font-family: "zen-maru-gothic", sans-serif !important;
					font-weight: 500;
					font-style: normal;
				}

				.sub-text {
					color: #007bc4;
					font-weight: bold;
					font-size: 36px;
					line-height: 1.5;
					text-align: left;
				}

				.main-reward {
					text-align: left;
				}

				/* 「最大」「金額」「円」を横一列に並べるラッパー */
				.reward-row {
					display: flex;
					align-items: center;
					/* 縦方向の中央揃え */
					flex-wrap: nowrap;
					/* 絶対に横並びを維持 */
				}

				/* 【重要修正】「最大」バッジの段落ち・崩れ対策 */
				.badge-max {
					display: flex;
					align-items: center;
					justify-content: center;
					background-color: #e63178;
					color: #ffffff;
					font-weight: bold;
					font-size: 40px;
					border-radius: 50%;
					width: 130px;
					height: 130px;
					flex-shrink: 0;
					/* 親要素が狭くなっても絶対に縮ませない */
					white-space: nowrap;
					/* 文字の自動折り返し・段落ちを禁止 */
					margin-right: 8px;
				}

				.amount {
					color: #e63178;
					font-size: 100px;
					font-weight: 900;
					line-height: 1;
					letter-spacing: -0.02em;
				}

				.unit {
					color: #e63178;
					font-size: 40px;
					font-weight: bold;
					margin-left: 4px;
					align-self: flex-end;
					/* 「円」の文字を下辺に合わせる */
					position: relative;
					bottom: 8px;
					/* 微調整 */
				}

				.reward-sub {
					color: #e63178;
					font-weight: bold;
					font-size: 26px;
					margin-top: 6px;
					padding-left: 2px;
				}

				.notice {
					font-size: 24px;
					font-weight: bold;
					line-height: 1.6;
					color: #111111;
					margin-bottom: 40px;
				}

				/* ==========================================
Button
========================================== */
				.btn-detail {
					display: inline-block;
					background-color: #2cb3a3;
					color: #ffffff;
					font-weight: bold;
					font-size: 21px;
					text-decoration: none;
					width: 85%;
					padding: 16px 20px;
					border-radius: 8px;
					transition: background-color 0.3s ease, transform 0.2s ease;
				}

				.btn-detail:hover {
					background-color: #35c4b3;
				}

				.campaign_illust2 {
					display: block;
					text-align: center;
					margin: 40px auto 25px auto;
				}

				/* ==========================================
【新規追加】シミュレーションセクション
========================================== */
				.simulation-section {
					width: 100%;
					background-image: url("../images/sumilation_bg.png");
					background-size: 100% 100%;
					background-position: center;
					background-repeat: no-repeat;
					min-height: 505px;
					/* background: #2cb5a9; */
					padding: 0 20px;
					position: relative;
				}

				.simulation-section .container {
					/* position: relative; */
					position: absolute;
					top: 50%;
					left: 50%;
					transform: translate(-50%, -50%);
					width: 100%;
				}

				/* 白枠の共通ボックス */
				.sim-box-white {
					max-width: 605px;
					background-color: #ffffff;
					border-radius: 8px;
					padding: 20px;
					line-height: 1;
					text-align: center;
					margin: 0 auto 50px auto;
				}

				.sim-title-main {
					font-size: 24px;
					color: #2cb3a3;
					/* エメラルドグリーン */
					font-weight: bold;
					letter-spacing: 0.05em;
					margin-bottom: 0;
				}

				.sim-title-main.color-green {
					color: #2cb3a3;
				}

				/* 入力行 */
				.sim-input-row {
					display: flex;
					align-items: center;
					justify-content: center;
					flex-wrap: wrap;
					gap: 10px;
					margin-bottom: 60px;
				}

				.input-field {
					width: 140px;
					height: 45px;
					border: 2px solid #333333;
					font-size: 1.3rem;
					font-weight: bold;
					text-align: center;
					border-radius: 4px;
				}

				.input-beige {
					background-color: #fcecd7;
					/* 薄いベージュ */
				}

				.input-white {
					background-color: #ffffff;
				}

				.input-unit {
					font-size: 1.25rem;
					font-weight: bold;
					color: #ffffff;
					/* 背景が緑なので白文字に */
					text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
				}

				.sim-box-white .input-unit {
					color: #333333;
					/* 白ボックス内は通常色 */
					text-shadow: none;
				}

				.sim-note {
					font-size: 18px;
					line-height: 1.5;
					color: #ffffff;
					font-weight: bold;
					margin-bottom: 0;
					text-align: center;
				}

				.sim-box-white .sim-note {
					color: #333333;
				}

				/* タブエリア */
				.tab-area {
					display: flex;
					justify-content: center;
					gap: 20px;
					flex-wrap: wrap;
				}

				.tab-btn {
					border: none;
					font-size: 1.1rem;
					font-weight: bold;
					padding: 12px 30px;
					border-radius: 25px;
					cursor: pointer;
					box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
				}

				.tab-orange {
					background-color: #ff6f00;
					/* オレンジ */
					color: #ffffff;
				}

				.tab-gray {
					background-color: #cccccc;
					/* グレー */
					color: #666666;
				}

				/* ==========================================
テーブル（特典一覧）
========================================== */
				.benefit-tables {
					margin-top: 40px;
				}

				.benefit-group {
					margin-bottom: 35px;
				}

				.benefit-group-title {
					font-size: 1.25rem;
					color: #ffffff;
					font-weight: bold;
					text-align: center;
					margin-bottom: 12px;
					text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
				}

				.benefit-table {
					width: 100%;
					border-collapse: collapse;
					background-color: #ffffff;
					border-radius: 6px;
					overflow: hidden;
					box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
				}

				.benefit-table th {
					background-color: #a08271;
					/* デザインの茶・グレー系のヘッダー色 */
					color: #ffffff;
					font-weight: bold;
					padding: 12px 10px;
					font-size: 0.95rem;
					border: 1px solid #a08271;
				}

				.benefit-table td {
					padding: 14px 15px;
					font-size: 0.9rem;
					font-weight: bold;
					border-bottom: 1px solid #dddddd;
					border-right: 1px solid #dddddd;
					vertical-align: middle;
				}

				.benefit-table td:last-child {
					border-right: none;
				}

				/* 各列の幅 */
				.th-check {
					width: 60px;
				}

				.th-content {
					width: auto;
				}

				.th-reward {
					width: 240px;
				}

				.td-check {
					text-align: center;
				}

				.td-reward {
					text-align: center;
					white-space: nowrap;
				}

				.td-reward strong {
					color: #e56299;
					/* 特典金額をピンクに */
					font-size: 1.1rem;
				}

				.table-note {
					font-size: 0.85rem;
					color: #ffffff;
					font-weight: bold;
					margin-top: 8px;
					padding-left: 5px;
				}

				/* ==========================================
【重要】チェックボックスのカスタム（二重丸）
========================================== */
				.check-container {
					display: inline-block;
					position: relative;
					width: 24px;
					height: 24px;
					cursor: pointer;
					user-select: none;
				}

				/* デフォルトのチェックボックスを隠す */
				.check-container input {
					position: absolute;
					opacity: 0;
					cursor: pointer;
					height: 0;
					width: 0;
				}

				/* カスタム二重丸の外枠 */
				.checkmark {
					position: absolute;
					top: 0;
					left: 0;
					width: 24px;
					height: 24px;
					background-color: #ffffff;
					border: 2px solid #666666;
					border-radius: 50%;
				}

				/* マウスホバー時 */
				.check-container:hover input~.checkmark {
					background-color: #f5f5f5;
				}

				/* チェックがついた時の外枠の変化 */
				.check-container input:checked~.checkmark {
					border-color: #333333;
				}

				/* チェックがついた時の内側の丸（二重丸の再現） */
				.checkmark::after {
					content: "";
					position: absolute;
					display: none;
					top: 4px;
					left: 4px;
					width: 12px;
					height: 12px;
					background-color: #333333;
					border-radius: 50%;
				}

				.check-container input:checked~.checkmark::after {
					display: block;
				}

				/* ==========================================
最下部 結果表示エリア
========================================== */
				.sim-result-area {
					display: flex;
					align-items: center;
					justify-content: center;
					flex-wrap: wrap;
					gap: 12px;
					margin-top: 50px;
					color: #ffffff;
				}

				.result-label-max {
					font-size: 1.8rem;
					font-weight: 900;
				}

				.result-total-field {
					width: 180px;
					height: 55px;
					background-color: #ffffff;
					border: 2px solid #333333;
					border-radius: 4px;
					font-size: 1.8rem;
					font-weight: 900;
					color: #e56299;
					text-align: center;
				}

				.result-unit {
					font-size: 1.4rem;
					font-weight: 900;
					letter-spacing: 0.02em;
				}

				.campaign_illust3 {
					display: block;
					text-align: center;
					margin: 0 auto 50px auto;
				}

				.jamap .container {
					position: relative;
				}



				.jamap p.title {
					background: #007563;
					display: block;
					width: 100%;
					padding: 15px;
					font-size: 24px;
					border-radius: 5px;
					font-weight: 500;
					text-align: center;
					color: #fff;
					line-height: 1;
				}

				p.jamap_img {
					margin: 40px auto;
				}

				p.jamap_img img {
					display: block;
					margin: 0 auto;
				}

				.footer_img {
					display: block;
					margin: -100px auto 40px auto;
					text-align: center;
				}

				.footer_logo {
					display: block;
					margin: 0 auto 25px auto;
				}

				footer {
					display: block;
					margin-top: 80px;
					padding: 20px;
				}

				footer img {
					display: block;
					margin: 0 auto;
				}

				footer ul {
					display: flex;
					gap: 10px;
					justify-content: center;
					list-style-type: none;
				}

				footer ul li {
					font-size: 15px;
					font-weight: 500;
					color: #231815;
					position: relative;
					padding-left: 17px;
					list-style-type: none;
				}

				footer ul li:before {
					content: "";
					position: absolute;
					left: 0;
					top: 3px;
					width: 14px;
					height: 14px;
					border-radius: 50%;
					background: #f7b515;
				}

				.contact_txt {
					display: block;
					font-size: 21px;
					margin: 20px 0;
					font-weight: bold;
					text-align: center;
				}

				.copyright {
					display: block;
					width: 100%;
					/* margin-top: -7%;
					background: url("../images/footer_bg.png") no-repeat;
					background-size: cover;
					background-position: center center;
					min-height: 310px; */
					position: relative;
					padding: 4% 0 2% 0;
				}

				.copyright img {
					width: 100%;
					position: absolute;
					bottom: 0;
					left: 50%;
					transform: translateX(-50%);
				}

				.copyright p {
					display: block;
					font-size: 18px;
					width: 100%;
					font-weight: 500;
					color: #fff;
					text-align: center;
					position: absolute;
					left: 50%;
					bottom: 30%;
					transform: translateX(-50%);
				}