@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');

/* ------------------------------------------------------------
	ベースレイアウト
------------------------------------------------------------ */

/* reset
---------------------------------------- */
*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	background: transparent;
	font-weight: inherit;
	font-size: inherit;
	font-style: inherit;
	-webkit-tap-highlight-color: transparent;
}
article,
aside,
details,
figcaption,
figure,
picture,
main,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}
ul,
ol {
	list-style: none;
}
blockquote,
q {
	quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
}
button {
	font-family: inherit;
}

/* vars
---------------------------------------- */
:root {
	--color-base: #333333;
	--color-border: #EEEEEE;
	--color-fill: #ECECEC;
	--color-hold-primay: #006CB8;
	--color-hold-secondary: #202F55;
	--color-hold-tertiary: #A29355;
	--color-hold-logo: #0062B0;
	--color-wallet-primay: #CB140D;
	--color-wallet-secondary: #CB140D;
	--color-wallet-tertiary: #ED85A7;
	--color-wallet-logo: #ED85A7;
	--color-white: #FFFFFF;
	--color-black2: #222222;
	--color-black4: #444444;
	--color-black6: #666666;
	--color-black9: #999999;
	--color-red: #CC0000;
	--color-ifree: #62676A;
}

/* html
---------------------------------------- */
html {
	font-size: 10px;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
}
body {
	font-size: 2.0rem;
	font-weight: 400;
	line-height: 1.6;
	font-family: 'Noto Sans', 'Noto Sans JP', sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	color: var(--color-base);
	letter-spacing: 0.05em;
}
img {
	display: block;
	max-width: 100%;
	height: auto;
}
sup {
	display: inline-block;
	font-size: 1.0rem;
	vertical-align: text-top;
}
.svg-symbol {
	position: absolute;
	width: 0;
	height: 0;
	pointer-events: none;
}
@media (max-width: 767px) {
	body {
		font-size: 1.6rem;
	}
}


/* ------------------------------------------------------------
	汎用パーツ
------------------------------------------------------------ */

/* ファンドロゴ
---------------------------------------- */
.fund-logo {
	color: var(--color-white);
}
.fund-logo_ifree {
	fill: var(--color-ifree);
}
.fund-logo_hold {
	fill: var(--color-hold-logo);
}
.fund-logo_wallet {
	fill: var(--color-wallet-logo);
}

/* テーマカラー
---------------------------------------- */
.hold.theme-color,
.hold .theme-color {
	color: var(--color-hold-tertiary) !important;
}
.hold.theme-bgcolor,
.hold .theme-bgcolor {
	position: relative;
	margin-top: -30px;
	background: url('../images/base/g_holdbg_img_01_20250625.png') no-repeat;
	background-size: contain;
	background-position: top left;
	background-color: var(--color-hold-secondary) !important;
	border-radius: 30px 30px 0 0;
	z-index: 1;
	padding-bottom: 60px;
}
@media (min-width: 768px) {
	.hold.theme-bgcolor,
	.hold .theme-bgcolor {
		margin-top: -98px;
		border-radius: 60px 60px 0 0;
		padding-bottom: 80px;
	}
}

/* 出し分け
---------------------------------------- */
@media (min-width: 768px) {
	*[sp] {
		display: none !important;
	}
}
@media (max-width: 767px) {
	*[pc] {
		display: none !important;
	}
}

/* マージン
---------------------------------------- */
.margin-xxs {
	margin-top: 10px !important;
}
.margin-xs {
	margin-top: 20px !important;
}
.margin-sm {
	margin-top: 40px !important;
}
.margin-md {
	margin-top: 60px !important;
}
.margin-lg {
	margin-top: 100px !important;
}
.marginb-none {
	margin-bottom: 0!important;
}
@media (max-width: 767px) {
}

/* テキスト
---------------------------------------- */
.text {
	line-height: 2;
}
@media (max-width: 767px) {
	.text {
		line-height: 1.8;
	}
}

.text-bold {
	font-weight: 700 !important;
}
.text-center {
	text-align: center !important;
}
.text-left {
	text-align: left !important;
}
.text-red {
	color: var(--color-red) !important;
}
.text-red2 {
	color: #E80000;
}

/* .text-index > p {
	text-indent: 1.0em;
} */

.list li::before {
	display: inline;
	content: '・';
}

.remarks {
	color: var(--color-black4);
	font-size: 1.2rem;
	line-height: 1.6;
	letter-spacing: 0.025em;
}
.remarks:not(:first-child) {
	margin-top: 20px;
}
.remarks p:not(.nomark)::before,
.remarks li:not(.nomark)::before {
	display: inline;
	content: '※';
}
.remarks-order {
	counter-reset: remarks-num;
}
.remarks-order li {
	counter-increment: remarks-num;
}
.remarks-order li::before {
	content: '※'counter(remarks-num);
	margin-right: 1em;
}
.remarks.remarks-v2 p:not(.nomark)::before,
.remarks.remarks-v2 li:not(.nomark)::before {
	display: inline;
	content: '＊';
}
.remarks + .remarks.remarks-v2 {
	margin-top: 0;
}
@media (max-width: 767px) {
	.remarks {
		font-size: 1.2rem;
	}
}

.blockquote {
	color: var(--color-black4);
	font-size: 1.2rem;
	line-height: 1.6;
	text-align: right;
	letter-spacing: 0.025em;
}
.blockquote:not(:first-child) {
	margin-top: 10px;
}
@media (max-width: 767px) {
	.blockquote {
		font-size: 1.15rem;
	}
}

/* グラフ
---------------------------------------- */
/* グラフ枠 */
.figure {
	display: block;
	margin-bottom: 30px;
	background: var(--color-white);
}
.figure:not(:first-child) {
	margin-top: 40px;
}
.figure:not(.figure-noborder) {
	padding: 36px 36px;
	border: 4px solid var(--color-border);
	border-radius: 20px 20px;
}
.figure:last-child {
	margin-bottom: 0 !important;
}
@media (max-width: 767px) {
	.figure {
		margin-bottom: 34px;
	}
	.figure:not(:first-child) {
		margin-top: 54px;
	}
	.figure:not(.figure-noborder) {
		width: calc(100% + 30px);
		margin-right: -15px;
		margin-left: -15px;
		padding: 30px 15px 0;
		border-right: none;
		border-left: none;
		border-bottom: none !important;
		border-radius: 0 0;
	}
	.figure:not(.figure-nopinchi) .figure_image:after {
		display: flex;
		align-items: center;
		content: 'ピンチアウトで拡大してご覧になれます';
		margin: 10px auto 0;
		padding-left: 42px;
		width: max-content;
		min-height: 32px;
		background: url('../images/base/g_iconPinch_img_01_20250625.svg') left center/32px 32px no-repeat;
		color: var(--color-black6);
		font-size: 1.4rem;
		text-align: center;
	}
	.figure:last-child {
		padding-bottom: 0 !important;
	}
}

/* グラフタイトル */
.figure_title {
	position: relative;
	margin-bottom: 23px;
	padding: 5px 0 5px 30px;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.6;
}
.figure_title::before {
    position: absolute;
    content: "";
    width: 8px;
    height: 100%;
    background: #A29355;
	border-radius: 4px;
    left: 0;
    top: 0;
}
.figure_title small {
	display: block;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.828571429;
}
@media (max-width: 767px) {
	.figure_title {
		margin-bottom: 15px;
		padding: 5px 0 5px 20px;
		font-size: 1.8rem;
	}
}

/* グラフ凡例 */
.figure_legend {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 30px;
	margin-top: 20px;
	color: var(--color-black4);
	font-size: 1.6rem;
}
.figure_legend_item {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	line-height: 1.2;
}
.figure_legend_item::before {
	display: block;
	content: "";
	background: #000;
	flex: none;
}
.figure_legend_item-green::before {
	background: #6EA018 !important;
}
.figure_legend_item-orange::before {
	background: #D88D5B !important;
}
.figure_legend_item-blue::before {
	background: #75A1BC !important;
}
.figure_legend_item-dot::before {
	height: 0 !important;
	width: 20px !important;
	background: none !important;
	border-top: 4px dotted var(--color-caption);
}
.figure_legend_item-square::before {
	width: 12px;
	height: 12px;
	border: 1px solid #DDDDDD;
}
.figure_legend_item-triangle::before {
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	opacity: 0.3;
}
.figure_legend_item-dot::before {
	height: 0 !important;
	width: 20px !important;
	background: none !important;
	border-top: 4px dotted #A1ACC0;
}
@media (min-width: 768px) {
	.figure_legend_item-border::before {
		width: 30px;
		height: 4px;
	}
	.figure_legend_item-triangle::before {
		width: 30px;
		height: 15px;
	}
}
@media (max-width: 767px) {
	.figure_legend {
		gap: 12px;
		margin-top: 15px;
		font-size: 1.2rem;
	}
	.figure_legend_item-border::before {
		width: 20px;
		height: 4px;
	}
	.figure_legend_item-triangle::before {
		width: 20px;
		height: 10px;
	}
}

/* グラフ注釈 */
.figure_caption {
	margin-top: 20px;
}
@media (max-width: 767px) {
	.figure_caption {
		margin-top: 15px;
	}
}

/* パターンボックス */
.figure_grid {
	margin: 20px auto 0;
	background-color: #EFEFEF;
	padding: 15px;
}
@media (max-width: 767px) {
	.figure_grid_item + .figure_grid_item {
		margin-top: 10px;
	}
}
@media (min-width: 768px) {
	.figure_grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
        gap: 20px;
		padding: 20px 25px;
	}
}

.pattern {
	background-color: #fff;
	padding: 15px 20px 22px;
}
.pattern_tag {
	width: 120px;
	height: 30px;
	text-align: center;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	border-radius: 50px;
	line-height: 2;
	margin-bottom: 10px;
}
.pattern01 .pattern_tag {
	background-color: #D88D5B;
}
.pattern02 .pattern_tag {
	background-color: #6EA018;
}
.pattern03 .pattern_tag {
	background-color: #75A1BC;
}
.pattern_title {
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 10px;
	letter-spacing: 0;
}
.pattern_text {
	font-size: 1.5rem;
}
.pattern01 .pattern_title span {
	color: #D88D5B;
}
.pattern02 .pattern_title span {
	color: #6EA018;
}
.pattern03 .pattern_title span {
	color: #75A1BC;
}
@media (max-width: 767px) {
	.pattern {
		padding: 15px 25px 22px;
	}
	.pattern_tag {
		width: 100px;
		height: 25px;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.8;
	}
	.pattern_title {
		font-size: 1.8rem;
	}
	.pattern_text {
		font-size: 1.4rem;
	}
}

.margin-text {
	margin-top: 80px;
	margin-bottom: 80px;
}
@media (max-width: 767px) {
	.margin-text {
		margin-top: 0;
		margin-bottom: 0;
	}
}

/* テーブル */
.table__content {
	width: 100%;
	text-align: left;
	border: none;
	font-size: 1.6rem;
}
.table__narrow-header {
	vertical-align: middle;
	padding: 10px;
	background-color: #666666;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	color: #fff;
}
.table__narrow-header:empty {
	background: none;
	border: none;
}
.table__narrow-header--gold {
	background: var(--color-hold-tertiary);
	border-right: 1px solid #DDDDDD;
}
.table__subheader {
	border: 1px solid #DDDDDD;
	vertical-align: middle;
	padding: 27px 30px;
	background-color: #F7F7F7;
	font-size: 2rem;
	font-weight: 600;
}
.table__subheader:empty {
	background: none;
	border: none;
}
.table__cell {
	padding: 27px 30px;
	border: 1px solid #DDDDDD;
	vertical-align: middle;
	font-size: 2rem;
	font-weight: 400;
}
.table__cell:empty {
	background: none;
	border: none;
}
.table__cell--gold {
	background: #F5F4E2;
	font-weight: 600;
}
@media (max-width: 767px) {
	.table {
		position: relative;
	}
	.table .table__inner {
		overflow: auto;
		margin-right: -15px;
		padding-bottom: 8px;
	}
	.table .table__inner::-webkit-scrollbar {
		width: 132px;
		height: 4px;
	}
	.table .table__inner::-webkit-scrollbar-thumb {
		background: #666;
		border-radius: 30px;
	}
	.table .table__body {
		width: 900px;
		padding-bottom: 8px;
	}
	.table__narrow-header,
	.table__subheader,
	.table__cell {
		font-size: 1.6rem;
		padding: 23px 30px;
	}
}

/* フリックアイコン */
.flick {
	display: none;
}
@media (max-width: 767px) {
	.flick {
		display: flex;
		align-items: center;
		margin: 20px auto 0;
		width: max-content;
		color: var(--color-black6);
		font-size: 1.4rem;
		text-align: center;
	}
	.flick:before {
		content: '';
		padding-left: 32px;
		min-height: 36px;
		background: url('../images/base/g_iconFlick_img_01_20250625.svg') left center/32px 32px no-repeat;
	}
}



/* リンク
---------------------------------------- */
/* テキストリンク */
.textlink {
	color: inherit;
	font-weight: 500;
	text-decoration: none;
	outline: none;
}
.textlink::before {
	content: '';
	display: inline-block;
	width: 30px;
	height: 30px;
	background: currentColor;
	-webkit-mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	transform: rotate(-90deg);
	vertical-align: middle;
	margin-right: 4px;
	transition: margin-right 0.3s;
	position: relative;
	top: -2px;
}
.textlink:focus::before {
	margin-right: 10px;
}
@media (any-hover: hover) {
	.textlink:hover::before {
		margin-right: 10px;
	}
}
@media (max-width: 767px) {
	.textlink::before {
		width: 20px;
		height: 20px;
	}
}

/* ボタン枠 */
.button-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px;
}
@media (max-width: 767px) {
	.button-group {
		align-items: center;
		flex-direction: column;
		gap: 20px;
	}
}

/* ボタン */
.button {
	width: calc((100% - 40px) / 2);
}
.button_inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 80px;
	padding: 0 60px;
	border-radius: 40px 40px;
	color: var(--color-white);
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: border-color 0.3s, color 0.3s;
	outline: none;
	border: 2px solid var(--color-white);
}
.button_inner::before {
	content: '';
	position: absolute;
	display: inline-block;
	top: calc(50% - 15px);
	right: 20px;
	width: 30px;
	height: 30px;
	background: currentColor;
	-webkit-mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	transform: rotate(-90deg);
}
.button-sbi .button_inner {
	color: #003399;
}
.button-rakuten .button_inner {
	color: #BF0001;
}
.button-monex .button_inner {
	color: #000000;
}
.button-img .button_inner {
	background: var(--color-white);
}
.button-img .button_inner span {
	max-width: 240px;
}
.button_inner:focus {
	color: var(--color-hold-tertiary);
	border-color: var(--color-hold-tertiary);
}
@media (any-hover: hover) {
	.button_inner:hover {
		color: var(--color-hold-tertiary);
		border-color: var(--color-hold-tertiary);
	}
}
@media (max-width: 767px) {
	.button {
		width: 100%;
		max-width: 530px;
	}
	.button_inner {
		min-height: 60px;
		padding: 0 50px;
	}
	.button_inner::before {
		top: calc(50% - 10px);
		width: 20px;
		height: 20px;
	}
	.button-img .button_inner span {
		max-width: 160px;
	}
}


/* コンテンツヘッド
---------------------------------------- */
/* 上部 */
.content-head {
	position: relative;
	max-width: 1326px;
	padding: 60px 40px;
	margin: 0 auto;
	color: var(--color-white);
}
.content-head_inner {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.content-head_heading {
	text-align: center;
	margin-bottom: 30px;
	font-size: 4.4rem;
	font-weight: 600;
}
.content-head_heading small {
	display: block;
	width: max-content;
	padding: 10px 31px;
	margin-bottom: 17px;
	background: #fff;
	border-radius: 40px 40px;
	font-size: 2.0rem;
	line-height: 1;
}
.content-head_heading .fund-logo {
	width: auto;
	height: 46px;
	margin-right: 17px;
	fill: var(--color-white);
	vertical-align: -5px;
}
.content-head_heading .fund-logo use {
	fill: currentColor;
}

.content-head_debt {
	margin-bottom: 30px;
}
@media (max-width: 767px) {
	.content-head {
		padding: 40px 15px 0;
		border-radius: 30px 30px;
	}
	.content-head_heading {
		font-size: 2.0rem;
		text-align: center;
	}
	.content-head_heading small {
		margin: 0 auto 15px;
		padding: 7px 20px;
		font-size: 1.6rem;
		word-break: break-all;
		white-space: nowrap;
	}
	.content-head_heading .fund-logo {
		display: block;
		height: 28px;
		margin: 0 auto 10px;
	}
}

/* メッセージ */
.message {
	margin-bottom: 80px;
}
.message_wrap {
	background-color: #f5f5ed;
	border-radius: 20px;
	padding: 30px;
}
.message-text {
	position: relative;
	border: 1px solid #c2ba87;
	padding: 50px 70px 30px;
	text-align: center;
	z-index: 1;
}
.message-text p.title {
	position: relative;
	display: inline-block;
	text-align: center;
	padding: 0 40px;
	font-size: 2.7rem;
	font-weight: 500;
	color: #96853e;
	margin-bottom: 20px;
}
.message-text p.title::before,
.message-text p.title::after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	width: 26px;
	height: 40px;
	background: url('../images/base/g_iconleaf_img_01_20250625.png') no-repeat;
	background-size: contain;
}
.message-text p.title::after {
	left: inherit;
	right: 0;
	transform: rotateY(180deg);
}
.message-text p {
	font-family: "Noto Serif JP", serif;
	font-size: 2rem;
	color: #444;
	text-align: left;
}
.message-text p mark {
	font-size: 2.4rem;
	font-weight: 700;
	color: #d54b26;
	background: linear-gradient(transparent 50%, #fffe96 50%);
}
.message-text p + p {
	margin-top: 1em;
}
.message-text p.date {
	text-align: right;
}
.message_inner {
	border: 4px solid #c2ba87;
	padding: 15px;
	position: relative;
}
.message_content {
	position: relative;
}
.message_inner::before,
.message_inner::after,
.message_content::before,
.message_content::after {
	content: '';
	display: block;
	width: 80px;
	height: 80px;
	position: absolute;
	background-color: #f5f5ed;
	border: 4px solid #c2ba87;
	border-radius: 50%;
	box-sizing: border-box;
}
.message_inner::before{
	top: -40px;
	left: -40px;
	clip: rect(36px, auto, auto, 36px);
}
.message_inner::after {
	top: -40px;
	right: -40px;
	clip: rect(36px, 44px, auto, auto);
}
.message_content::before {
    bottom: -54px;
    left: -54px;
    clip: rect(auto, auto, 45px, 35px);
}
.message_content::after {
	bottom: -54px;
	right: -54px;
	clip: rect(auto, 45px, 45px, auto);
}
@media (max-width: 767px) {
	.message {
		margin-bottom: 60px;
	}
	.message_wrap {
		padding: 10px;
	}
	.message-text {
		letter-spacing: -0.01em;
		padding: 40px 29px 20px;
	}
	.message-text p.title {
		font-size: 2rem;
		line-height: 1.4;
	}
	.message-text p.title::before,
	.message-text p.title::after {
		top: calc(50% - 13px);
	}
	.message-text p {
		font-size: 1.4rem;
	}
	.message-text p mark {
		font-size: 1.8rem;
	}
	.message_inner {
		border: 2px solid #c2ba87;
		padding: 5px;
	}
	.message_inner::before,
	.message_inner::after,
	.message_content::before,
	.message_content::after {
		width: 40px;
		height: 40px;
		border: 2px solid #c2ba87;
	}
	.message_inner::before{
		top: -20px;
		left: -20px;
		clip: rect(18px, auto, auto, 18px);
	}
	.message_inner::after {
		top: -20px;
		right: -20px;
		clip: rect(18px, 22px, auto, auto);
	}
	.message_content::before {
		bottom: -25px;
		left: -25px;
		clip: rect(auto, auto, 22px, 18px);
	}
	.message_content::after {
		bottom: -24px;
		right: -24px;
		clip: rect(auto, 23px, 23px, auto);
	}
}

/* 超長期国債 */
.debt_inner {
	background-color: #fff;
	border-radius: 20px;
	padding: 40px;
}
.debt_contents {
	background-color: #F0F0E4;
	border-radius: 10px;
	color: var(--color-hold-tertiary);
	padding: 40px 50px 27px;
}
.debt_contents h2 {
	font-size: 5.4rem;
	text-align: center;
	font-weight: 600;
	line-height: 1.2;
}
.debt_contents h2 p {
	margin-top: 10px;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0;
}
.debt_contents h2 p span {
	margin-left: 1em;
}
.debt_box {
	display: flex;
	flex-wrap: nowrap;
	gap: 20px;
	justify-content: center;
	margin-top: 30px;
}
.debt_box_item {
	width: calc(50% - 10px);
	background-color: #fff;
	border-radius: 10px;
	padding: 30px 10px;
	min-height: 110px;
}
.debt_box_item_inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: var(--color-hold-secondary);
	text-align: center;
}
.debt_box_item_inner p {
	line-height: 1;
	font-weight: 700;
}
.debt_box_item_title {
	font-size: 3.2rem;
}
.debt_box_item_title span {
	font-size: 1.6rem;
}
.debt_box_item_num {
	font-size: 4rem;
}
.debt_box_item_num span {
	font-size: 7.1rem;
}
@media (max-width: 767px) {
	.debt {
		margin-left: -15px;
		margin-right: -15px;
	}
	.debt_inner {
		border-radius: 30px;
		padding: 30px 15px;
	}
	.debt_contents {
		padding: 30px 10px 20px;
	}
	.debt_contents h2 {
		font-size: 3.2rem;
	}
	.debt_contents h2 p {
		font-size: 1.4rem;
	}
	.debt_box {
		gap: 15px;
		margin-top: 15px;
	}
	.debt_box_item {
		padding: 15px 10px;
	}
	.debt_box_item_title {
		font-size: 1.8rem;
	}
	.debt_box_item_title span {
		font-size: 1.2rem;
	}
	.debt_box_item_num {
		font-size: 2rem;
	}
	.debt_box_item_num span {
		font-size: 4rem;
	}
	.debt_box_item:nth-of-type(2) .debt_box_item_inner .debt_box_item_title {
		margin-bottom: 1em;
	}
}
@media (min-width: 768px) {
	.debt_box_item_inner {
		gap: 10px;
	}
}

/* アンカー */
.anchorlist {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	counter-reset: anchor-num;
}
.anchorlist-2up .anchorlist_item {
	width: calc((100% - 10px * 1) / 2);
}
.anchorlist-3up .anchorlist_item {
	width: calc((100% - 10px * 2) / 3);
}
.anchorbtn {
	counter-increment: anchor-num;
}
.anchorbtn_inner {
	position: relative;
	display: flex;
	align-items: center;
	padding: 10px 0 9px;
	height: 100%;
	min-height: 100px;
	background: #fff;
	border-radius: 15px;
	font-weight: 600;
	text-decoration: none;
	outline: none;
}
.anchorbtn_inner::before {
	display: flex;
	align-items: center;
	content: counter(anchor-num);
	padding: 14px 20px;
	border-right: 1px solid #dddddd;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1;
}
.anchorbtn_inner::after {
	position: absolute;
	content: '';
	top: calc(50% - 15px);
	right: 20px;
	width: 30px;
	height: 30px;
	background: var(--color-hold-tertiary);
	-webkit-mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}
.anchorbtn_inner span {
	flex-grow: 1;
	padding: 4px 60px 4px 20px;
	font-size: 1.8rem;
	color: var(--color-base);
	transition: color 0.3s, opacity 0.3s;
}

.anchorbtn_inner:focus span {
	color: var(--color-secondary) !important;
}


@media (any-hover: hover) {
	.anchorbtn_inner:hover span {
		color: var(--color-secondary) !important;
	}
}
@media (max-width: 1100px) {
	.anchorlist-3up .anchorlist_item {
		width: calc((100% - 10px * 1) / 2);
	}
}
@media (max-width: 767px) {
	.anchorlist {
		flex-direction: column;
	}
	.anchorlist-2up .anchorlist_item {
		width: 100%;
	}
	.anchorlist-3up .anchorlist_item {
		width: 100%;
	}
	.anchorbtn_inner {
		min-height: 80px;
	}
	.anchorbtn_inner::before {
		padding: 14px 20px;
		font-size: 3.2rem;
	}
	.anchorbtn_inner::after {
		right: 15px;
	}
	.anchorbtn_inner span {
		padding-right: 55px;
		font-size: 1.6rem;
	}
}

/* セクション
---------------------------------------- */
/* セクション枠 */
.section-wrap {
	position: relative;
	counter-increment: section-num;
	margin-top: -85px;
	padding-top: 85px;
	outline: none;
	pointer-events: none;
}
.section {
	position: relative;
	max-width: 1326px;
	padding: 95px 40px 80px;
	margin: 75px auto 0;
	border-radius: 40px 40px;
	background: var(--color-white);
	pointer-events: all;
}
.section::before {
	position: absolute;
	top: -45px;
	left: calc(50% - 45px);
	content: counter(section-num);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 90px;
	height: 90px;
	background: var(--color-hold-tertiary);
	border: 6px solid var(--color-white);
	border-radius: 50% 50%;
	color: var(--color-white);
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1;
}
.section_inner {
	max-width: 1100px;
	margin: 0 auto;
}
@media (max-width: 767px) {
	.section-wrap {
		margin-top: 60px;
		padding-top: 1px;
	}
	.section {
		padding: 55px 15px 60px;
		margin-top: 30px;
		border-radius: 30px 30px;
	}
	.section::before {
		top: -30px;
		left: calc(50% - 30px);
		width: 60px;
		height: 60px;
		border-width: 4px;
		font-size: 3.2rem;
	}
}

/* セクションタイトル */
.section_heading {
	margin-bottom: 30px;
	font-size: 6.0rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.01em;
	text-align: center;
}
@media (max-width: 767px) {
	.section_heading {
		font-size: 3.2rem;
	}
}

/* セクションリード */
.section_lead {
	margin-bottom: 70px;
}
.section_mission {
	margin: -30px 0 70px;
}
@media (max-width: 767px) {
	.section_lead {
		margin-bottom: 54px;
	}
	.section_mission {
		margin: -24px 0 54px;
	}
}



/* CTA
---------------------------------------- */
.cta {
	color: var(--color-white);
	text-align: center;
	padding-top: 100px;
    margin-top: -20px;
}
.cta_inner {
	max-width: 1100px;
	margin: 0 auto;
}
.cta_heading {
	font-size: 2.4rem;
	font-weight: 600;
	margin-bottom: 40px;
	color: #fff;
}
.cta_heading-lead {
	width: 100%;
	max-width: 620px;
	margin: 0 auto 30px;
	font-weight: 500;
}
.cta_heading-lead_inner {
	background-color: var(--color-hold-tertiary);
	border-radius: 10px;
	color: #fff;
	font-size: 2.8rem;
	padding: 10px 20px;
}
.cta_heading-lead_inner span {
	display: inline-block;
	color: var(--color-hold-tertiary);
	border-radius: 10px;
	background-color: #fff;
	font-size: 2.6rem;
	padding: 2px 0 2px 15px;
	margin-right: 15px;
}
.cta_button {
	margin-bottom: 40px;
}
.cta_separator {
	display: block;
    margin: 40px auto;
    border-top: 1px solid #DDDDDD;
}
.cta_banner {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	transition: opacity .2s linear;
}
.cta_banner:focus {
	opacity: .7;
}
@media (any-hover: hover) {
	.cta_banner:hover {
		opacity: .7;
	}
}
@media (max-width: 767px) {
	.cta {
		padding: 0 15px;
		margin: 60px 0 0;
	}
	.cta_heading {
		font-size: 2.0rem;
		margin-bottom: 30px;
	}
	.cta_heading-lead_inner {
		padding: 5px;
		font-size: 2rem;
	}
	.cta_heading-lead_inner span {
		display: block;
		width: 100%;
		padding: 2px 5px;
		margin-right: 0;
		margin-bottom: 5px;
		font-size: 2rem;
	}
	.cta_button {
		margin-bottom: 30px;
	}
	.cta_separator {
		margin: 30px auto;
	}
}

/* メインビジュアル
---------------------------------------- */
.mainvisual {
	position: relative;
}
.mainvisual_heading {
	position: absolute;
	z-index: 1;
	top: 80px;
	left: 0;
	width: 100%;
	color: var(--color-white);
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	/* text-shadow: 0 3px 6px rgba(0, 0, 0, 0.2); */
}
.mainvisualbtn {
	width: 100%;
	padding: 143px min(60px, 4.392386530014641%) 178px;
	background-repeat: no-repeat;
	background-size: cover;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	outline: none;
	color: var(--color-hold-primay);
	background-image: url('../images/base/g_bg_img_01_20250625.png');
}
.mainvisualbtn_block {
	background: var(--color-white);
	border-radius: 20px 20px;
	padding: 40px min(30px, 5.328596802841918%);
	max-width: 1021px;
	margin: 0 auto;
	box-shadow: 20px 20px 50px 0px rgb(82, 163, 196, .1);
}
.mainvisualbtn_description {
	margin-bottom: 24px;
	font-size: 2.5rem;
}
.mainvisualbtn_title {
	max-width: 647px;
}
.mainvisualbtn_taghead {
	font-size: 4.5rem;
	font-weight: 600;
	color: var(--color-hold-secondary);
	margin-bottom: 15px;
}
.mainvisualbtn_tag {
	width: 100%;
	max-width: 650px;
	margin: auto;
	background-color: #00467E;
	border-radius: 50px;
	color: #fff;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 2;
}
@media (max-width: 767px) {
	.mainvisual_heading {
		top: 30px;
		font-size: 2.2rem;
	}
	.mainvisualbtn {
		padding: 74px 30px 62px;
	}
	.mainvisualbtn_block {
		border-radius: 10px 10px;
		padding: 20px;
		max-width: none;
	}
	.mainvisualbtn_description {
		margin: 0 -0.5em 10px;
		font-size: 1.6rem;
		line-height: 1.5;
		letter-spacing: -0.01px;
		color: var(--color-hold-primay);
	}
	.mainvisualbtn_tag {
		font-size: 1.4rem;
	}
	.mainvisualbtn_taghead {
		font-size: 2rem;
		margin-bottom: 7px;
	}
}

/* 魅力
---------------------------------------- */
.attractive {
	position: relative;
	padding: 80px 40px 112px;
	border-radius: 60px 60px 0 0;
}
.attractive_inner {
	max-width: 1100px;
	margin: 0 auto;
}
.attractive_heading {
	text-align: center;
	margin-bottom: 40px;
	font-size: 6.4rem;
	font-weight: 700;
	line-height: 1.3;
}
.attractive_heading small {
	display: block;
	max-width: 720px;
	text-align: left;
	font-size: 2.8rem;
	font-weight: 700;
	color: var(--color-white);
	background: var(--color-secondary);
	border-radius: 10px 10px;
	padding: 10px 10px;
	margin: 0 auto 30px;
}
.attractive_heading span {
	display: inline-block;
	font-size: 2.6rem;
	color: var(--color-secondary);
	background: var(--color-white);
	border-radius: 5px 5px;
	padding: 5px 0 5px 10px;
	margin-right: 10px;
}
.attractive_description {
	margin-bottom: 40px;
}
@media (min-width: 768px) {
	.attractive {
		margin-top: -61px;
	}
}
@media (max-width: 1024px) {
	.attractive_heading small {
		text-align: center;
	}
	.attractive_heading small span {
		display: block;
		margin-right: 0;
		margin-bottom: 5px;
	}
}
@media (max-width: 767px) {
	.attractive {
		margin-top: -31px;
		padding: 30px 15px 67px;
		background-size: 345px auto;
		background-position: 50% 260px;
		border-radius: 30px 30px 0 0;
	}
	.attractive_heading {
		margin-bottom: 20px;
		font-size: 3.6rem;
	}
	.attractive_heading small {
		font-size: 2.0rem;
		padding: 5px 5px;
		margin-bottom: 20px;
	}
	.attractive_heading span {
		font-size: 2.0rem;
	}
	.attractive .figure {
		margin-top: 35px !important;
	}
}

/* カード */
.attractive_card {
	position: relative;
	border: 4px solid currentColor;
	border-radius: 10px 10px;
	background: var(--color-white);
	text-align: center;
	padding: 20px 20px;
}
.attractive_card::after {
	content: '';
	position: absolute;
	top: calc(100% + 3px);
	left: calc(50% - 16px);
	border: 16px solid transparent;
	border-top-color: currentColor;
}
.attractecard_description {
	font-weight: 700;
	line-height: 1.6;
	margin-bottom: 5px;
}
.attractecard_title {
	max-width: 320px;
	margin-bottom: 5px;
}
.attractecard_tag {
	font-weight: 700;
	line-height: 1.6;
	color: var(--color-base);
}
@media (max-width: 767px) {
	.attractive_card {
		padding: 10px 11px;
	}
	.attractecard_description {
		font-size: 1.4rem;
	}
	.attractecard_title {
		max-width: 230px;
		margin-bottom: 0;
	}
	.attractecard_tag {
		font-size: 1.4rem;
	}
}

/* ボタン */
.attractive_buttons {
	display: flex;
	gap: 40px;
	margin-top: 60px;
}
.tabbtn {
	position: relative;
	display: block;
	width: 100%;
	border-radius: 20px 20px;
	padding: 30px 30px 50px 30px;
	text-align: center;
	font-size: 3.0rem;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
	background-position: center center;
	background-size: cover;
	outline: none;
	transition: color .3s;
}
.tabbtn.hold {
	background-image: url('../images/base/g_holdbg_img_02_20250625.png');
}
.tabbtn::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 20px 20px;
	border: 4px solid var(--color-secondary);
	opacity: 0;
	transition: opacity .3s;
}
.tabbtn .text {
	position: relative;
	z-index: 1;
	color: var(--color-white);
	line-height: 1.3;
}
.tabbtn .icon {
	position: absolute;
	z-index: 1;
	bottom: -20px;
	left: calc(50% - 20px);
	width: 40px;
	height: 40px;
	border-radius: 50% 50%;
	background: var(--color-white);
}
.tabbtn .icon::before {
	content: '';
	position: absolute;
	bottom: -2px;
	left: -2px;
	width: 44px;
	height: 44px;
	-webkit-mask-image: url('../images/base/g_iconArrow_img_01_20250625.svg');
	mask-image: url('../images/base/g_iconArrow_img_01_20250625.svg');
	-webkit-mask-size: cover;
	mask-size: cover;
	-webkit-mask-position: center center;
	mask-position: center center;
	background: currentColor;
	transform: rotate(90deg);
}
.tabbtn:focus {
	color: var(--color-secondary) !important;
}
.tabbtn:focus::before {
	opacity: 1;
}
@media (any-hover: hover) {
	.tabbtn:hover {
		color: var(--color-secondary) !important;
	}
	.tabbtn:hover::before {
		opacity: 1;
	}
}
@media (max-width: 767px) {
	.attractive_buttons {
		gap: 5px;
	}
	.tabbtn {
		border-radius: 15px 15px;
		padding: 15px 10px 28px 10px;
		font-size: 2.0rem;
	}
	.tabbtn .icon {
		bottom: -14px;
		left: calc(50% - 14px);
		width: 28px;
		height: 28px;
	}
	.tabbtn .icon::before {
		width: 32px;
		height: 32px;
	}
}

/* タブ切り替え
---------------------------------------- */
/* 枠 */
.tabarea {
	position: relative;
	pointer-events: none;
}

/* タブコンテンツ */
.tabarea_inner {
	position: relative;
	pointer-events: all;
	overflow: hidden;
}
@media (min-width: 768px) {
	.tabarea_items {
		margin-top: -146px;
		padding-top: 85px;
	}
	.tabarea_inner {
		border-radius: 60px 60px 0 0;
	}
}
@media (max-width: 767px) {
	.tabarea_items {
		margin-top: -31px;
	}
	.tabarea_inner {
		border-radius: 30px 30px 0 0;
	}
}

/* シリーズ
---------------------------------------- */
.series {
	color: var(--color-base);
	margin: 0 0;
	padding-top: 90px;
	padding-bottom: 90px;
	background: #F7F7F7;
}
.series .cta_heading {
	color: var(--color-ifree);
}
.series .cta_heading .fund-logo {
	width: auto;
	height: 32px;
	vertical-align: -5px;
	margin: 0 10px;
}
.series .cta_button {
	max-width: 720px;
	margin-inline: auto;
	gap: 20px 40px;
}
@media (max-width: 767px) {
	.series {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.series .cta_heading .fund-logo {
		height: 22px;
		vertical-align: -2px;
		margin: 0 6px;
	}
	.series .cta_button {
		gap: 15px;
	}
}

/* ボタン */
.seriesbtn_inner {
	text-align: center;
	font-weight: 700;
	display: block;
	text-decoration: none;
	outline: none;
	border-radius: 15px 15px;
	padding: 40px 20px 32px;
	color: var(--color-ifree);
	background-position: center center;
	background-size: cover;
	transition: opacity 0.3s;
}
.seriesbtn .fund-logo {
	width: auto;
	height: 36px;
	display: block;
	line-height: 1;
	margin: 0 auto 5px;
}
.seriesbtn_name {
	display: block;
	letter-spacing: 0;
}
.seriesbtn_nisa {
	display: block;
	font-size: 1.4rem;
	background: var(--color-white);
	border-radius: 20px 20px;
}
.hold-us .seriesbtn_inner {
	background-image: url('../images/base/g_usHold_img_01_20250625.png');
}
.wallet-us .seriesbtn_inner {
	background-image: url('../images/base/g_usWallet_img_01_20250625.png');
}
.hold-mxn .seriesbtn_inner {
	background-image: url('../images/base/g_mxnHold_img_01_20250625.png');
	padding: 15px;
}
.wallet-mxn .seriesbtn_inner {
	background-image: url('../images/base/g_mxnWallet_img_01_20250625.png');
	padding: 15px;
}
.hold-mxn .seriesbtn_inner div,
.wallet-mxn .seriesbtn_inner div {
	background-color: #fff;
	border-radius: 10px;
	padding: 25px 10px 24px;
}
.hold-mxn .seriesbtn_name,
.wallet-mxn .seriesbtn_name {
	font-size: 1.6rem;
}
.hold .seriesbtn_nisa {
	color: var(--color-hold-logo);
}
.seriesbtn_inner:focus {
	opacity: 0.7;
}
@media (any-hover: hover) {
	.seriesbtn_inner:hover {
		opacity: 0.7;
	}
}
@media (max-width: 767px) {
	.seriesbtn_inner {
		padding: 29px 14px;
	}
	.hold-mxn .seriesbtn_inner,
	.wallet-mxn .seriesbtn_inner {
		padding: 12px 15px;
	}
	.hold-mxn .seriesbtn_inner div,
	.wallet-mxn .seriesbtn_inner div {
		padding: 19px 14px;
	}

	.seriesbtn_name {
		font-size: 1.8rem;
		margin-top: 10px;
	}
}

/* 留意点
---------------------------------------- */
.disclaimer {
	padding: 120px 40px;
	background: var(--color-fill);
	font-size: 1.4rem;
}
.disclaimer_inner {
	max-width: 980px;
	margin: 0 auto;
}
.disclaimer_content {
	outline: none;
}
.disclaimer_content:not(:first-child) {
	margin-top: 80px;
}
.disclaimer_content[id] {
	padding-top: 100px;
	margin-top: -20px;
}
.disclaimer_heading-lv2 {
	font-size: 2.0rem;
	font-weight: 700;
}
.disclaimer_heading-lv3 {
	margin-bottom: 16px;
	font-size: 1.6rem;
	font-weight: 700;
}
.disclaimer_heading-lv3::before {
	display: inline;
	content: '＜';
	speak: none;
}
.disclaimer_heading-lv3::after {
	display: inline;
	content: '＞';
	speak: none;
}
.disclaimer_heading-lv4 {
	margin-top: 32px;
	font-weight: 700;
}
.disclaimer_squarelist {
	margin-top: 40px;
	margin-bottom: 40px;
}
.disclaimer_squarelist > li::before {
	display: inline;
	content: '■';
}
.disclaimer_squarelist:not(.disclaimer_squarelist-collapse) > li + li {
	margin-top: 14px;
}
.disclaimer_datalist dt {
	margin-top: 11px;
	font-weight: 700;
}
.disclaimer_datalist li {
	margin-top: 11px;
}
.disclaimer_datalist dt::before,
.disclaimer_datalist li::before {
	display: inline;
	content: '●';
}
.disclaimer_notelist {
	margin-top: 1.0em;
}
.disclaimer_notelist > li::before {
	display: inline;
	content: '※';
}
.disclaimer_text em {
	text-decoration: underline;
	font-weight: 700;
}
@media (min-width: 768px) {
	.disclaimer_heading-lv2 {
		margin-bottom: 37px;
	}
	.disclaimer_heading-lv3 {
		margin-top: 40px;
	}
}
@media (max-width: 767px) {
	.disclaimer {
		padding: 60px 15px;
	}
	.disclaimer_content[id] {
		padding-top: 20px;
		margin-top: 60px;
	}
	.disclaimer_heading-lv2 {
		margin-bottom: 30px;
	}
	.disclaimer_heading-lv3 {
		margin-top: 30px;
	}
}

/* アニメーション
---------------------------------------- */
.js-anime-trigger {
	opacity: 0;
	transform: translateY(10px);
	transition: 0.4s ease-in;
	transition-delay: 0.3s;
}
.js-anime-trigger.is-anime-completed {
	transform: translateY(0);
	opacity: 1;
}


/* ------------------------------------------------------------
	固定パーツ
------------------------------------------------------------ */

/* ヘッダー
---------------------------------------- */
.header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	height: 85px;
	background: rgba(255, 255, 255, .9);
	letter-spacing: 0;
}
.site_logo {
	margin-left: 40px;
}
.site_logo a {
	display: block;
	outline: none;
}
.anchor_link {
	height: 100%;
	background: var(--color-black2);
}
.anchor_link a {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 110px;
	height: 100%;
	line-height: 1.3;
	font-size: 1.2rem;
	font-weight: 500;
	padding: 12px 12px;
	text-align: center;
	text-decoration: none;
	color: var(--color-white);
	outline: none;
}
.anchor_link a::after {
	display: inline-block;
	content: '';
	width: 18px;
	height: 18px;
	margin-top: 6px;
	background: url('../images/base/g_iconArrow_img_01_20250625.svg') 0 0/cover no-repeat;
	transform: rotate(90deg);
}
.anchor_link a span {
	display: block;
}
.anchor_link a img {
	width: 100%;
	height: auto;
}
@media (any-hover: hover) {
	.header_menubtn:hover {
		background: currentColor;
	}
	.header_menubtn:hover span {
		color: var(--color-white) !important;
	}
}
@media (min-width: 768px) {
	body:has(.header){
		padding-top: 85px;
	}
	.header {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 8;
	}
}
@media (max-width: 767px) {
	.header {
		height: 68px;
	}
	.site_logo {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 36.8vw;
		max-width: 138px;
		margin-top: 0;
		margin-left: 4vw;
	}
	.header-menu {
		display: none;
	}
	.anchor_link a {
		width: 80px;
		padding: 0 0;
		font-size: 1.0rem;
		background-size: 15px 15px;
		background-position: center bottom 3px;
	}
	.anchor_link a::after {
		width: 12px;
		height: 12px;
	}
}

/* フロートボタン
---------------------------------------- */
.float-button {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 10;
}
.float-button__inner {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	width: 260px;
}
.float-button__inner a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 21px 20px;
	background-color: rgb(162, 147, 85, .8);
	border-radius: 15px 0 0 15px;
	color: #fff;
	line-height: 1;
	font-size: 1.8rem;
	font-weight: 700;
	text-decoration: none;
}
.float-button__inner span {
	position: relative;
	padding-left: 38px;
}
.float-button__inner span::before {
	content: '';
	position: absolute;
	display: inline-block;
	top: calc(50% - 10px);
	left: 0;
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	mask-image: url('../images/base/g_iconArrow_img_02_20250625.svg');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	/* transform: rotate(-90deg); */
}
.float-button__inner .close-button {
	color: #fff;
	font-size: 2.5rem;
	line-height: 1;
	margin: 0 12px 10px 0;
	text-shadow: 0px 0px 20px rgba(0, 0, 0, 1);
	cursor: pointer;
}
@media (max-width: 767px) {
	.float-button__inner {
		width: 200px;
	}
}

/* フッター
---------------------------------------- */
.footer {
	position: relative;
	padding: 80px 0 120px;
	background-color: var(--color-black2);
}
.footer_inner {
	position: relative;
	width: min(100%, 1100px);
	padding: 0 60px;
	margin: 0 auto;
	color: var(--color-white);
}

.footer_nav {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
}
.footer_nav li + li {
	border-left: 1px solid var(--color-white);
}
.footer_nav li + li a {
	padding-left: 30px;
}
.footer_nav a {
	display: block;
	padding-right: 30px;
	color: var(--color-white);
	font-size: 1.4rem;
	line-height: 1;
	text-decoration: none;
	outline: none;
}
.footer_bottom {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 68px;
}
.footer_logo a {
	display: block;
	/* width: 300px; */
	margin: 0 0;
	outline: none;
}
.footer_copyright {
	flex: 0 1 auto;
	margin-left: auto;
	font-size: 1.0rem;
}
.footer_copyright p {
	width: 100%;
}
.footer_copyright p + p {
	margin-top: 20px;
}
.footer_nav a:focus {
	text-decoration: underline;
}
@media (any-hover: hover) {
	.footer_nav a:hover {
		text-decoration: underline;
	}
}
@media (max-width: 767px) {
	.footer {
		padding-top: 48px;
		padding-bottom: 48px;
	}
	.footer_inner {
		padding-left: 5%;
		padding-right: 5%;
	}

	.footer_nav li + li {
		border-left: none;
	}
	.footer_nav li + li a {
		padding-left: 0;
	}
	.footer_nav {
		flex-wrap: wrap;
		gap: 24px 0;
	}
	.footer_nav li {
		width: 100%;
	}
	.footer_nav a {
		line-height: 1.2;
	}
	.footer_bottom {
		display: block;
		margin-top: 48px;
	}
	.footer_logo {
		padding-top: 30px;
		border-top: 1px solid var(--color-white);
	}
	.footer_logo a {
		width: 190px;
		margin: 0 auto;
		text-align: center;
	}
	.footer_copyright {
		margin-top: 30px;
	}
}