@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500&display=swap&subset=japanese");
/* 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 */
	--color-prim: #EB6EA5;
	--color-seco: #444444;
	--color-seco_b: #266DE2;
	--color-seco_p: #F4B6D2;
	--color-txt: #333;
	--color-txt-caption: #333;
	--color-txt-caption-v2: #6F7579;
	--color-txt-link: #333333;
	--color-txt-hover: #333333;
	--color-border: #ddd;
	--color-bg: #EDEDED;
	--color-bg_2: #F0F1F0;
	--color-caution: #E6002D;
	--color-cv: #FA8800;
	--color-red: #E6002D;
	--color-prim-rgb: 235 110 165;
	--color-seco-rgb: 171 194 240;
	--color-txt-rgb: 51 51 51;
	--color-txt-caption-rgb: 102 102 102;
	--color-txt-caption-v2-rgb: 111 117 121;
	--color-txt-link-rgb: 0 98 177;
	--color-txt-hover-rgb: 235 110 165;
	--color-border-rgb: 221 221 221;
	--color-bg-rgb: 237 237 237;
	--color-caution-rgb: 230 0 45;
	--color-cv-rgb: 250 136 0;
	--color-red-rgb: 230 0 45;
	/* font family */
	--font-sansjp: 'Noto Sans JP';
	--font-sans: 'Noto Sans';
	--font-serif: sans-serif;
	--font-yakuhan-jps: 'YakuHanJPs';
	/* YakuHanJPs(ゴシック体 少量版 Regular) */
}
@font-face {
	font-family: "YakuHanJPs";
	font-style: normal;
	font-weight: 400;
	src: url("/assets/fonts/YakuHanJPs/YakuHanJPs-Regular.eot");
	src: url("/assets/fonts/YakuHanJPs/YakuHanJPs-Regular.woff2") format("woff2"), url("/assets/fonts/YakuHanJPs/YakuHanJPs-Regular.woff") format("woff");
}
:root {
	/* YakuHanJPs(ゴシック体 少量版 Medium) */
}
@font-face {
	font-family: "YakuHanJPs";
	font-style: normal;
	font-weight: 500;
	src: url("/assets/fonts/YakuHanJPs/YakuHanJPs-Medium.eot");
	src: url("/assets/fonts/YakuHanJPs/YakuHanJPs-Medium.woff2") format("woff2"), url("/assets/fonts/YakuHanJPs/YakuHanJPs-Medium.woff") format("woff");
}
:root {
	/* YakuHanJPs(ゴシック体 少量版 Bold) */
}
@font-face {
	font-family: "YakuHanJPs";
	font-style: normal;
	font-weight: 700;
	src: url("/assets/fonts/YakuHanJPs/YakuHanJPs-Bold.eot");
	src: url("/assets/fonts/YakuHanJPs/YakuHanJPs-Bold.woff2") format("woff2"), url("/assets/fonts/YakuHanJPs/YakuHanJPs-Bold.woff") format("woff");
}
:root {
	/* line height */
	--line-height-s: 1.4;
	--line-height-m: 1.6;
	--line-height-l: 1.8;
	/* icons path */
	--icon-access: url("/assets/images/icons/access.svg");
	--icon-alert: url("/assets/images/icons/alert.svg");
	--icon-blank: url("/assets/images/icons/blank.svg");
	--icon-bookmark: url("/assets/images/icons/bookmark.svg");
	--icon-calendar: url("/assets/images/icons/calendar.svg");
	--icon-cart: url("/assets/images/icons/cart.svg");
	--icon-check: url("/assets/images/icons/check.svg");
	--icon-check2: url("/assets/images/icons/check2.svg");
	--icon-chev-cir-down: url("/assets/images/icons/chev-cir-down.svg");
	--icon-chev-cir-left: url("/assets/images/icons/chev-cir-left.svg");
	--icon-chev-cir-right: url("/assets/images/icons/chev-cir-right.svg");
	--icon-chev-cir-up: url("/assets/images/icons/chev-cir-up.svg");
	--icon-chev-down: url("/assets/images/icons/chev-down.svg");
	--icon-chev-left: url("/assets/images/icons/chev-left.svg");
	--icon-chev-right: url("/assets/images/icons/chev-right.svg");
	--icon-chev-up: url("/assets/images/icons/chev-up.svg");
	--icon-circle-border: url("/assets/images/icons/circle-border.svg");
	--icon-circle: url("/assets/images/icons/circle.svg");
	--icon-close: url("/assets/images/icons/close.svg");
	--icon-doc: url("/assets/images/icons/doc.svg");
	--icon-download: url("/assets/images/icons/download.svg");
	--icon-excel: url("/assets/images/icons/excel.svg");
	--icon-exclamation: url("/assets/images/icons/exclamation.svg");
	--icon-first: url("/assets/images/icons/first.svg");
	--icon-global: url("/assets/images/icons/global.svg");
	--icon-humberger: url("/assets/images/icons/humberger.svg");
	--icon-last: url("/assets/images/icons/last.svg");
	--icon-locked: url("/assets/images/icons/locked.svg");
	--icon-mail: url("/assets/images/icons/mail.svg");
	--icon-minus: url("/assets/images/icons/minus.svg");
	--icon-new: url("/assets/images/icons/new.svg");
	--icon-pdf: url("/assets/images/icons/pdf.svg");
	--icon-phone: url("/assets/images/icons/phone.svg");
	--icon-pinch-in: url("/assets/images/icons/pinch-in.svg");
	--icon-pinch-out: url("/assets/images/icons/pinch-out.svg");
	--icon-play: url("/assets/images/icons/play.svg");
	--icon-plus: url("/assets/images/icons/plus.svg");
	--icon-powerpoint: url("/assets/images/icons/powerpoint.svg");
	--icon-print: url("/assets/images/icons/print.svg");
	--icon-question: url("/assets/images/icons/question.svg");
	--icon-rss: url("/assets/images/icons/rss.svg");
	--icon-search: url("/assets/images/icons/search.svg");
	--icon-stop: url("/assets/images/icons/stop.svg");
	--icon-swipe: url("/assets/images/icons/swipe.svg");
	--icon-to-top: url("/assets/images/icons/to-top.svg");
	--icon-unlocked: url("/assets/images/icons/unlocked.svg");
	--icon-url: url("/assets/images/icons/url.svg");
	--icon-word: url("/assets/images/icons/word.svg");
	--icon-zip: url("/assets/images/icons/zip.svg");
}

/*----------
	base
----------*/
html {
	width: 100%;
	font-size: 62.5%;
	background-color: #fff;
}
html.locked {
	position: absolute;
	overflow: hidden;
}

body {
	overflow-x: hidden;
	font-size: 1.6rem;
	line-height: var(--line-height-l);
	font-family: "YakuHanJPs", "Noto Sans", "Noto Sans JP", sans-serif;
	-webkit-font-smoothing: antialiased;
	letter-spacing: 0;
	color: var(--color-txt);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}
@media (max-width: 820px) {
	body:has(.l-mainheader__navtoggle.is-open) {
		overflow-y: hidden;
	}
}
@media print {
	body {
		min-width: 1240px;
		zoom: 0.8;
	}
}

a {
	text-decoration: none;
	color: var(--color-txt-link);
}
@media (min-width: 821px), print {
	a:hover {
		text-decoration: none;
	}
}

button {
	color: var(--color-txt-link);
}
button > span {
	color: var(--color-txt-link);
}

img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

sup {
	vertical-align: top;
	font-size: 0.7em;
}

sub {
	vertical-align: baseline;
	font-size: 0.7em;
}

input[type=text],
textarea,
select {
	font-family: inherit;
	font-size: 1.6rem;
}

/*----------
	main header
----------*/
@media print {
	header {
		display: none;
	}
}

.l-mainheader {
	position: relative;
	height: 110px;
}
.l-mainheader__inner {
	background: #fff;
}
.l-mainheader__inner > div {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-mainheader__inner > div {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-mainheader__inner > div {
	padding-top: 10px;
	padding-bottom: 10px;
}
.l-mainheader__logoarea {
	width: 115px;
	height: 80px;
}
.l-mainheader__logoarea .c-button {
	width: 118px;
	height: 26px;
	margin-bottom: 20px;
}
.l-mainheader__logoarea .c-button .c-button__inner:before {
	right: auto;
	left: 7px;
	width: 12px;
	height: 12px;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0,0" width="16px" height="16px" preserveAspectRatio="none"><path fill="%23EB6EA5" d="M8,0C3.582,0,0,3.582,0,8s3.582,8,8,8s8-3.582,8-8S12.418,0,8,0z M9.53,10.47c0.293,0.293,0.293,0.768,0,1.061C9.384,11.677,9.192,11.75,9,11.75s-0.384-0.073-0.53-0.22l-3-3c-0.293-0.293-0.293-0.768,0-1.061l3-3c0.293-0.293,0.768-0.293,1.061,0s0.293,0.768,0,1.061L7.061,8L9.53,10.47z" /></svg>');
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.l-mainheader__logoarea .c-button .c-button__inner > span {
	padding: 2px 7px 2px 17px;
	font-size: 1.2rem;
	letter-spacing: -0.04em;
}
.l-mainheader__logoarea .l-mainheader__logo_corporate {
	position: relative;
	width: 100%;
	height: 100%;
}
.l-mainheader__logoarea .l-mainheader__logo_corporate a {
	overflow: hidden;
	display: block;
	width: 100%;
	height: 100%;
}
.l-mainheader__logoarea .l-mainheader__logo_corporate a > img {
	width: 100%;
	height: auto;
}
.l-mainheader__logo {
	position: relative;
	width: 100%;
	height: 100%;
}
.l-mainheader__logo a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-mainheader__logo img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.l-mainheader__navtoggle {
	display: block;
	width: 60px;
	height: 66px;
	position: absolute;
	bottom: -16px;
	right: -18px;
	line-height: 1;
	cursor: pointer;
	color: var(--color-txt);
}
.l-mainheader__navtoggle.is-open > span::before {
	mask-image: var(--icon-close);
}
.l-mainheader__navtoggle > span {
	overflow: hidden;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -201%;
}
.l-mainheader__navtoggle > span::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--color-prim);
	mask-image: var(--icon-humberger);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: 18px auto;
	outline: auto;
}
.l-mainheader .is-open ~ .l-mainheader__nav {
	overflow-y: scroll;
	display: block;
	height: calc(100dvh - 54px);
	background-color: #fff;
}
.l-mainheader__nav {
	display: none;
	position: fixed;
	top: 108px;
	left: 0;
	width: 100%;
	z-index: 20;
}
.l-mainheader__nav.is-open {
	display: block;
}
.l-mainheader__nav .l-mainnav__cattop {
	text-align: center;
}
.l-mainheader__nav .l-mainnav__cattop .l-mainnav__cattop_s {
	font-size: 1.2rem;
	font-weight: 400;
}
.l-mainheader__nav .l-mainnav__cattop .l-mainnav__cattop_m {
	font-weight: 500;
	line-height: var(--line-height-s);
}
.l-mainheader__nav .l-mainnav__cattop .l-mainnav__cattop_m:only-child {
	padding-top: 21px;
}
.l-mainheader .l-mainheader__linkInner {
	position: relative;
}
.l-mainheader .l-subnav {
	position: absolute;
	top: 0;
	right: 0px;
}
.l-mainheader .l-subnav__inner {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 20px 30px;
}
.l-mainheader .l-subnav__inner .c-button .c-button__inner {
	max-width: 156px;
	height: 35px;
}
.l-mainheader .l-subnav__inner .c-button .c-button__inner:before {
	right: 13px;
	width: 16px;
	height: 16px;
	margin-top: -2px;
	background-color: #fff;
}
.l-mainheader .l-subnav__inner .c-button .c-button__inner::after {
	border-color: var(--color-seco);
	background-color: var(--color-seco);
}
.l-mainheader .l-subnav__inner .c-button .c-button__inner > span {
	padding: 0 35px 0 15px;
	color: #fff;
}
.l-mainheader .l-subnav__inner .c-button .c-button__inner[target=_blank] svg {
	right: 12px;
	fill: #fff;
}
.l-mainheader .l-subnav__main {
	display: flex;
	align-items: center;
	gap: 10px 15px;
}
.l-mainheader .l-subnav__main > li {
	position: relative;
}
.l-mainheader .l-subnav__main > li.nav_support a, .l-mainheader .l-subnav__main > li.nav_global a, .l-mainheader .l-subnav__main > li.nav_lang a, .l-mainheader .l-subnav__main > li.nav_faq a {
	padding-left: 21px;
}
.l-mainheader .l-subnav__main > li.nav_support a::before, .l-mainheader .l-subnav__main > li.nav_global a::before, .l-mainheader .l-subnav__main > li.nav_lang a::before, .l-mainheader .l-subnav__main > li.nav_faq a::before {
	display: none;
}
.l-mainheader .l-subnav__main > li a {
	position: relative;
	font-size: 1.4rem;
	line-height: 1;
}
.l-mainheader .l-subnav__main > li a[target=_blank] svg {
	position: absolute;
	top: 6px;
	left: 0;
	width: 16px;
	height: 16px;
	fill: var(--color-prim);
}
.l-mainheader .l-subnav__main > li a[target=_blank]::before {
	display: none;
}
.l-mainheader .l-subnav__main > li a i {
	position: absolute;
	top: 50%;
	display: block;
	width: 16px;
	height: 16px;
	background-color: var(--color-prim);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
	transform: translateY(-50%);
}
.l-mainheader .l-subnav__main > li a i.icon-access {
	mask-image: var(--icon-access);
}
.l-mainheader .l-subnav__main > li.nav_faq a i {
	background-image: none !important;
	background-color: transparent;
	background-color: var(--color-prim);
	mask-image: var(--icon-question);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
	transform: translateY(-50%);
}
.l-mainheader .l-subnav__main > li.nav_global div {
	padding-left: 21px;
}
.l-mainheader .l-subnav__main > li.nav_global div i {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 16px;
	height: 16px;
	background-color: var(--color-prim);
	mask-image: var(--icon-global);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
	transform: translateY(-50%);
}
.l-mainheader .l-subnav__main > li .l-header__langItems {
	position: absolute;
	top: -10px;
	left: 50%;
	transform: translate(-50%, 0%);
	width: 110px;
	margin-top: 29px;
	padding-top: 20px;
	padding-bottom: 10px;
	z-index: 30;
}
.l-mainheader .l-subnav__main > li .l-header__langItems[hidden] {
	display: none;
}
.l-mainheader .l-subnav__main > li .l-header__langItems::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: calc(100% - 10px);
	border-radius: 10px;
	background-color: #fff;
	-webkit-box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.1);
	box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.1);
}
.l-mainheader .l-subnav__main > li .l-header__langItems a {
	display: block;
	padding-block: 10px;
	padding-left: 0 !important;
	text-align: center;
	font-weight: 500;
}
.l-mainheader .l-subnav__main > li .l-header__langItems a:hover {
	background-color: #ffeef6;
}
@media (max-width: 1024px) {
	.l-mainheader {
		position: fixed;
		top: 0;
		left: 50%;
		width: 100%;
		height: 108px;
		background-color: #fff;
		z-index: 11;
		transform: translateX(-50%);
	}
	.l-mainheader.is-active {
		height: 54px;
	}
	.l-mainheader.is-active .l-mainheader__inner {
		padding-top: 4px;
	}
	.l-mainheader.is-active .l-mainheader__inner > div {
		padding-top: 0;
		padding-bottom: 0;
	}
	.l-mainheader.is-active .l-mainheader__logoarea .c-button,
	.l-mainheader.is-active .l-subnav {
		display: none;
	}
	.l-mainheader.is-active .l-mainheader__logoarea,
	.l-mainheader.is-active .l-mainheader__navtoggle {
		height: 50px;
	}
	.l-mainheader.is-active .l-mainheader__logo {
		padding-top: 5px;
	}
	.l-mainheader.is-active .l-mainheader__logo .l-mainheader__logo_corporate {
		width: 82px;
		height: auto;
	}
	.l-mainheader.is-active .l-mainheader__logo .l-mainheader__logo_corporate img {
		margin-top: 4px;
	}
	.l-mainheader.is-active .l-mainheader__navtoggle {
		top: -3px;
		bottom: auto;
	}
	.l-mainheader.is-active .l-mainheader__nav {
		top: 54px;
	}
	.l-mainheader .l-subnav__main > li {
		font-size: 1.2rem;
	}
	.l-mainheader .l-subnav__main > li > a, .l-mainheader .l-subnav__main > li div {
		font-size: 1.2rem;
		padding-left: 18px !important;
	}
	.l-mainheader .l-subnav__main > li > a svg, .l-mainheader .l-subnav__main > li > a i, .l-mainheader .l-subnav__main > li div svg, .l-mainheader .l-subnav__main > li div i {
		width: 14px !important;
		height: 14px !important;
	}
	.l-mainheader .l-subnav__main > li.nav_support a svg {
		top: 3px;
	}
	.l-mainheader .l-mainnav__inner {
		padding-bottom: 10px;
	}
	.l-mainheader .l-mainnav__list {
		border-bottom: 1px solid var(--color-border);
	}
	.l-mainheader .l-mainnav__list .l-mainnav__sub .l-megamenu__item {
		padding: 2px;
	}
	.l-mainheader .l-mainnav__cattop {
		position: relative;
		padding: 18px 60px 18px 20px;
		text-align: left;
		cursor: pointer;
	}
	.l-mainheader .l-mainnav__cattop > span {
		padding: 0;
		text-align: left;
		pointer-events: none;
	}
	.l-mainheader .l-mainnav__cattop > span + span {
		margin-left: -0.2em;
	}
	.l-mainheader .l-mainnav__cattop .l-mainnav__cattop_m {
		display: inline;
		font-weight: 500 !important;
	}
	.l-mainheader .l-mainnav__cattop .l-mainnav__cattop_s {
		display: inline;
		font-size: 1.6rem;
		font-weight: 500 !important;
	}
	.l-mainheader .l-megamenu__categories .l-megamenu__item a {
		display: block;
		padding: 4px 20px;
	}
	.l-mainheader .l-mainnav__main__bnrarea {
		padding: 30px 20px;
	}
	.l-mainheader .l-mainnav__main__bnrarea > a {
		display: block;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-text {
		text-align: center;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-text a {
		text-decoration: none;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button + a, .l-mainheader .l-mainnav__main__bnrarea .c-button + .c-button, .l-mainheader .l-mainnav__main__bnrarea .c-button + div {
		margin-top: 20px;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button .c-button__inner {
		padding-right: 40px;
		padding-left: 20px;
		justify-content: flex-start;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button .c-button__inner > span {
		padding: 0;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button img {
		width: 150px;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button.c-button--l .c-button__inner {
		min-height: 58px;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button.c-button--l .c-button__inner::after {
		border-radius: 5px;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button.c-button--s .c-button__inner {
		max-width: 156px;
		height: 35px;
		margin-right: auto;
		margin-left: auto;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button.c-button--s .c-button__inner::after {
		border-color: var(--color-seco);
		background-color: var(--color-seco);
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button.c-button--s .c-button__inner > span {
		padding: 0;
		color: #fff;
	}
	.l-mainheader .l-mainnav__main__bnrarea .c-button.c-button--s .c-button__inner[target=_blank] svg {
		right: 20px;
		fill: #fff;
	}
	.l-mainheader .btn_close {
		padding-right: 20px;
		padding-left: 20px;
	}
	.l-mainheader .btn_close .js-gnav-close {
		display: block;
		width: 100%;
	}
	.l-mainheader .btn_close .js-gnav-close > span {
		position: relative;
		display: inline-block;
		padding: 0 24px 0 0 !important;
	}
	.l-mainheader .btn_close .js-gnav-close > span::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		display: block;
		width: 16px;
		height: 16px;
		background-color: var(--color-prim);
		mask-image: var(--icon-close);
		mask-position: center center;
		mask-repeat: no-repeat;
		mask-size: contain;
		transform: translateY(-50%);
	}
	.l-mainheader .btn_close .c-button__inner {
		border: 0;
	}
	.l-mainheader .btn_close .c-button__inner:before, .l-mainheader .btn_close .c-button__inner:after {
		display: none;
	}
	.l-mainheader .is-open .l-mainnav__sub {
		height: auto;
		opacity: 1;
		pointer-events: all;
	}
	.l-mainheader .is-open .l-mainnav__sub .l-megamenu__item {
		padding: 2px;
	}
}
@media (min-width: 1025px), print {
	.l-mainheader {
		height: 160px;
		transition: height 0.4s;
	}
	.l-mainheader__inner {
		height: 100%;
		transition: background-color 0.4s;
	}
	.l-mainheader__inner > div {
		flex-wrap: wrap;
		align-items: flex-start;
		height: 100%;
		padding: 0 30px;
	}
	.l-mainheader__inner .l-mainheader__link,
	.l-mainheader__inner .l-mainheader__linkInner {
		height: 100%;
	}
	.l-mainheader__inner .l-mainheader__linkInner {
		display: flex;
		width: 100%;
		align-items: flex-end;
	}
	.l-mainheader__logoarea {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		width: 180px;
		height: 100%;
	}
	.l-mainheader__logoarea .c-button {
		width: 100%;
		height: 36px;
		margin-bottom: 25px;
	}
	.l-mainheader__logoarea .c-button .c-button__inner {
		width: 156px;
		transition: border-color 0.2s;
	}
	.l-mainheader__logoarea .c-button .c-button__inner:before {
		left: 15px;
		width: 16px;
		height: 16px;
	}
	.l-mainheader__logoarea .c-button .c-button__inner:hover {
		border-color: var(--color-prim);
	}
	.l-mainheader__logoarea .c-button .c-button__inner > span {
		padding: 2px 10px 2px 30px;
		font-size: 1.6rem;
	}
	.l-mainheader__logo {
		width: 100%;
		height: 64px;
	}
	.l-mainheader__logo .l-mainheader__logo_corporate {
		position: relative;
		width: 180px;
		height: 100%;
	}
	.l-mainheader__logo .l-mainheader__logo_corporate a {
		display: block;
		width: 100%;
		height: 100%;
	}
	.l-mainheader__navtoggle {
		display: none;
	}
	.l-mainheader__nav {
		position: static;
		display: block;
		width: calc(100% - 180px);
		padding-left: 3%;
	}
	.l-mainheader__nav .l-mainnav {
		width: 100%;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__main {
		align-items: flex-start;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__main .l-mainnav__list {
		height: stretch;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__main .l-mainnav__list.active .l-mainnav__cattop::before {
		opacity: 1;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__cattop {
		position: relative;
		display: block;
		height: 100%;
		padding-right: 10px;
		padding-bottom: 15px;
		padding-left: 10px;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__cattop::before {
		content: "";
		position: absolute;
		bottom: 0;
		left: 50%;
		display: block;
		width: 40px;
		height: 4px;
		border-radius: 4px;
		background-color: var(--color-prim);
		opacity: 0;
		transform: translateX(-50%);
		transition: opacity 0.2s;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__cattop .l-mainnav__cattop_m {
		font-size: 2.4rem;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__cattop .l-mainnav__cattop_m:only-child {
		padding-top: 21px;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__cattop .l-mainnav__cattop_m + .l-mainnav__cattop_s {
		font-size: 1.2rem;
	}
	.l-mainheader__nav .l-mainnav .l-mainnav__cattop:hover::before {
		opacity: 1;
	}
	.l-mainheader .l-subnav {
		top: 30px;
		right: 10px;
	}
	.l-mainheader .l-subnav .l-subnav__main {
		gap: 10px 30px;
	}
	.l-mainheader .l-subnav .l-subnav__main li a {
		font-size: 1.6rem;
		transition: 0.2s;
	}
	.l-mainheader .l-subnav .l-subnav__main li a::before {
		bottom: 3px;
	}
	.l-mainheader .l-subnav .l-subnav__main li a:hover {
		color: var(--color-txt-hover);
		text-decoration: underline;
		text-underline-offset: 2px;
	}
	.l-mainheader .l-subnav .l-subnav__main > li.nav_support a, .l-mainheader .l-subnav .l-subnav__main > li.nav_global a, .l-mainheader .l-subnav .l-subnav__main > li.nav_lang a {
		padding-left: 25px;
	}
	.l-mainheader .l-subnav .l-subnav__main > li .l-header__langItems {
		width: 160px;
	}
	.l-mainheader .l-subnav .c-button .c-button__inner {
		transition: background-color 0.2s;
	}
	.l-mainheader .l-subnav .c-button .c-button__inner:hover > span {
		color: var(--color-txt);
	}
	.l-mainheader .l-subnav .c-button .c-button__inner:hover svg {
		fill: var(--color-txt);
	}
	.l-mainheader .l-subnav .c-button .c-button__inner:hover:before {
		background-color: #fff;
	}
	.l-mainheader .l-subnav .c-button .c-button__inner:hover::after {
		border-color: var(--color-txt);
		background-color: #fff;
	}
}
@media screen and (max-width: 1102px) and (min-width: 1025px) {
	.l-mainheader .l-mainheader__nav .l-mainnav .l-mainnav__main {
		gap: 0 5px;
	}
	.l-mainheader .l-mainheader__nav .l-mainnav .l-mainnav__main .l-mainnav__list .l-mainnav__cattop .l-mainnav__cattop_m {
		font-size: 1.7rem;
		letter-spacing: -0.03em;
	}
}

@media (max-width: 1024px) {
	.l-mainheader:not(.l-mainheader_mobile-app):not(.l-mainheader_mobile-and):not(.l-mainheader_ic-card).is-active .l-mainheader__logoarea .l-mainheader__logo_corporate a > img {
		position: static;
		transform: none;
	}
	.l-mainheader:not(.l-mainheader_mobile-app):not(.l-mainheader_mobile-and):not(.l-mainheader_ic-card) .l-mainheader__logoarea .l-mainheader__logo_corporate a > img {
		top: 35px;
		transform: translateX(-50%);
	}
}
@media (min-width: 1025px), print {
	.l-mainheader:not(.l-mainheader_mobile-app):not(.l-mainheader_mobile-and):not(.l-mainheader_ic-card) {
		height: 140px;
	}
}

/* var - top&other */
@media (min-width: 1025px), print {
	.l-mainheader.l-mainheader_comm .l-mainheader__nav .l-mainnav .l-mainnav__cattop .l-mainnav__cattop_m {
		font-size: 1.8rem;
	}
	.l-mainheader.l-mainheader_comm .l-mainheader__nav .l-mainnav .l-mainnav__cattop .l-mainnav__cattop_m:only-child {
		padding-top: 0;
	}
}

/* var - app */
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea {
	width: 180px;
	height: 100%;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button {
	width: 118px;
	height: 26px;
	margin-bottom: 15px;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button .c-button__inner:before {
	right: auto;
	left: 7px;
	width: 12px;
	height: 12px;
	background-color: var(--color-prim);
	mask-image: var(--icon-chev-cir-left);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
	transform: translateY(-50%);
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button .c-button__inner > span {
	padding: 2px 7px 2px 17px;
	font-size: 1.2rem;
	letter-spacing: -0.04em;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .l-mainheader__logo_corporate {
	position: relative;
	width: 180px;
	height: 100%;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .l-mainheader__logo_corporate a {
	overflow: hidden;
	display: block;
	width: 100%;
	height: 100%;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .l-mainheader__logo_corporate a > img {
	width: 100%;
	height: auto;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logo {
	width: 190px;
	height: 40px;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logo a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-mainheader.l-mainheader_mobile-app .l-mainheader__logo img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@media (max-width: 1024px) {
	.l-mainheader.l-mainheader_mobile-app.is-active .l-mainheader__logoarea .l-mainheader__logo_corporate {
		width: 120px;
	}
}
@media (min-width: 1025px), print {
	.l-mainheader.l-mainheader_mobile-app {
		height: 160px;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__inner {
		height: 100%;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea {
		width: 250px;
		height: 115px;
		padding-top: 20px;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button {
		position: absolute;
		top: 25px;
		left: 0;
		width: 156px;
		height: 36px;
		margin-bottom: 25px;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button .c-button__inner {
		transition: border-color 0.2s;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button .c-button__inner:before {
		left: 15px;
		width: 16px;
		height: 16px;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button .c-button__inner:hover {
		border-color: var(--color-prim);
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logoarea .c-button .c-button__inner > span {
		padding: 2px 10px 2px 30px;
		font-size: 1.6rem;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logo {
		width: 100%;
		height: 54px;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logo .l-mainheader__logo_corporate {
		position: relative;
		width: 250px;
		height: 100%;
	}
	.l-mainheader.l-mainheader_mobile-app .l-mainheader__logo .l-mainheader__logo_corporate a {
		display: block;
		width: 100%;
		height: 100%;
	}
}

/* var - and */
.l-mainheader.l-mainheader_mobile-and .l-mainheader__nav .l-mainnav__main > li .l-mainnav__cattop .l-mainnav__cattop_m:only-child {
	padding-top: 21px;
}
@media (max-width: 1024px) {
	.l-mainheader.l-mainheader_mobile-and .l-mainheader__logoarea {
		width: 144px;
	}
	.l-mainheader.l-mainheader_mobile-and .l-mainheader__logoarea .c-button .c-button__inner {
		min-height: 20px;
	}
	.l-mainheader.l-mainheader_mobile-and.is-active .l-mainheader__logoarea {
		width: 118px;
	}
	.l-mainheader.l-mainheader_mobile-and.is-active .l-mainheader__logo {
		padding-top: 4px;
		padding-bottom: 4px;
	}
	.l-mainheader.l-mainheader_mobile-and.is-active .l-mainheader__logo .l-mainheader__logo_corporate {
		width: 90px;
		height: 100%;
	}
	.l-mainheader.l-mainheader_mobile-and.is-active .l-mainheader__logo .l-mainheader__logo_corporate a > img {
		margin-top: -2px;
	}
}

/* var - card */
.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea {
	width: 180px;
}
.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea .c-button--s {
	margin-bottom: 0;
}
.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea .c-button--s .c-button__inner {
	min-height: 20px;
}
.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea .l-mainheader__logo img {
	margin-top: -5px;
}
@media (max-width: 1024px) {
	.l-mainheader.l-mainheader_ic-card.is-active .l-mainheader__logoarea .l-mainheader__logo_corporate {
		width: 110px;
		height: 100%;
	}
}
@media (min-width: 1025px), print {
	.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea {
		width: 260px;
	}
	.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea .c-button--s {
		margin-top: 13px;
	}
	.l-mainheader.l-mainheader_ic-card .l-mainheader__logoarea .l-mainheader__logo .l-mainheader__logo_corporate {
		width: 100%;
	}
}

/*----------
	main navigation
----------*/
@media (max-width: 1024px) {
	.l-mainnav {
		padding-bottom: 50px;
		border-top: 1px solid #ddd;
		background-color: #fff;
	}
	.l-mainnav .l-mainnav__linkbl {
		padding: 20px 20px 40px;
	}
	.l-mainnav .l-mainnav__linkbl .c-imagelink.c-imagelink_b .c-imagelink__inner {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100px;
		padding: 5px 20px;
	}
	.l-mainnav .l-mainnav__linkbl .c-imagelink__content .c-imagelink__content_img {
		margin-top: 4px;
		text-align: center;
	}
	.l-mainnav .l-mainnav__linkbl .c-imagelink__content .c-imagelink__content_img img {
		width: 100%;
		max-width: 170px;
	}
	.l-mainnav .l-mainnav__linkbl .c-imagelink__content .c-imagelink__content_img.img_s img {
		max-width: 81px;
		margin-top: 6px;
		margin-right: 10px;
	}
	.l-mainnav__list.is-hierarichical {
		position: relative;
	}
	.l-mainnav__list.is-hierarichical:before {
		content: "";
		position: absolute;
		top: 22px;
		right: 20px;
		display: block;
		width: 18px;
		height: 18px;
		background-color: var(--color-prim);
		mask-image: var(--icon-plus);
		mask-position: center center;
		mask-repeat: no-repeat;
		mask-size: contain;
	}
	.l-mainnav__list.is-hierarichical.is-open:before {
		mask-image: var(--icon-minus);
	}
	.l-mainnav__cattop {
		position: relative;
		display: block;
		width: 100%;
	}
	.l-mainnav a.l-mainnav__cattop::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		display: block;
		width: 16px;
		height: 16px;
		background-color: var(--color-prim);
		mask-image: var(--icon-chev-right);
		mask-position: center center;
		mask-repeat: no-repeat;
		mask-size: contain;
		transform: translateY(-50%);
	}
	.l-mainnav__sub {
		height: 0;
		position: relative;
		overflow: hidden;
		opacity: 0;
		background-color: var(--color-bg);
		pointer-events: none;
	}
	.l-mainnav__sub-close {
		display: none;
	}
	.l-mainnav__sub .l-megamenu__item > a {
		position: relative;
		padding: 10px 35px 10px 20px !important;
	}
	.l-mainnav__sub .l-megamenu__item > a::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 18px;
		display: block;
		width: 16px;
		height: 16px;
		background-color: var(--color-prim);
		mask-image: var(--icon-chev-right);
		mask-position: center center;
		mask-repeat: no-repeat;
		mask-size: contain;
		transform: translateY(-50%);
	}
	.l-mainnav__close {
		display: block;
		padding: 20px;
		width: 100px;
		margin: 10px 0 0 auto;
		text-align: center;
	}
}
@media (min-width: 1025px), print {
	.l-mainnav .l-mainnav__linkbl {
		display: none;
	}
	.l-mainnav__main {
		display: flex;
		justify-content: flex-end;
		gap: 0 10px;
	}
	.l-mainnav__cattop > button {
		display: none;
	}
	.l-mainnav__cattop > a {
		display: block;
		color: inherit;
		transition: color 0.2s;
	}
	.l-mainnav__cattop > a:hover {
		color: var(--color-txt-hover);
	}
	.l-mainnav__cattop > span,
	.l-mainnav__cattop > a > span {
		display: block;
		font-size: 2.4rem;
		font-weight: 500;
	}
	.l-mainnav__cattop.is-hung > a {
		color: var(--color-txt-hover);
	}
	.l-mainnav__cattop.is-hung i[class^=icon-] {
		transform: rotate(180deg) translateY(-2px);
	}
	.is-touch .l-mainnav__cattop i[class^=icon-] {
		display: none;
	}
	.l-mainnav__sub {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		z-index: 1;
		background: #EDEDED;
	}
	.l-mainnav__sub-close {
		display: block;
		padding-left: 20px;
		top: 16px;
		right: 20px;
		position: absolute;
		font-size: 1.4rem;
		line-height: 1;
		cursor: pointer;
		background: var(--icon-close) no-repeat left center/1em;
	}
	.l-mainnav__sub.is-hung {
		display: block;
	}
	.l-mainnav__close {
		display: none;
	}
}

.l-megamenu {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-megamenu {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media (max-width: 1024px) {
	.l-megamenu {
		padding-left: 0;
		padding-right: 0;
		background: #E5E5E5;
	}
	.l-megamenu__categories + .l-megamenu__categories {
		border-top: 1px solid #ddd;
	}
	.l-megamenu__category + .l-megamenu__category {
		border-top: 1px solid #ddd;
	}
	.l-megamenu__item > a {
		display: block;
		color: inherit;
	}
	.l-megamenu__item + .l-megamenu__item {
		border-top: 1px solid #ddd;
	}
	.l-megamenu__thumb {
		display: none;
	}
	.l-megamenu__text {
		padding: 10px 20px;
		font-size: 1.2rem;
	}
}
@media (min-width: 1025px), print {
	.l-megamenu {
		display: flex;
		flex-wrap: wrap;
		padding-top: 50px;
		padding-bottom: 50px;
		overflow: hidden;
	}
	.l-megamenu__categories {
		display: flex;
		align-items: flex-start;
		flex-wrap: wrap;
		margin-right: 60px;
	}
	.l-megamenu__categories--featured {
		margin-right: 94px;
	}
	.l-megamenu__categories--regular {
		flex: 1;
	}
	.l-megamenu__categories:last-child {
		margin-right: 0;
	}
	.l-megamenu__category {
		flex: 1 1 auto;
		max-width: 260px;
		margin-right: 60px;
	}
	.l-megamenu__category--featured {
		margin-right: 35px;
	}
	.l-megamenu__category:last-child {
		margin-right: 0;
	}
	.l-megamenu__category + .l-megamenu__category {
		margin-top: 0;
	}
	.l-megamenu__item--featured {
		padding-bottom: 0;
		border-bottom: none;
	}
	.l-megamenu__item > a {
		transition: color 0.2s;
	}
	.l-megamenu__item > a:hover {
		color: var(--color-txt-hover);
	}
	.l-megamenu__item + .l-megamenu__item {
		margin-top: 20px;
	}
	.l-megamenu__thumb {
		margin-bottom: 10px;
	}
	.l-megamenu__text {
		padding-left: 1.2em;
		background: var(--icon-chev-cir-right) no-repeat left top 0.4em/1em;
	}
}
@media screen and (min-width: 1025px) and (max-width: 1100px) {
	.l-megamenu__categories--featured {
		margin-bottom: 40px;
	}
	.l-megamenu__categories--regular {
		flex: 1 0 auto;
		width: 100%;
	}
}

/*----------
	main footer
----------*/
@media print {
	footer {
		display: none;
	}
}

.l-mainfooter {
	border-top: 1px solid var(--color-border);
}
.l-mainfooter__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-mainfooter__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-mainfooter__inner {
	padding-top: 40px;
	padding-bottom: 40px;
}
.l-mainfooter__backToTop {
	position: fixed;
	bottom: 10px;
	right: 10px;
	width: 60px;
	height: 60px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s;
	z-index: 210;
}
.l-mainfooter__backToTop.is-visible {
	opacity: 1;
	pointer-events: auto;
}
.l-mainfooter__backToTop > a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	z-index: 2;
}
.l-mainfooter__backToTop > a::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 60px;
	background-color: #000;
	opacity: 0.7;
	z-index: -1;
}
.l-mainfooter__backToTop > a .l-backToTop {
	position: relative;
	width: 100%;
	height: 100%;
}
.l-mainfooter__backToTop > a .c-icn-arrow-t {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 16px;
	height: 16px;
	transform: translate(-50%, -50%);
}
.l-mainfooter__backToTop > a .c-icn-arrow-t:before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background-color: #fff;
	mask-image: var(--icon-chev-up);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
}
.l-mainfooter__backToTop i {
	display: inline-block;
	font-size: 37px;
	transform: translateY(-100%);
}
.l-mainfooter__logo > a {
	display: block;
}
.l-mainfooter__logo img {
	max-width: 180px;
}
.l-mainfooter__nav {
	margin-bottom: 35px;
	margin-left: -20px;
	margin-right: -20px;
}
.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a[target=_blank] {
	position: relative;
	display: inline-block;
	padding-right: 20px;
}
.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a[target=_blank]::before {
	display: none;
}
.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a[target=_blank] svg {
	position: absolute;
	bottom: 14px;
	right: 0;
	display: block;
	width: 16px;
	height: 16px;
	fill: var(--color-prim);
}
@media (min-width: 1025px), print {
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a[target=_blank] svg {
		bottom: 8px;
	}
}
.l-mainfooter__copyright {
	margin-top: 40px;
	font-size: 1.2rem;
	color: #666666;
}
@media (max-width: 1024px) {
	.l-mainfooter__inner {
		padding-right: 0;
		padding-left: 0;
	}
	.l-mainfooter__logo {
		margin-bottom: 30px;
	}
	.l-mainfooter__logo > a {
		text-align: center;
	}
	.l-mainfooter__logo > a > img {
		max-width: 140px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea {
		margin-top: 28px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea .l-mainfooter__nav_item {
		border-bottom: 1px solid var(--color-border);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea .l-mainfooter__nav_item .js-footer-item-menu {
		display: none;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea .l-mainfooter__nav_item.is-open .js-footer-item-menu {
		display: block;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea .l-mainfooter__nav_item.is-open .l-mainfooter__nav_catetop:has(button):before {
		mask-image: var(--icon-minus);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__bnrarea .c-button .c-button__inner::after {
		border-radius: 6px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop {
		position: relative;
		margin-bottom: 0;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .l-mainfooter__nav_subtext {
		font-size: 1.2rem;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop + .l-mainfooter__nav_catetop {
		border-top: 1px solid var(--color-border);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		display: block;
		width: 16px;
		height: 16px;
		background-color: var(--color-prim);
		mask-image: var(--icon-chev-right);
		mask-position: center center;
		mask-repeat: no-repeat;
		mask-size: contain;
		transform: translateY(-50%);
		text-align: center;
		pointer-events: none;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop:has(button):before {
		mask-image: var(--icon-plus);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .js-footer-item-toggle {
		position: absolute;
		top: 50%;
		right: 0;
		display: block;
		width: 100%;
		height: 100%;
		transform: translateY(-50%);
		cursor: pointer;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .js-footer-item-toggle + a, .l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .js-footer-item-toggle + span {
		display: block;
		pointer-events: none;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .l-mainfooter__nav_ttl {
		display: block;
		padding: 10px 0;
		font-size: 1.6rem;
		font-weight: 500;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop > a,
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop > span {
		display: block;
		padding-top: 16px;
		padding-right: 43px;
		padding-bottom: 16px;
		padding-left: 20px;
		font-weight: 500;
	}
	.l-mainfooter .l-fnav-main .js-footer-item-menu + .l-mainfooter__nav_catetop {
		border-top: 1px solid var(--color-border);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link {
		border-top: 1px solid var(--color-border);
		background-color: #F0F1F0;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li {
		margin-top: 0;
		border-bottom: 1px solid var(--color-border);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li:last-child {
		border-bottom: 0;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a {
		position: relative;
		display: block;
		padding: 10px 35px 10px 20px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 18px;
		display: block;
		width: 16px;
		height: 16px;
		background-color: var(--color-prim);
		mask-image: var(--icon-chev-right);
		mask-position: center center;
		mask-repeat: no-repeat;
		mask-size: contain;
		transform: translateY(-50%);
		text-align: center;
		pointer-events: none;
	}
}
@media (min-width: 1025px), print {
	.l-mainfooter__inner {
		padding-top: 80px;
		padding-bottom: 55px;
	}
	.l-mainfooter__backToTop > a:before {
		transition: opacity 0.2s;
	}
	.l-mainfooter__backToTop > a:hover::before {
		opacity: 0.9;
	}
	.l-mainfooter__logo {
		margin-bottom: 45px;
	}
	.l-mainfooter__logo img {
		width: 250px;
		max-width: none;
	}
	.l-mainfooter .g-button-container .c-button__inner:hover::after {
		border-color: var(--color-prim);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		gap: 50px 30px;
		width: 100%;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__navarea .l-mainfooter__nav_item {
		width: calc(33.33% - 30px);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop {
		position: relative;
		margin-bottom: 20px;
		border-bottom: 1px solid var(--color-border);
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop + .l-mainfooter__nav_catetop {
		margin-top: -20px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .l-mainfooter__nav_subtext {
		font-size: 1.4rem;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop button {
		display: none;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop .l-mainfooter__nav_ttl {
		display: block;
		padding: 10px 0;
		font-size: 1.6rem;
		font-weight: 500;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop > a,
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop > span {
		display: block;
		min-height: 65px;
		padding-top: 16px;
		padding-bottom: 5px;
		font-size: 1.8rem;
		font-weight: 500;
		transition: color 0.2s ease-in-out;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_catetop > a:hover {
		color: var(--color-txt-hover);
		text-decoration: underline;
		text-underline-offset: 2px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a {
		display: block;
		padding: 3px 0;
		font-size: 1.4rem;
		transition: color 0.2s;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a:hover {
		color: var(--color-txt-hover);
		text-decoration: underline;
		text-underline-offset: 2px;
	}
	.l-mainfooter .l-fnav-main .l-mainfooter__nav_link > li a:hover::before {
		background-color: var(--color-prim);
	}
	.l-mainfooter__copyright {
		margin-top: 17px;
	}
}

/* var - top&other */
@media (max-width: 1024px) {
	.l-mainfooter.l-mainfooter_comm .g-button-container {
		padding-right: 20px;
		padding-left: 20px;
	}
}
@media (min-width: 1025px), print {
	.l-mainfooter.l-mainfooter_comm .l-mainfooter__logo img {
		width: 180px;
	}
}

/* var - app */
.l-mainfooter.l-mainfooter_mobile-app .l-mainheader__logoarea .l-mainheader__logo_corporate {
	width: 180px;
}
.l-mainfooter.l-mainfooter_mobile-app .l-mainheader__logoarea .l-mainheader__logo_corporate a > img {
	width: 180px;
}

.locked .l-mainfooter__backToTop {
	display: none !important;
}

.l-mainfooter__bnrarea {
	margin-top: 30px;
}
.l-mainfooter__bnrarea > a {
	display: inline-block;
	width: 100%;
}
.l-mainfooter__bnrarea .c-button.c-button--l {
	display: inline-block;
	width: 100%;
}
.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner {
	justify-content: flex-start;
	padding-right: 45px;
	padding-left: 8%;
	border-radius: 6px;
	border-color: initial;
}
.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner > span {
	padding-right: 0;
	padding-left: 0;
}
.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner > span + span {
	margin-left: 20px;
}
.l-mainfooter__bnrarea .c-button.c-button--l img {
	width: 100%;
	max-width: 165px;
}
@media (max-width: 1024px) {
	.l-mainfooter__bnrarea {
		padding-left: 20px;
		padding-right: 20px;
	}
	.l-mainfooter__bnrarea .c-button + a, .l-mainfooter__bnrarea .c-button + div {
		margin-top: 20px;
	}
	.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner {
		padding-right: 25px;
		padding-left: 20px;
	}
	.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner:before {
		right: 10px;
	}
}
@media (min-width: 1025px), print {
	.l-mainfooter__bnrarea {
		display: flex;
		align-items: flex-start;
		justify-content: end;
		gap: 0 30px;
		height: 64px;
		margin-top: 70px;
	}
	.l-mainfooter__bnrarea > a {
		position: relative;
		display: block;
		max-width: 373px;
		padding-bottom: 5.426273%;
	}
	.l-mainfooter__bnrarea > a img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		transition: all 0.2s;
	}
	.l-mainfooter__bnrarea > a:hover img {
		transform: translate(-50%, -50%) scale(1.02);
	}
	.l-mainfooter__bnrarea .c-button.c-button--l {
		max-width: 373px;
	}
	.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner {
		min-height: 64px;
	}
	.l-mainfooter__bnrarea .c-button.c-button--l .c-button__inner::after {
		border-radius: 5px;
	}
}

.l-mainfooter__note {
	position: relative;
	margin-top: 30px;
	padding: 30px 20px;
	color: #666666;
	font-size: 1.2rem;
	line-height: var(--line-height-l);
	z-index: 2;
}
.l-mainfooter__note::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background-color: var(--color-bg);
	transform: translateX(-50%);
	z-index: -1;
}
.l-mainfooter__note .l-mainfooter__noteInner > li {
	display: inline;
	line-height: 2;
}
@media (min-width: 1025px), print {
	.l-mainfooter__note {
		margin-top: 60px;
		padding: 30px 0;
	}
}

.l-fnav-sub .l-fnav-sub__logo {
	padding-top: 30px;
	padding-bottom: 13px;
}
.l-fnav-sub .l-fnav-sub__logo img {
	display: block;
	max-width: 120px;
}
.l-fnav-sub .l-mainfooter__linkInner .l-mainfooter__menuItem {
	display: inline-block;
	margin: 10px 15px 10px 0;
	margin-right: 15px;
}
.l-fnav-sub .l-mainfooter__linkInner .l-mainfooter__menuItem a {
	display: block;
	font-size: 1.4rem;
}
@media (max-width: 1024px) {
	.l-fnav-sub {
		padding-left: 20px;
		padding-right: 20px;
	}
}
@media (min-width: 1025px), print {
	.l-fnav-sub {
		display: flex;
		width: 100%;
		padding-top: 50px;
	}
	.l-fnav-sub .l-fnav-sub__logo {
		width: 230px;
		padding-top: 40px;
	}
	.l-fnav-sub .l-fnav-sub__logo img {
		width: 160px;
		max-width: none;
	}
	.l-fnav-sub .l-mainfooter__linkInner {
		width: calc(100% - 230px);
		padding-top: 25px;
	}
	.l-fnav-sub .l-mainfooter__linkInner .l-mainfooter__menuItem {
		margin-block: 3px;
		margin-right: 20px;
	}
	.l-fnav-sub .l-mainfooter__linkInner .l-mainfooter__menuItem a {
		transition: color 0.2s;
	}
	.l-fnav-sub .l-mainfooter__linkInner .l-mainfooter__menuItem a:hover {
		color: var(--color-txt-hover);
		text-decoration: underline;
		text-underline-offset: 2px;
	}
}

@media (min-width: 1025px), print {
	.ts-modal .l-mainfooter {
		padding-bottom: 80px;
	}
}

/*----------
	main content
----------*/
.l-content {
	width: 100%;
	position: relative;
	overflow-x: hidden;
	padding-bottom: 80px;
}
@media (max-width: 1024px) {
	.l-content .l-main {
		padding-top: 108px;
	}
}
@media (min-width: 821px), print {
	.l-content {
		padding-bottom: 140px;
	}
}

.l-structure--double {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-structure--double {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-structure--double .l-structure__side {
	margin-top: 40px;
}

.l-section {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-section {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-section + .l-section {
	margin-top: 70px;
}
.l-section .l-section {
	padding-right: 0;
	padding-left: 0;
}
.l-section--gapless {
	padding-left: 0;
	padding-right: 0;
}
.l-section--bg_gray {
	position: relative;
	padding-top: 65px;
	padding-bottom: 65px;
	z-index: 2;
}
.l-section--bg_gray:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	border-radius: 30px;
	background-color: #F0F1F0;
	transform: translateX(-50%);
	z-index: -1;
}
@media (min-width: 821px), print {
	.l-section + .l-section {
		margin-top: 80px;
	}
	.l-section + .l-contentsarea_wrp {
		margin-top: 75px !important;
	}
	.l-section--bg_gray {
		position: relative;
		padding-top: 120px;
		padding-bottom: 120px;
		z-index: 3;
	}
	.l-section--bg_gray:before {
		border-radius: 40px;
	}
}

.l-contentsarea_wrp {
	position: relative;
	margin-top: 40px !important;
}
.l-contentsarea_wrp .l-sidenav {
	padding: 0 0 40px;
	z-index: 3;
}
.l-contentsarea_wrp .l-sidenav__inner {
	padding-bottom: 8px;
}
.l-contentsarea_wrp .l-sidenav__title {
	position: relative;
	margin-bottom: 20px;
	padding-bottom: 5px;
	font-size: 1.4rem;
	font-weight: 500;
	border-bottom: 1px solid var(--color-border);
}
.l-contentsarea_wrp .l-sidenav__title a {
	display: block;
	color: inherit;
}
.l-contentsarea_wrp .l-sidenav__title > span,
.l-contentsarea_wrp .l-sidenav__title > a > span {
	display: block;
	padding-bottom: 13px;
}
.l-contentsarea_wrp .l-sidenav .heading-level-2 {
	position: relative;
	margin-top: 20px;
	margin-bottom: 10px;
	font-size: 1.4rem;
	font-weight: 500;
}
.l-contentsarea_wrp .l-sidenav .heading-level-2:has(.is-relatedpages), .l-contentsarea_wrp .l-sidenav .heading-level-2:has(.is-tosupport) {
	margin-top: 20px;
	border-bottom: 1px solid var(--color-border);
}
.l-contentsarea_wrp .l-sidenav .heading-level-2:has(.is-relatedpages) {
	margin-bottom: 12px;
}
.l-contentsarea_wrp .l-sidenav .heading-level-6:has(.is-relatedpages) {
	line-height: var(--line-height-s);
}
.l-contentsarea_wrp .l-sidenav .heading-level-6 a {
	position: relative;
	display: inline;
	padding-left: 1.2em;
}
.l-contentsarea_wrp .l-sidenav .heading-level-6 a::before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	display: block;
	width: 12px;
	height: 12px;
	background-color: var(--color-prim);
	mask-image: var(--icon-chev-right);
	mask-position: 0 0;
	mask-repeat: no-repeat;
	mask-size: contain;
}
.l-contentsarea_wrp .l-sidenav__item:not(:last-child) {
	margin-bottom: 20px;
}
.l-contentsarea_wrp .l-sidenav__item ul > li {
	padding-left: 30px;
}
.l-contentsarea_wrp .l-sidenav__item ul > li + li {
	margin-top: 5px;
}
.l-contentsarea_wrp .l-sidenav__item a {
	display: block;
	font-size: 1.3rem;
}
@media (max-width: 820px) {
	.l-contentsarea_wrp .l-sidenav {
		margin-bottom: 40px;
		padding: 20px 20px;
		border-radius: 15px;
		background-color: var(--color-bg_2);
	}
	.l-contentsarea_wrp .l-sidenav__inner {
		border-bottom: 0;
	}
	.l-contentsarea_wrp .l-sidenav__title {
		margin-bottom: 14px;
		padding-bottom: 13px;
	}
	.l-contentsarea_wrp .l-sidenav .heading-level-2 {
		margin-top: 15px;
		margin-bottom: 0;
		padding-top: 0;
		padding-left: 0;
	}
	.l-contentsarea_wrp .l-sidenav .heading-level-2:first-child {
		margin-top: 0;
	}
	.l-contentsarea_wrp .l-sidenav .heading-level-3,
	.l-contentsarea_wrp .l-sidenav .heading-level-4,
	.l-contentsarea_wrp .l-sidenav .heading-level-5 {
		padding-left: 0;
	}
	.l-contentsarea_wrp .l-sidenav .heading-level-3 > a,
	.l-contentsarea_wrp .l-sidenav .heading-level-4 > a,
	.l-contentsarea_wrp .l-sidenav .heading-level-5 > a {
		padding-left: 0;
	}
	.l-contentsarea_wrp .l-sidenav .heading-level-6 a::before {
		background-color: var(--color-txt);
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__item {
		overflow: hidden;
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__item:not(:last-child) {
		margin-bottom: 0;
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__item li {
		padding: 2px;
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__item.is-acco {
		position: relative;
		height: 105px;
		transition: height 0.3s;
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__item.is-acco::before {
		content: "";
		position: absolute;
		bottom: 0;
		left: 50%;
		display: block;
		width: 104%;
		height: 3em;
		background: var(--color-bg_2);
		background: linear-gradient(0deg, rgb(240, 241, 240) 0%, rgba(240, 241, 240, 0) 85%);
		transform: translateX(-50%);
		z-index: 1;
		pointer-events: none;
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__item.is-open::before {
		display: none;
	}
}
@media (min-width: 821px), print {
	.l-contentsarea_wrp .l-sidenav.is-fixed {
		position: fixed;
		top: 0;
	}
	.l-contentsarea_wrp .l-sidenav.is-fixed .l-sidenav__title:before {
		display: none;
	}
	.l-contentsarea_wrp .l-sidenav.is-fixed + .l-contentsarea_main {
		margin-left: 240px;
	}
	.l-contentsarea_wrp .l-sidenav.is-end {
		position: absolute;
		top: auto;
		bottom: 0;
	}
	.l-contentsarea_wrp .l-sidenav .l-sidenav__inner:has(.active) .l-sidenav__title:before {
		background-color: transparent;
	}
	.l-contentsarea_wrp .l-sidenav .js-notice-toggle {
		display: none;
	}
	.l-contentsarea_wrp .l-sidenav__title {
		margin-bottom: 17px;
		padding-left: 13px;
		padding-bottom: 17px;
	}
	.l-contentsarea_wrp .l-sidenav__title:before {
		content: "";
		position: absolute;
		top: 3px;
		left: 0;
		display: block;
		width: 4px;
		height: 20px;
		border-radius: 4px;
		background-color: var(--color-prim);
		transition: background-color 0.2s;
	}
	.l-contentsarea_wrp .l-sidenav__title > a {
		transition: color 0.2s;
	}
	.l-contentsarea_wrp .l-sidenav__title > a:hover {
		color: var(--color-txt-hover);
	}
	.l-contentsarea_wrp .l-sidenav__item ul > li {
		position: relative;
		padding-left: 13px;
	}
	.l-contentsarea_wrp .l-sidenav__item ul > li + li {
		margin-top: 10px;
	}
	.l-contentsarea_wrp .l-sidenav__item ul > li:before {
		content: "";
		position: absolute;
		top: 2px;
		left: 0;
		display: block;
		width: 4px;
		height: 20px;
		border-radius: 4px;
		background-color: transparent;
		transition: background-color 0.2s;
	}
	.l-contentsarea_wrp .l-sidenav__item ul > li:has(.active):before {
		background-color: var(--color-prim);
	}
	.l-contentsarea_wrp .l-sidenav__item a {
		transition: color 0.2s;
	}
	.l-contentsarea_wrp .l-sidenav__item a:hover {
		color: var(--color-txt-hover);
		text-decoration: underline;
	}
	.l-contentsarea_wrp .l-sidenav .heading-level-2:has(.is-relatedpages), .l-contentsarea_wrp .l-sidenav .heading-level-2:has(.is-tosupport) {
		margin-top: 40px;
	}
}
.l-contentsarea_wrp .l-section {
	padding-right: 0;
	padding-left: 0;
}
@media (max-width: 820px) {
	.l-contentsarea_wrp .l-contentsarea_main {
		margin-top: 10px;
	}
}
@media (min-width: 821px), print {
	.l-contentsarea_wrp > .c-section__inner {
		display: flex;
		width: 100%;
	}
	.l-contentsarea_wrp .l-sidenav {
		width: 240px;
		padding-top: 15px;
		padding-bottom: 80px;
	}
	.l-contentsarea_wrp .l-sidenav .js-pageanchor.active {
		position: relative;
	}
	.l-contentsarea_wrp .l-contentsarea_main {
		width: calc(100% - 240px);
		padding-left: 5%;
	}
	.l-contentsarea_wrp .l-contentsarea_main:only-child {
		width: 100%;
	}
	.l-contentsarea_wrp .l-section--bg_gray:before {
		margin-left: -17.4%;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	.l-contentsarea_wrp .c-imageset .c-imageset__inner {
		display: block;
	}
	.l-contentsarea_wrp .c-imageset .c-imageset__inner .c-imageset__image + .c-imageset__content {
		margin-top: 30px;
	}
}

body:has(.modal-box__content.is-show) .l-content {
	pointer-events: none;
}

.l-breadcrumb {
	position: relative;
	z-index: 2;
}
.l-breadcrumb::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	transform: translateX(-50%);
	z-index: -1;
}
.l-breadcrumb__list {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-breadcrumb__list {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-breadcrumb__list {
	display: inline-flex;
	flex-wrap: nowrap;
	white-space: nowrap;
	font-size: 1.2rem;
	line-height: 1.2;
}
.l-breadcrumb__list > li {
	display: block;
}
.l-breadcrumb__list > li > a {
	text-decoration: none;
	color: #888;
}
.l-breadcrumb__list > li + li::before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: #888;
	mask-image: var(--icon-chev-right);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
	margin: 0 8px;
}
.l-breadcrumb__list > li:last-child > span,
.l-breadcrumb__list > li:last-child > a {
	pointer-events: none;
	font-weight: 500;
	color: var(--color-txt);
}
.l-breadcrumb__list > li:last-child > span:focus,
.l-breadcrumb__list > li:last-child > a:focus {
	outline: none;
}
@media (max-width: 820px) {
	.l-breadcrumb {
		overflow-x: scroll;
		margin-bottom: 10px;
		padding: 6px 0;
	}
	.l-breadcrumb__inner {
		width: 100%;
		overflow-x: auto;
	}
	.l-breadcrumb__list {
		width: auto;
		max-width: none;
	}
}
@media (min-width: 821px), print {
	.l-breadcrumb {
		margin-bottom: 30px;
		padding: 17px 0 18px;
	}
	.l-breadcrumb__list {
		display: block;
		white-space: normal;
	}
	.l-breadcrumb__list > li {
		display: inline;
	}
	.l-breadcrumb__list > li > a {
		transition: color 0.2s;
	}
	.l-breadcrumb__list > li > a:hover {
		color: var(--color-txt);
		text-decoration: underline;
	}
}

.l-localnav {
	background: var(--color-bg);
}
.l-localnav__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-localnav__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-localnav__inner {
	padding-top: 30px;
	padding-bottom: 40px;
}
.l-localnav__categories + .l-localnav__categories {
	margin-top: 20px;
}
.l-localnav__category + .l-localnav__category {
	margin-top: 20px;
}
.l-localnav__item--featured {
	padding-bottom: 12px;
	border-bottom: 1px solid var(--color-border);
}
.l-localnav__item + .l-localnav__item {
	margin-top: 20px;
}
.l-localnav__thumb {
	margin-bottom: 10px;
}
@media (min-width: 821px), print {
	.l-localnav__inner {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		flex-wrap: wrap;
		padding-top: 50px;
		padding-bottom: 50px;
		overflow: hidden;
	}
	.l-localnav__categories {
		display: flex;
		align-items: flex-start;
	}
	.l-localnav__categories--regular {
		flex: 1;
	}
	.l-localnav__categories--featured {
		margin-right: 112px;
	}
	.l-localnav__categories + .l-localnav__categories {
		margin-top: 0;
	}
	.l-localnav__category {
		flex: 1 1 auto;
		max-width: 250px;
		margin-right: 30px;
	}
	.l-localnav__category--featured {
		margin-right: 35px;
	}
	.l-localnav__category:last-child {
		margin-right: 0;
	}
	.l-localnav__category + .l-localnav__category {
		margin-top: 0;
	}
	.l-localnav__item--featured {
		padding-bottom: 0;
		border-bottom: none;
	}
	.l-localnav__item > a {
		transition: color 0.2s;
	}
	.l-localnav__item > a:hover {
		color: var(--color-txt-hover);
	}
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
	.l-localnav__categories--featured {
		margin-bottom: 40px;
	}
	.l-localnav__categories--regular {
		flex: 1 0 auto;
		width: 100%;
	}
}

.swiper {
	padding-bottom: 2px !important;
}
.swiper .swiper-slide:not(.swiper-slide-active) {
	opacity: 0 !important;
	pointer-events: none;
}
.swiper .swiper-slide.swiper-slide-active {
	opacity: 1 !important;
	pointer-events: auto;
}
.swiper.slide_flow .swiper-slide:not(.swiper-slide-active) {
	opacity: initial !important;
}
.swiper .swiper-slide img {
	border-radius: 10px;
}
.swiper .swiper-pagination-bullet {
	width: 14px !important;
	height: 14px !important;
	margin: 0 8px !important;
	background-color: #fff !important;
	opacity: 1 !important;
}
.swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: var(--color-prim) !important;
}
.swiper .swiper-usability {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	gap: 5px 10px;
	width: 100%;
	height: 28px;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.swiper .swiper-usability .swiper-pagination {
	position: static;
	width: auto;
	height: 100%;
}
.swiper .swiper-usability .swiper-pause {
	position: relative;
	width: 16px;
	height: 100%;
	padding-top: 2px;
	cursor: pointer;
}
.swiper .swiper-usability .swiper-pause svg {
	width: 100%;
	fill: #666;
}
.swiper .swiper-usability .swiper-pause.is-paused::before {
	mask-image: var(--icon-play);
}
.swiper .swiper-button-next.swiper-button-disabled,
.swiper .swiper-button-prev.swiper-button-disabled {
	opacity: 1;
	background-color: #ddd;
}
@media (min-width: 821px), print {
	.swiper .swiper-slide {
		height: auto;
	}
	.swiper .swiper-pagination-bullet {
		transition: background-color 0.2s ease-in-out;
	}
	.swiper .swiper-pagination-bullet:hover {
		background-color: var(--color-seco) !important;
	}
	.swiper .swiper-pause svg {
		transition: fill 0.2s ease-in-out;
	}
	.swiper .swiper-pause:hover svg {
		fill: var(--color-prim);
	}
	.swiper .swiper-button-next,
	.swiper .swiper-button-prev {
		transition: all 0.2s;
	}
	.swiper .swiper-button-next:hover,
	.swiper .swiper-button-prev:hover {
		width: 64px;
		height: 64px;
		border-radius: 64px;
		top: calc(40% - 2px);
	}
	.swiper .swiper-button-next:hover,
	.swiper .swiper-rtl .swiper-button-prev:hover {
		right: -32px;
	}
	.swiper .swiper-button-prev:hover {
		left: -32px;
	}
}

.area-links_modallaunch {
	overflow: hidden;
	width: 100%;
	height: 80px;
	background-color: #fff;
	box-shadow: 0 4px 12px 5px rgba(0, 0, 0, 0.15);
	z-index: 20;
}
.area-links_modallaunch .area-links__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.area-links_modallaunch .area-links__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.area-links_modallaunch .area-links__inner {
	display: flex;
}
.area-links_modallaunch .area-links__logo {
	width: 22.5%;
}
.area-links_modallaunch .area-links__logo .area-links__logo_corporate {
	height: 80px;
	padding: 2px;
}
.area-links_modallaunch .area-links__logo .area-links__logo_corporate a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}
.area-links_modallaunch .area-links__logo .area-links__logo_corporate a img {
	position: absolute;
	top: 50%;
	left: 0;
	width: 200px;
	transform: translateY(-50%);
}
.area-links_modallaunch .area-links__btn {
	position: relative;
	width: 77.5%;
	padding-top: 20px;
	padding-left: 40px;
	background-color: var(--color-seco_p);
	z-index: 2;
}
.area-links_modallaunch .area-links__btn:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	background-color: var(--color-seco_p);
	z-index: -1;
}
.area-links_modallaunch .area-links__btn ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	gap: 20px;
}
.area-links_modallaunch .area-links__btn ul > li {
	flex: 1;
}
.area-links_modallaunch .area-links__btn ul > li .c-button__inner {
	display: block;
	width: 100%;
	min-height: 40px;
	padding-top: 6px;
	background-color: transparent;
	color: #fff;
	font-weight: 500;
	text-align: center;
}
.area-links_modallaunch .area-links__btn ul > li .c-button__inner:before {
	display: none;
}
.area-links_modallaunch .c-button .c-button__inner {
	color: var(--color-txt) !important;
}
.area-links_modallaunch .c-button .c-button__inner::after {
	border-color: #fff;
}
@media (max-width: 820px) {
	.area-links_modallaunch {
		position: fixed;
		top: 54px;
		left: 0;
		display: none;
		width: 100%;
		height: 50px;
		background-color: var(--color-seco_p);
		opacity: 0;
		transition: opacity 0.2s;
	}
	.area-links_modallaunch.is-vis {
		opacity: 1;
	}
	.area-links_modallaunch .area-links__logo {
		display: none;
	}
	.area-links_modallaunch .area-links__btn {
		width: 100%;
		padding-top: 10px;
		padding-left: 0;
	}
	.area-links_modallaunch .area-links__btn:before {
		display: none;
	}
	.area-links_modallaunch .area-links__btn ul {
		gap: 10px 5px;
	}
	.area-links_modallaunch .area-links__btn ul > li .c-button__inner {
		min-height: 27px;
		padding-top: 2px;
		border-radius: 27px;
		font-size: 1.3rem;
	}
}
@media (min-width: 821px), print {
	.area-links_modallaunch {
		position: fixed;
		bottom: 0;
		left: 0;
	}
	.area-links_modallaunch .area-links__logo .area-links__logo_corporate > a img {
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.area-links_modallaunch .area-links__btn ul > li .c-button__inner {
		transition: color 0.2s;
		cursor: pointer;
	}
	.area-links_modallaunch .area-links__btn ul > li .c-button__inner:hover {
		color: #444;
	}
	.area-links_modallaunch .c-button .c-button__inner:hover::after {
		background-color: #fff;
		transform: translate(-50%, -50%) scale(1.05);
	}
}

.l-mainheader:has(.is-open) ~ .area-links_modallaunch {
	z-index: -1;
}

.l-mainheader.is-active ~ .area-links_modallaunch {
	display: block;
}

@media (max-width: 820px) {
	body:has(.l-mainheader__navtoggle.is-open) .area-links_modallaunch {
		opacity: 0;
		z-index: -5;
		pointer-events: none;
	}
}
.jp-ma-links {
	overflow-x: hidden;
	position: relative;
	width: 100%;
	padding: 40px 20px;
	z-index: 2;
}
.jp-ma-links::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100%;
	max-width: 1200px;
	height: 100%;
	border-radius: 30px;
	background-color: var(--color-seco_p);
	transform: translateX(-50%);
	z-index: -1;
}
.jp-ma-links .c-tab__tab-item:before {
	display: none;
}
.jp-ma-links .c-text {
	font-weight: 500;
}
.jp-ma-links {
	/* overrideParts */
}
.jp-ma-links .g-grid .c-imagelink a:before {
	display: none;
}
.jp-ma-links .c-tab .c-tab__tab {
	gap: 0 20px;
}
.jp-ma-links .c-tab .c-tab__tab:before {
	display: none;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item {
	border-bottom: 0;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item:focus {
	outline: 2px solid pink !important;
	outline-offset: 2px;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link {
	height: 50px;
	min-height: 50px;
	padding: 6px 5px;
	border-radius: 50px;
	transition: background-color 0.2s;
	position: relative;
	border: 0;
	z-index: 2;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid var(--color-txt);
	border-radius: 50px;
	transform: translate(-50%, -50%);
	z-index: -1;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link > span {
	color: var(--color-txt);
	font-size: 1.6rem;
	font-weight: 500;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item.is-active .c-tab__tab-link {
	border-color: #fff;
	background-color: #fff;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item.is-active .c-tab__tab-link::after {
	border-color: #fff;
}
.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item.is-active .c-tab__tab-link > span {
	color: initial;
}
.jp-ma-links .c-tab .g-button-container .c-button .c-button__inner::after {
	border: 1px solid #fff;
	box-shadow: 0px 2px 10px 2px rgba(0, 0, 0, 0.1);
}
.jp-ma-links .g-grid.g-grid--4up {
	display: grid;
	gap: 15px 20px;
}
.jp-ma-links .g-grid.g-grid--4up .g-grid__item + .g-grid__item {
	margin-top: 0;
}
.jp-ma-links .g-grid.g-grid--4up .c-imagelink__inner {
	padding-bottom: 20px;
}
.jp-ma-links .g-grid.g-grid--4up .c-imagelink__inner .c-imagelink__image.image_s > img {
	max-width: 50px;
}
.jp-ma-links .g-grid.g-grid--4up .c-imagelink__title {
	font-size: 1.35rem;
}
.jp-ma-links .g-grid.g-grid--4up .c-icontext:not(:has(svg)) > span {
	padding-right: 0;
}
.jp-ma-links .g-grid.g-grid--4up .c-icontext:not(:has(svg)) > span:before {
	display: none;
}
@media (max-width: 820px) {
	.jp-ma-links .g-grid.g-grid--4up {
		gap: 10px 14px;
		grid-template-columns: repeat(2, 1fr);
	}
	.jp-ma-links .g-button-container--4up {
		display: grid;
		gap: 4px;
		grid-template-columns: repeat(4, 1fr);
		justify-content: center;
		align-items: stretch;
	}
	.jp-ma-links .c-tab {
		position: relative;
	}
	.jp-ma-links .c-tab__tab {
		gap: 10px 5px !important;
	}
	.jp-ma-links .c-tab__tab .c-tab__tab-item {
		width: calc(25% - 4px);
	}
	.jp-ma-links .c-tab__tab .c-tab__tab-item .c-tab__tab-link {
		height: 40px !important;
		min-height: 40px !important;
		border-radius: 40px !important;
	}
	.jp-ma-links .c-tab__contents .c-imagelink .c-imagelink__image.image_s {
		padding-bottom: 50px;
	}
	.jp-ma-links .c-tab__contents .g-button-container__item {
		margin: 0 auto 10px;
	}
	.jp-ma-links .c-button--l .c-button__inner > span {
		font-size: 1.6rem;
	}
}
@media (min-width: 821px), print {
	.jp-ma-links {
		padding: 60px 70px;
	}
	.jp-ma-links::before {
		border-radius: 40px;
	}
	.jp-ma-links .c-text {
		font-size: 1.8rem;
	}
	.jp-ma-links .g-grid.g-grid--4up .c-imagelink__inner .c-imagelink__image.image_s > img {
		max-width: 80px;
	}
	.jp-ma-links .g-grid.g-grid--4up .c-imagelink__inner .c-imagelink__title {
		font-size: 1.6rem;
	}
	.jp-ma-links .g-button-container .g-button-container__item.c-button:only-child {
		max-width: 512px;
	}
	.jp-ma-links .g-button-container .g-button-container__item a:hover span {
		text-decoration: underline;
	}
	.jp-ma-links .c-imagelink .c-imagelink__inner {
		padding: 10px 20px 30px !important;
	}
	.jp-ma-links .c-imagelink .c-imagelink__image {
		position: relative;
		width: 100%;
		height: 88px;
		margin-bottom: 5px;
	}
	.jp-ma-links .c-imagelink .c-imagelink__image > img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.jp-ma-links .c-imagelink .c-imagelink__image.image_s {
		padding-bottom: 46%;
	}
	.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item {
		overflow: visible;
	}
	.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link::after {
		transition: all 0.2s;
	}
	.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link:hover {
		background-color: transparent;
	}
	.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link:hover > span {
		color: var(--color-txt);
	}
	.jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link:hover::after {
		border-color: #fff;
		background-color: #fff;
		transform: translate(-50%, -50%) scale(1.04);
	}
}

@media (max-width: 820px) {
	.l-section.jp-links_wrp {
		padding-right: 0;
		padding-left: 0;
	}
	.l-section.jp-links_wrp .modal-box__close {
		display: none;
	}
	.l-section.jp-links_wrp .jp-ma-links {
		padding: 40px 20px 35px;
	}
	.l-section.jp-links_wrp .jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link {
		height: 27px !important;
		min-height: 27px !important;
		border-radius: 27px !important;
	}
	.l-section.jp-links_wrp .jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link > span {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 374px) {
	.l-section.jp-links_wrp .jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link > span {
		font-size: 1.2rem;
	}
}
@media (min-width: 821px), print {
	.l-section.jp-links_wrp .modal-box__close {
		display: none;
	}
}
.modal-box {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	padding: 40px 0;
	background-color: rgba(255, 255, 255, 0.69);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.2s linear, visibility 0.2s;
	z-index: 150;
}
.modal-box.is-show {
	opacity: 1;
	visibility: visible;
}
.modal-box .modal-box__closelayer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
}
.modal-box .modal-box__inner {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	z-index: 1;
}
.modal-box .modal-box__close {
	position: absolute;
	top: -30px;
	right: 10px;
	display: block;
	width: 36px;
	height: 36px;
	border-radius: 36px;
	border: 1px solid #fff;
	background-color: transparent !important;
	cursor: pointer;
	z-index: 3;
}
.modal-box .modal-box__close > span svg {
	width: 12px;
	height: 12px;
	fill: #fff;
}
.modal-box .modal-box__content {
	display: none;
	width: 100%;
	height: 0;
	overflow-y: scroll;
	pointer-events: none;
}
.modal-box .modal-box__content.is-show {
	display: block;
	height: auto;
	max-height: 90vh;
	pointer-events: all;
}
@media (max-width: 820px) {
	.modal-box {
		padding: 0;
		background-color: transparent !important;
		pointer-events: none;
	}
	.modal-box .modal-box__inner > .modal-box__close {
		display: none;
	}
	.modal-box .modal-box__content.is-show {
		height: 100dvh;
		max-height: 100dvh;
		overflow-y: auto;
	}
	.modal-box .jp-ma-links {
		height: 100dvh;
		padding: 0;
	}
	.modal-box .jp-ma-links::before {
		height: 100dvh;
		border-radius: 0;
	}
	.modal-box .jp-ma-links .c-tab {
		overflow-y: scroll;
		scrollbar-color: #666 transparent;
		scrollbar-width: thin;
		height: 100%;
		padding: 63px 20px 40px;
	}
	.modal-box .jp-ma-links .c-tab > .modal-box__close {
		top: 15px;
		right: 12px;
		background-color: #fff;
		mask-size: 12px auto;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__tab {
		gap: 10px 5px !important;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item {
		flex: 1;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link {
		height: 27px !important;
		min-height: 27px !important;
		border-radius: 27px !important;
		padding: 6px 2px 5px;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__tab .c-tab__tab-item .c-tab__tab-link > span {
		font-size: 1.3rem;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__contents {
		padding-bottom: 40px;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__contents::-webkit-scrollbar-color {
		background-color: #666 transparent;
	}
	.modal-box .jp-ma-links .c-tab .c-tab__contents::-webkit-scrollbar-thumb {
		background-color: skyblue;
	}
}
@media (min-width: 821px), print {
	.modal-box {
		padding: 0;
		overflow-y: scroll;
	}
	.modal-box .modal-box__close {
		top: -60px;
		right: -43px;
		width: 60px;
		height: 60px;
		border-radius: 60px;
		background-color: var(--color-seco) !important;
	}
	.modal-box .modal-box__close > span svg {
		width: 16px;
		height: 16px;
	}
	.modal-box .modal-box__inner {
		height: 100%;
	}
	.modal-box .modal-box__inner .modal-box__contents {
		height: 100%;
	}
	.modal-box .modal-box__inner .modal-box__contents .modal-box__content {
		padding: 90px 0 40px;
	}
	.modal-box .modal-box__inner .modal-box__contents .modal-box__content.is-show {
		height: auto;
		max-height: none;
		overflow-y: visible;
	}
	.modal-box .modal-box__inner .jp-ma-links {
		overflow: visible;
	}
}

.p-tb_switch_hv {
	border-bottom: 1px solid var(--color-border);
	background-color: #fff;
}
.p-tb_switch_hv dt {
	padding: 8px 15px;
	background-color: #666;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 500;
}
.p-tb_switch_hv dd {
	padding: 20px 10px;
	font-size: 1.5rem;
}
.p-tb_switch_hv dd ul > li + li {
	margin-top: 5px !important;
}
@media (min-width: 821px), print {
	.p-tb_switch_hv {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}
	.p-tb_switch_hv + .p-tb_switch_hv {
		margin-top: -1px;
	}
	.p-tb_switch_hv dt {
		width: 30%;
		padding: 15px 20px;
		border-top: 1px solid var(--color-border);
	}
	.p-tb_switch_hv dd {
		width: 70%;
		padding: 18px 20px 20px;
		border-top: 1px solid var(--color-border);
		font-size: 1.6rem;
	}
	.p-tb_switch_hv dd .c-text {
		font-size: 1.6rem !important;
	}
}

.related-links-area .c-button--textlink:first-child {
	border-top: 1px solid var(--color-border);
}
.related-links-area .c-button--textlink:first-child {
	border-top: 1px solid var(--color-border);
}
@media (max-width: 820px) {
	.related-links-area .c-button .c-button__inner .c-textlink_text {
		width: 100%;
	}
	.related-links-area .c-button .c-button__inner .c-textlink_text > span {
		padding-right: 0;
	}
}

/*----------
	search modal
----------*/
.l-search-modal {
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 100vw;
	z-index: -1;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	background-color: rgba(var(--color-bg-rgb), 0.7);
	pointer-events: none;
	transition: all 0s linear 0.2s, opacity 0.2s linear 0s;
}
.l-search-modal.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	left: 0;
	z-index: 150;
	transition: all 0s linear 0s, opacity 0.2s linear 0.1s;
}
.l-search-modal__close {
	position: absolute;
	top: 20px;
	right: 20px;
	overflow: hidden;
}
.l-search-modal__close > button {
	display: block;
	width: 30px;
	height: 30px;
	cursor: pointer;
	background: var(--icon-close) no-repeat center/contain;
}
.l-search-modal__inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 821px), print {
	.l-search-modal__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.l-search-modal__form {
	width: 100%;
}
@media (min-width: 821px), print {
	.l-search-modal__close > button {
		width: 60px;
		height: 60px;
	}
}

/*----------
	margin
----------*/
/* 汎用マージン */
.u-mt-10 {
	margin-top: 10px !important;
}

.u-mt-xs {
	margin-top: 15px !important;
}
@media (min-width: 821px), print {
	.u-mt-xs {
		margin-top: 20px !important;
	}
}

.u-mt-s {
	margin-top: 20px !important;
}
@media (min-width: 821px), print {
	.u-mt-s {
		margin-top: 30px !important;
	}
}

.u-mt-m {
	margin-top: 30px !important;
}
@media (min-width: 821px), print {
	.u-mt-m {
		margin-top: 50px !important;
	}
}

.u-mt-l {
	margin-top: 50px !important;
}
@media (min-width: 821px), print {
	.u-mt-l {
		margin-top: 80px !important;
	}
}

.u-mt-xl {
	margin-top: 70px !important;
}
@media (min-width: 821px), print {
	.u-mt-xl {
		margin-top: 120px !important;
	}
}

.u-mt-none {
	margin-top: 0 !important;
}
@media (min-width: 821px), print {
	.u-mt-none {
		margin-top: 0 !important;
	}
}

@media (min-width: 821px), print {
	.u-mt-pc_none {
		margin-top: 0 !important;
	}
}

/*----------
	display
----------*/
@media (max-width: 820px) {
	.u-pc-v {
		display: none;
	}
}

@media (min-width: 821px), print {
	.u-sp-v {
		display: none;
	}
}

@media (max-width: 1024px) {
	.u-pchf-v {
		display: none;
	}
}

@media (min-width: 1025px), print {
	.u-sphf-v {
		display: none;
	}
}

/*----------
	text
----------*/
@media (max-width: 820px) {
	br.u-pcbr {
		display: none;
	}
}

@media (min-width: 821px), print {
	br.u-spbr {
		display: none;
	}
}

.u-txt-center {
	text-align: center !important;
}

@media (min-width: 821px), print {
	.u-txt-pccenter {
		text-align: center !important;
	}
}

.u-txt-right {
	text-align: right !important;
}

.u-txt-left {
	text-align: left !important;
}

.u-txt-normal {
	font-weight: normal !important;
}

.u-txt-medium {
	font-weight: 500 !important;
}

.u-txt-bold {
	font-weight: bold !important;
}

.u-txt-strike {
	text-decoration: line-through !important;
}

.u-txt-underline {
	color: var(--color-red);
	text-decoration: none !important;
	text-underline-offset: 2px;
}

.u-text-indent {
	text-indent: -3em;
	padding-left: 3em;
}

.u-text-indent_s {
	text-indent: -1em;
	padding-left: 1em;
}

.u-txt-marker {
	font-weight: 500;
	background-image: linear-gradient(transparent 80%, #FFF7A6 80%);
}

.u-txt-prim {
	color: var(--color-prim) !important;
}

.u-txt-seco {
	color: var(--color-seco) !important;
}

.u-txt-default {
	color: var(--color-txt) !important;
}

.u-txt-white {
	color: #fff !important;
}

.u-txt-red {
	color: var(--color-red) !important;
}
.u-txt-red a {
	color: var(--color-red) !important;
}

.u-txt-nowrap {
	display: inline-block;
	white-space: nowrap;
}

.u-txt-caution {
	color: var(--color-caution) !important;
}

/* 文中リンク */
.u-txt-link {
	text-decoration: underline;
	color: var(--color-txt-link);
}
@media (min-width: 821px), print {
	.u-txt-link {
		transition: color 0.2s;
	}
	.u-txt-link:hover {
		color: var(--color-txt-hover);
	}
}

/* 文字サイズ */
.u-fz-10 {
	font-size: 1rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-10 {
		font-size: 1rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-10 {
		font-size: 1rem !important;
	}
}
.u-fz-11 {
	font-size: 1.1rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-11 {
		font-size: 1.1rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-11 {
		font-size: 1.1rem !important;
	}
}
.u-fz-12 {
	font-size: 1.2rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-12 {
		font-size: 1.2rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-12 {
		font-size: 1.2rem !important;
	}
}
.u-fz-13 {
	font-size: 1.3rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-13 {
		font-size: 1.3rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-13 {
		font-size: 1.3rem !important;
	}
}
.u-fz-14 {
	font-size: 1.4rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-14 {
		font-size: 1.4rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-14 {
		font-size: 1.4rem !important;
	}
}
.u-fz-15 {
	font-size: 1.5rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-15 {
		font-size: 1.5rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-15 {
		font-size: 1.5rem !important;
	}
}
.u-fz-16 {
	font-size: 1.6rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-16 {
		font-size: 1.6rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-16 {
		font-size: 1.6rem !important;
	}
}
.u-fz-17 {
	font-size: 1.7rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-17 {
		font-size: 1.7rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-17 {
		font-size: 1.7rem !important;
	}
}
.u-fz-18 {
	font-size: 1.8rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-18 {
		font-size: 1.8rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-18 {
		font-size: 1.8rem !important;
	}
}
.u-fz-19 {
	font-size: 1.9rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-19 {
		font-size: 1.9rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-19 {
		font-size: 1.9rem !important;
	}
}
.u-fz-20 {
	font-size: 2rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-20 {
		font-size: 2rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-20 {
		font-size: 2rem !important;
	}
}
.u-fz-21 {
	font-size: 2.1rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-21 {
		font-size: 2.1rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-21 {
		font-size: 2.1rem !important;
	}
}
.u-fz-22 {
	font-size: 2.2rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-22 {
		font-size: 2.2rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-22 {
		font-size: 2.2rem !important;
	}
}
.u-fz-23 {
	font-size: 2.3rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-23 {
		font-size: 2.3rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-23 {
		font-size: 2.3rem !important;
	}
}
.u-fz-24 {
	font-size: 2.4rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-24 {
		font-size: 2.4rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-24 {
		font-size: 2.4rem !important;
	}
}
.u-fz-25 {
	font-size: 2.5rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-25 {
		font-size: 2.5rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-25 {
		font-size: 2.5rem !important;
	}
}
.u-fz-26 {
	font-size: 2.6rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-26 {
		font-size: 2.6rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-26 {
		font-size: 2.6rem !important;
	}
}
.u-fz-27 {
	font-size: 2.7rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-27 {
		font-size: 2.7rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-27 {
		font-size: 2.7rem !important;
	}
}
.u-fz-28 {
	font-size: 2.8rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-28 {
		font-size: 2.8rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-28 {
		font-size: 2.8rem !important;
	}
}
.u-fz-29 {
	font-size: 2.9rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-29 {
		font-size: 2.9rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-29 {
		font-size: 2.9rem !important;
	}
}
.u-fz-30 {
	font-size: 3rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-30 {
		font-size: 3rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-30 {
		font-size: 3rem !important;
	}
}
.u-fz-31 {
	font-size: 3.1rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-31 {
		font-size: 3.1rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-31 {
		font-size: 3.1rem !important;
	}
}
.u-fz-32 {
	font-size: 3.2rem !important;
}

@media (min-width: 821px), print {
	.u-pc-fz-32 {
		font-size: 3.2rem !important;
	}
}
@media (max-width: 820px) {
	.u-sp-fz-32 {
		font-size: 3.2rem !important;
	}
}
/* アイコン背景画像 */
.u-icon-access {
	background-image: var(--icon-access) !important;
}
.u-icon-alert {
	background-image: var(--icon-alert) !important;
}
.u-icon-blank {
	background-image: var(--icon-blank) !important;
}
.u-icon-bookmark {
	background-image: var(--icon-bookmark) !important;
}
.u-icon-calendar {
	background-image: var(--icon-calendar) !important;
}
.u-icon-cart {
	background-image: var(--icon-cart) !important;
}
.u-icon-check {
	background-image: var(--icon-check) !important;
}
.u-icon-check2 {
	background-image: var(--icon-check2) !important;
}
.u-icon-chev-cir-down {
	background-image: var(--icon-chev-cir-down) !important;
}
.u-icon-chev-cir-left {
	background-image: var(--icon-chev-cir-left) !important;
}
.u-icon-chev-cir-right {
	background-image: var(--icon-chev-cir-right) !important;
}
.u-icon-chev-cir-up {
	background-image: var(--icon-chev-cir-up) !important;
}
.u-icon-chev-down {
	background-image: var(--icon-chev-down) !important;
}
.u-icon-chev-left {
	background-image: var(--icon-chev-left) !important;
}
.u-icon-chev-right {
	background-image: var(--icon-chev-right) !important;
}
.u-icon-chev-up {
	background-image: var(--icon-chev-up) !important;
}
.u-icon-circle-border {
	background-image: var(--icon-circle-border) !important;
}
.u-icon-circle {
	background-image: var(--icon-circle) !important;
}
.u-icon-close {
	background-image: var(--icon-close) !important;
}
.u-icon-doc {
	background-image: var(--icon-doc) !important;
}
.u-icon-download {
	background-image: var(--icon-download) !important;
}
.u-icon-excel {
	background-image: var(--icon-excel) !important;
}
.u-icon-exclamation {
	background-image: var(--icon-exclamation) !important;
}
.u-icon-first {
	background-image: var(--icon-first) !important;
}
.u-icon-global {
	background-image: var(--icon-global) !important;
}
.u-icon-humberger {
	background-image: var(--icon-humberger) !important;
}
.u-icon-last {
	background-image: var(--icon-last) !important;
}
.u-icon-locked {
	background-image: var(--icon-locked) !important;
}
.u-icon-mail {
	background-image: var(--icon-mail) !important;
}
.u-icon-minus {
	background-image: var(--icon-minus) !important;
}
.u-icon-new {
	background-image: var(--icon-new) !important;
}
.u-icon-pdf {
	background-image: var(--icon-pdf) !important;
}
.u-icon-phone {
	background-image: var(--icon-phone) !important;
}
.u-icon-pinch-in {
	background-image: var(--icon-pinch-in) !important;
}
.u-icon-pinch-out {
	background-image: var(--icon-pinch-out) !important;
}
.u-icon-play {
	background-image: var(--icon-play) !important;
}
.u-icon-plus {
	background-image: var(--icon-plus) !important;
}
.u-icon-powerpoint {
	background-image: var(--icon-powerpoint) !important;
}
.u-icon-print {
	background-image: var(--icon-print) !important;
}
.u-icon-question {
	background-image: var(--icon-question) !important;
}
.u-icon-rss {
	background-image: var(--icon-rss) !important;
}
.u-icon-search {
	background-image: var(--icon-search) !important;
}
.u-icon-stop {
	background-image: var(--icon-stop) !important;
}
.u-icon-swipe {
	background-image: var(--icon-swipe) !important;
}
.u-icon-to-top {
	background-image: var(--icon-to-top) !important;
}
.u-icon-unlocked {
	background-image: var(--icon-unlocked) !important;
}
.u-icon-url {
	background-image: var(--icon-url) !important;
}
.u-icon-word {
	background-image: var(--icon-word) !important;
}
.u-icon-zip {
	background-image: var(--icon-zip) !important;
}

.u-icon-mask-access {
	-webkit-mask-image: var(--icon-access) !important;
	mask-image: var(--icon-access) !important;
}
.u-icon-mask-alert {
	-webkit-mask-image: var(--icon-alert) !important;
	mask-image: var(--icon-alert) !important;
}
.u-icon-mask-blank {
	-webkit-mask-image: var(--icon-blank) !important;
	mask-image: var(--icon-blank) !important;
}
.u-icon-mask-bookmark {
	-webkit-mask-image: var(--icon-bookmark) !important;
	mask-image: var(--icon-bookmark) !important;
}
.u-icon-mask-calendar {
	-webkit-mask-image: var(--icon-calendar) !important;
	mask-image: var(--icon-calendar) !important;
}
.u-icon-mask-cart {
	-webkit-mask-image: var(--icon-cart) !important;
	mask-image: var(--icon-cart) !important;
}
.u-icon-mask-check {
	-webkit-mask-image: var(--icon-check) !important;
	mask-image: var(--icon-check) !important;
}
.u-icon-mask-check2 {
	-webkit-mask-image: var(--icon-check2) !important;
	mask-image: var(--icon-check2) !important;
}
.u-icon-mask-chev-cir-down {
	-webkit-mask-image: var(--icon-chev-cir-down) !important;
	mask-image: var(--icon-chev-cir-down) !important;
}
.u-icon-mask-chev-cir-left {
	-webkit-mask-image: var(--icon-chev-cir-left) !important;
	mask-image: var(--icon-chev-cir-left) !important;
}
.u-icon-mask-chev-cir-right {
	-webkit-mask-image: var(--icon-chev-cir-right) !important;
	mask-image: var(--icon-chev-cir-right) !important;
}
.u-icon-mask-chev-cir-up {
	-webkit-mask-image: var(--icon-chev-cir-up) !important;
	mask-image: var(--icon-chev-cir-up) !important;
}
.u-icon-mask-chev-down {
	-webkit-mask-image: var(--icon-chev-down) !important;
	mask-image: var(--icon-chev-down) !important;
}
.u-icon-mask-chev-left {
	-webkit-mask-image: var(--icon-chev-left) !important;
	mask-image: var(--icon-chev-left) !important;
}
.u-icon-mask-chev-right {
	-webkit-mask-image: var(--icon-chev-right) !important;
	mask-image: var(--icon-chev-right) !important;
}
.u-icon-mask-chev-up {
	-webkit-mask-image: var(--icon-chev-up) !important;
	mask-image: var(--icon-chev-up) !important;
}
.u-icon-mask-circle-border {
	-webkit-mask-image: var(--icon-circle-border) !important;
	mask-image: var(--icon-circle-border) !important;
}
.u-icon-mask-circle {
	-webkit-mask-image: var(--icon-circle) !important;
	mask-image: var(--icon-circle) !important;
}
.u-icon-mask-close {
	-webkit-mask-image: var(--icon-close) !important;
	mask-image: var(--icon-close) !important;
}
.u-icon-mask-doc {
	-webkit-mask-image: var(--icon-doc) !important;
	mask-image: var(--icon-doc) !important;
}
.u-icon-mask-download {
	-webkit-mask-image: var(--icon-download) !important;
	mask-image: var(--icon-download) !important;
}
.u-icon-mask-excel {
	-webkit-mask-image: var(--icon-excel) !important;
	mask-image: var(--icon-excel) !important;
}
.u-icon-mask-exclamation {
	-webkit-mask-image: var(--icon-exclamation) !important;
	mask-image: var(--icon-exclamation) !important;
}
.u-icon-mask-first {
	-webkit-mask-image: var(--icon-first) !important;
	mask-image: var(--icon-first) !important;
}
.u-icon-mask-global {
	-webkit-mask-image: var(--icon-global) !important;
	mask-image: var(--icon-global) !important;
}
.u-icon-mask-humberger {
	-webkit-mask-image: var(--icon-humberger) !important;
	mask-image: var(--icon-humberger) !important;
}
.u-icon-mask-last {
	-webkit-mask-image: var(--icon-last) !important;
	mask-image: var(--icon-last) !important;
}
.u-icon-mask-locked {
	-webkit-mask-image: var(--icon-locked) !important;
	mask-image: var(--icon-locked) !important;
}
.u-icon-mask-mail {
	-webkit-mask-image: var(--icon-mail) !important;
	mask-image: var(--icon-mail) !important;
}
.u-icon-mask-minus {
	-webkit-mask-image: var(--icon-minus) !important;
	mask-image: var(--icon-minus) !important;
}
.u-icon-mask-new {
	-webkit-mask-image: var(--icon-new) !important;
	mask-image: var(--icon-new) !important;
}
.u-icon-mask-pdf {
	-webkit-mask-image: var(--icon-pdf) !important;
	mask-image: var(--icon-pdf) !important;
}
.u-icon-mask-phone {
	-webkit-mask-image: var(--icon-phone) !important;
	mask-image: var(--icon-phone) !important;
}
.u-icon-mask-pinch-in {
	-webkit-mask-image: var(--icon-pinch-in) !important;
	mask-image: var(--icon-pinch-in) !important;
}
.u-icon-mask-pinch-out {
	-webkit-mask-image: var(--icon-pinch-out) !important;
	mask-image: var(--icon-pinch-out) !important;
}
.u-icon-mask-play {
	-webkit-mask-image: var(--icon-play) !important;
	mask-image: var(--icon-play) !important;
}
.u-icon-mask-plus {
	-webkit-mask-image: var(--icon-plus) !important;
	mask-image: var(--icon-plus) !important;
}
.u-icon-mask-powerpoint {
	-webkit-mask-image: var(--icon-powerpoint) !important;
	mask-image: var(--icon-powerpoint) !important;
}
.u-icon-mask-print {
	-webkit-mask-image: var(--icon-print) !important;
	mask-image: var(--icon-print) !important;
}
.u-icon-mask-question {
	-webkit-mask-image: var(--icon-question) !important;
	mask-image: var(--icon-question) !important;
}
.u-icon-mask-rss {
	-webkit-mask-image: var(--icon-rss) !important;
	mask-image: var(--icon-rss) !important;
}
.u-icon-mask-search {
	-webkit-mask-image: var(--icon-search) !important;
	mask-image: var(--icon-search) !important;
}
.u-icon-mask-stop {
	-webkit-mask-image: var(--icon-stop) !important;
	mask-image: var(--icon-stop) !important;
}
.u-icon-mask-swipe {
	-webkit-mask-image: var(--icon-swipe) !important;
	mask-image: var(--icon-swipe) !important;
}
.u-icon-mask-to-top {
	-webkit-mask-image: var(--icon-to-top) !important;
	mask-image: var(--icon-to-top) !important;
}
.u-icon-mask-unlocked {
	-webkit-mask-image: var(--icon-unlocked) !important;
	mask-image: var(--icon-unlocked) !important;
}
.u-icon-mask-url {
	-webkit-mask-image: var(--icon-url) !important;
	mask-image: var(--icon-url) !important;
}
.u-icon-mask-word {
	-webkit-mask-image: var(--icon-word) !important;
	mask-image: var(--icon-word) !important;
}
.u-icon-mask-zip {
	-webkit-mask-image: var(--icon-zip) !important;
	mask-image: var(--icon-zip) !important;
}

/* ---------- オートチャージ */
.c-box.cts-firsttime_users::before, .c-box.cts-existing_users::before {
	content: "";
	position: absolute;
	left: 50%;
	display: block;
	background-size: 100% auto;
	transform: translateX(-50%);
}
.c-box.cts-firsttime_users > h3, .c-box.cts-existing_users > h3 {
	margin-bottom: 20px;
	font-size: 2rem;
	font-weight: 500;
	text-align: center;
}
.c-box.cts-firsttime_users > h3 .subtxt, .c-box.cts-existing_users > h3 .subtxt {
	font-size: 1.4rem;
}
.c-box.cts-firsttime_users .g-button-container, .c-box.cts-existing_users .g-button-container {
	display: block !important;
	gap: 0;
}
.c-box.cts-firsttime_users .g-button-container .g-button-container__item + .g-button-container__item, .c-box.cts-existing_users .g-button-container .g-button-container__item + .g-button-container__item {
	margin-top: 20px;
}
.c-box.cts-firsttime_users {
	overflow: visible;
	position: relative;
	padding-top: 45px;
}
.c-box.cts-firsttime_users::before {
	top: -30px;
	width: 60px;
	height: 60px;
	background-image: url(/assets/images/common/icon/ico_robot-beginner.webp);
}
.c-box.cts-existing_users {
	overflow: visible;
	position: relative;
	padding-top: 45px;
}
.c-box.cts-existing_users::before {
	top: -30px;
	left: 50%;
	width: 60px;
	height: 60px;
	background-image: url(/assets/images/common/icon/ico_robot-card02.webp);
}
.c-box.cts-trouble_dtls {
	overflow: visible;
}
.c-box.cts-trouble_dtls .g-button-container .g-button-container__item {
	max-width: 373px;
}
@media (max-width: 820px) {
	.c-box + .c-box {
		margin-top: 60px;
	}
	.c-box.cts-firsttime_users + .c-box.cts-existing_users {
		margin-top: 35px !important;
	}
}
@media (min-width: 821px), print {
	.c-box.cts-firsttime_users, .c-box.cts-existing_users {
		padding-top: 55px;
	}
	.c-box.cts-firsttime_users::before, .c-box.cts-existing_users::before {
		top: -50px;
		width: 80px;
		height: 80px;
	}
	.c-box.cts-firsttime_users > h2, .c-box.cts-existing_users > h2 {
		font-size: 2.8rem;
	}
	.c-box.cts-firsttime_users > h2 .subtxt, .c-box.cts-existing_users > h2 .subtxt {
		font-size: 1.6rem;
	}
}

.g-grid:has(.cts-firsttime_users) {
	padding-top: 40px;
}

/* お困りの方 */
.cts-trouble_dtls {
	overflow: visible;
	position: relative;
	padding-top: 45px;
}
.cts-trouble_dtls::before {
	content: "";
	position: absolute;
	top: -30px;
	left: 50%;
	display: block;
	width: 60px;
	height: 60px;
	background-image: url(/assets/images/common/icon/ico_robot-trouble.webp);
	background-size: 100% auto;
	transform: translateX(-50%);
}
@media (min-width: 821px), print {
	.cts-trouble_dtls {
		padding-top: 55px;
	}
	.cts-trouble_dtls::before {
		top: -40px;
		width: 80px;
		height: 80px;
	}
}

@media (min-width: 821px), print {
	.p-yourpasmo .c-imageset__title {
		font-size: 2rem;
	}
}

/* エラーページ */
.p-page-err .l-content {
	padding-bottom: 0;
}

.page-err .c-figure {
	position: relative;
	z-index: 3;
}
.page-err .c-figure .c-figure__image {
	width: 100%;
	max-width: 62px;
	margin-inline: auto;
}
.page-err .area-errtxt {
	position: relative;
	margin-top: -30px;
	padding-block: 60px 80px;
	z-index: 2;
}
.page-err .area-errtxt::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background-color: var(--color-bg);
	z-index: -1;
	transform: translateX(-50%);
}
@media (min-width: 821px), print {
	.page-err .c-figure .c-figure__image {
		max-width: 110px;
	}
	.page-err .area-errtxt {
		margin-top: -60px;
		padding-block: 110px 150px;
	}
}
/*# sourceMappingURL=common.css.map */
