:root {
	--font-size-base: 1.4rem;
	--font-weight-base: 500;
	--font-family-base: 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, メイリオ, Meiryo, ＭＳ Ｐゴシック, MS PGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro;
	--color-black: #000;
	--color-white: #fff;
	--color-primary: #005CB9;
	--color-secondary: #E27501;
	--lineheight-base: 1.2;
	--input-border-color: #e6e6e6;
	--input-border-width: 0.1rem;
	--input-font-size: 14px;
	--input-font-weight: 500;
	--input-background: #fff;
}

* {
	box-sizing: border-box;
}

html {
	font-size: 10px;
	overflow-x: hidden;
}

html.noscroll {
	position: fixed;
	left: 0;
	right: 0;
	width: 100%;
	overflow-y: scroll;
	overflow-x: hidden;
}

body {
	background-color: #fff;
	color: #000;
	margin: 0;
	font-size: var(--font-size-base);
	font-family: var(--font-family-base);
	font-weight: var(--font-weight-base);
	font-feature-settings: "palt" 1, "pkna" 1, "pwid" 1, "pkna" 1;
	line-height: var(--lineheight-base);
	text-align: left;
	position: relative;
	overflow-x: hidden;
	padding-top: 10rem;
}

body.backtop-visible .p-fixed {
	bottom: 16rem;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
	margin: 0;
}

ol,
ul,
dl {
	list-style-type: none;
	margin: 0;
	padding-left: 0;
}

b,
strong {
	font-weight: 700;
}

a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}

img {
	vertical-align: middle;
	border-style: none;
	max-width: 100%;
	height: auto;
}

table {
	border-collapse: collapse;
}

th {
	font-weight: 500;
	text-align: inherit;
	text-align: -webkit-match-parent;
}

input,
button,
select,
optgroup,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

select {
	word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
	-webkit-appearance: button;
}

textarea {
	overflow: auto;
	resize: vertical;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

[type=search] {
	outline-offset: -2px;
	-webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

[hidden] {
	display: none !important;
}

.aligncenter {
	text-align: center;
}

.alignright {
	text-align: right;
}

.alignleft {
	text-align: left;
}

img.aligncenter {
	display: block;
	margin: auto;
}

img.alignright {
	display: block;
	margin-left: auto;
}

img.alignleft {
	display: block;
	margin-right: auto;
}

.container {
	margin: auto;
	padding-left: 3.6rem;
	padding-right: 3.6rem;
	width: 100%;
}

.d-none {
	display: none !important;
}

.d-block {
	display: block !important;
}

.d-flex {
	display: flex !important;
}

.text-justify {
	text-align: justify !important;
}

.text-wrap {
	white-space: normal !important;
}

.text-nowrap {
	white-space: nowrap !important;
}

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

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

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

.text-lowercase {
	text-transform: lowercase !important;
}

.text-uppercase {
	text-transform: uppercase !important;
}

.text-capitalize {
	text-transform: capitalize !important;
}

.text-underline {
	text-decoration: underline;
}

.btn {
	display: inline-block;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	font-weight: 400;
	color: #000;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	background-color: transparent;
	border: 1px solid transparent;
}

.btn:focus,
.btn.focus {
	outline: 0;
}

.btn.disabled,
.btn:disabled {
	opacity: 0.6;
}

.btn:not(:disabled):not(.disabled) {
	cursor: pointer;
}

.p-header {
	background-color: var(--color-white);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding-top: 1rem;
	z-index: 99;
}

.p-header__text {
	color: var(--color-primary);
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.p-header__logo {
	width: 3.9756944444vw;
	position: absolute;
	top: -1.0416666667vw;
	left: 3.5rem;
	z-index: 1;
}

.p-header__ic {
	width: 3.71875vw;
	position: absolute;
	top: -1.5277777778vw;
	right: 3.5rem;
}

.p-header__hamburger {
	position: absolute;
	top: 0;
	right: 0;
}

.p-header__sns {
	background-color: #3E3E3E;
	display: flex;
	align-items: center;
	gap: 1.9rem;
	padding: 4.5rem 3.6rem;
}

.p-header__sns li {
	flex: 1;
}

.p-header__sns li img {
	width: 100%;
}

.p-header.openMenu .p-header__wrap {
	display: block;
	background-color: #FFF;
	position: absolute;
	top: 12.2rem;
	width: 100%;
	height: calc(100vh - 12.2rem);
	z-index: 99;
	overflow-y: auto;
}

.gl-nav__link {
	color: var(--color-white);
	font-weight: bold;
	display: flex;
	align-items: center;
	flex-direction: row;
	letter-spacing: 0.199em;
}

.gl-nav__link .en {
	font-size: 3rem;
}

.gl-nav__link .jp {
	font-size: 2rem;
	white-space: nowrap;
}

.hamburger-box {
	background-color: #005CB9;
	position: relative;
	display: flex;
	gap: 2.8rem;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	width: 10.9rem;
	height: 12.2rem;
	z-index: 1100;
	padding-top: 1.5rem;
}

.hamburger-box.is-active {
	width: 9.7rem;
	padding-top: 0rem;
}

.hamburger-box.is-active .hamburger-inner {
	width: 4.842rem;
	height: 0.3rem;
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	transform: rotate(45deg);
}

.hamburger-box.is-active .hamburger-inner:before {
	width: 4.842rem;
	height: 0.3rem;
	transition: top 75ms ease, opacity 75ms ease 0.12s;
	opacity: 0;
	top: 0;
}

.hamburger-box.is-active .hamburger-inner:after {
	width: 4.842rem;
	height: 0.3rem;
	transition: bottom 75ms ease, transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
	transform: rotate(-90deg);
	bottom: 0;
}

.hamburger-box b {
	color: var(--color-white);
	font-size: 2.2rem;
}

.hamburger-inner:after,
.hamburger-inner:before {
	display: block;
	content: "";
}

.hamburger-inner:after,
.hamburger-inner:before,
.hamburger-inner {
	width: 7.5rem;
	height: 1rem;
	background-color: var(--color-white);
	transition: transform 0.15s ease;
	border-radius: 1.5px;
}

.hamburger-inner {
	position: relative;
	display: block;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition-duration: 75ms;
}

.hamburger-inner:before {
	position: absolute;
	top: -2rem;
	transition: top 75ms ease 0.12s, opacity 75ms ease;
}

.hamburger-inner:after {
	position: absolute;
	bottom: -2rem;
	transition: bottom 75ms ease 0.12s, transform 75ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.p-footer {
	background-color: #000;
	margin-top: 7.1rem;
	padding-block: 10.4rem 4.5rem;
	text-align: center;
}

.p-footer__logo {
	margin-bottom: 13.3rem;
}

.p-footer__logo img {
	width: 25.5rem;
}

.p-footer__nav {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1.9rem;
	margin-bottom: 2.4rem;
}

.p-footer__nav li {
	line-height: 1;
	position: relative;
}

.p-footer__nav li:not(:last-child) {
	padding-right: 1.9rem;
}

.p-footer__nav li:not(:last-child)::after {
	content: "";
	background-color: #fff;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	transform: scaleX(0.64);
	width: 1px;
}

.p-footer__nav a {
	color: #fff;
	font-size: 1.9rem;
	font-weight: 500;
}

.p-footer__copyright img {
	width: 39.7rem;
}

.form-control {
	background-color: var(--input-background);
	background-clip: padding-box;
	border: var(--input-border-width) solid var(--input-border-color);
	color: #000;
	display: block;
	font-family: var(--font-family-base);
	font-size: var(--input-font-size);
	font-weight: var(--input-font-weight);
	line-height: 1.5;
	padding: 0.5rem 1rem;
	width: 100%;
	height: 6rem;
}

.form-control::-ms-expand {
	background-color: transparent;
	border: 0;
}

.form-control:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #000;
}

.form-control::-moz-placeholder {
	color: #e6e6e6;
	opacity: 1;
}

.form-control::placeholder {
	color: #e6e6e6;
	opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
	background-color: #1E1E1E;
	opacity: 1;
}

input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.table {
	width: 100%;
	border-collapse: collapse;
}

.full-image {
	max-width: 100%;
	height: auto;
}

.nospace::before,
.nospace::after {
	content: "";
	display: block flow;
	inline-size: 0;
	block-size: 1px;
}

.nospace::before {
	margin-block-end: calc((1 - var(--lh, var(--lineheight-base))) * 0.5em);
}

.nospace::after {
	margin-block-start: calc((1 - var(--lh, var(--lineheight-base))) * 0.5em);
}

.hover {
	transition: opacity 0.3s ease;
}

.hover:hover {
	opacity: 0.7;
}

.p-mv {
	position: relative;
}

.p-mv__btn {
	max-width: 66.64rem;
	margin: 0 auto;
	position: absolute;
	right: 0;
	bottom: 8.3rem;
	left: 0;
	margin: 0 auto;
}

.p-mv__btn img {
	width: 100%;
	height: auto;
}

.p-benefit {
	background: url("../images/benefits_bg_sp.png") no-repeat top left/cover;
	padding-block: 3.2rem 6.8rem;
}

.p-benefit__wrap {
	max-width: 54.488rem;
	margin: 0 auto;
	position: relative;
	padding: 0 3.6rem;
}

.p-benefit__ttl {
	max-width: 50.394rem;
	margin: 0 auto;
}

.p-benefit__content {
	margin-top: 11rem;
	position: relative;
}

.p-benefit__ic {
	position: absolute;
}

.p-benefit__ic--01 {
	width: 19.105rem;
	height: 21.356rem;
	top: -17rem;
	left: 0;
}

.p-benefit__ic--02 {
	width: 21.657rem;
	height: 22.011rem;
	top: -18.7rem;
	right: 0;
}

.p-benefit__list {
	display: grid;
	gap: 3.3rem;
}

.p-benefit__list > div {
	background-color: var(--color-white);
	filter: drop-shadow(3px 3px 8px #000000);
	padding: 2.1rem 2.1rem 2.5rem;
	position: relative;
	z-index: 1;
}

.p-benefit__list > div h3 {
	background-color: var(--color-secondary);
	border-radius: 1rem;
	color: var(--color-white);
	font-size: 4.8rem;
	font-weight: bold;
	text-align: center;
	padding: 2.4rem 0.5rem 1.6rem;
	margin-bottom: 1rem;
}

.p-benefit__list > div p {
	font-size: 3.6rem;
	text-align: center;
	margin-top: 2rem;
}

.p-grade {
	background-color: var(--color-primary);
	padding-top: 3.2rem;
}

.p-grade__ttl {
	max-width: 39.015rem;
	margin: 0 auto;
}

.p-grade__content {
	margin-top: 2.3rem;
}

.p-grade .tab-head {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-inline: 3.6rem;
}

.p-grade .tab-head li {
	flex: 1;
	position: relative;
}

.p-grade .tab-head li::after {
	content: "";
	background-color: transparent;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: -100vw;
	right: -100vw;
	z-index: 1;
}

.p-grade .tab-head li:not(.active) a::before {
	pointer-events: none;
	content: "";
	background-color: rgba(255, 255, 255, 0.7);
	position: absolute;
	inset: 0;
}

.p-grade .tab-head li:nth-child(1) a {
	background-image: url("../images/bg_01.png");
}

.p-grade .tab-head li:nth-child(1).active::after {
	background-color: #C6B137;
}

.p-grade .tab-head li:nth-child(2) a {
	background-image: url("../images/bg_02.png");
}

.p-grade .tab-head li:nth-child(2).active::after {
	background-color: #E50012;
}

.p-grade .tab-head li:nth-child(3) a {
	background-image: url("../images/bg_03.png");
}

.p-grade .tab-head li:nth-child(3).active::after {
	background-color: #7FBE26;
}

.p-grade .tab-head li:nth-child(4) a {
	background-image: url("../images/bg_04.png");
}

.p-grade .tab-head li:nth-child(4).active::after {
	background-color: var(--color-primary);
}

.p-grade .tab-head li a {
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--color-white);
	font-size: 3rem;
	font-weight: bold;
	display: block;
	text-align: center;
	position: relative;
	z-index: 1;
	padding: 3.4rem 1rem;
}

.p-grade .tab-content {
	background-color: var(--color-white);
	padding: 5rem 3.6rem 0;
}

.p-grade .tab-box {
	display: none;
}

.p-grade__subT {
	background-color: var(--color-primary);
	color: var(--color-white);
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
	margin-block: 5rem 3.2rem;
	padding: 1.4rem 1rem 1rem;
}

.p-grade__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
}

.p-grade__list-item .media {
	aspect-ratio: 260/182;
	max-width: 26rem;
	margin: 0 auto;
}

.p-grade__list-item .media img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-grade__list-item p {
	font-size: 2.24rem;
	font-weight: bold;
	text-align: center;
}

.p-grade__list-item p small {
	font-size: 1.088rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: left;
	display: block;
}

.p-grade__list-item.--disable {
	position: relative;
}

.p-grade__list-item.--disable::before {
	content: "";
	background: rgba(51, 51, 51, 0.9);
	position: absolute;
	inset: 0;
}

.p-member {
	background-color: #003994;
	padding-top: 4.2rem;
	margin-top: 6rem;
}

.p-member__wrap {
	padding: 3.6rem;
}

.p-member__ttl {
	max-width: 63.668rem;
	margin: 0 auto;
	position: relative;
}

.p-member__ttl::after {
	content: "";
	background: url("../images/membership_ic.png") no-repeat center/contain;
	width: 13.954rem;
	height: 18.305rem;
	position: absolute;
	top: 35%;
	transform: translateY(-50%);
	right: -17.554rem;
}

.p-member__content {
	margin-top: 3.2rem;
	padding-bottom: 4.2rem;
	position: relative;
	isolation: isolate;
}

.p-member__list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 1.8rem;
}

.p-member__list li {
	background-color: var(--color-white);
}

.p-member__list li:nth-child(1) .ttl {
	background-image: url("../images/membership_bg01.png");
}

.p-member__list li:nth-child(2) .ttl {
	background-image: url("../images/membership_bg02.png");
}

.p-member__list li:nth-child(3) .ttl {
	background-image: url("../images/membership_bg03.png");
}

.p-member__list li:nth-child(4) .ttl {
	background-image: url("../images/membership_bg04.png");
}

.p-member__list li .ttl {
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--color-white);
	font-weight: bold;
	font-size: 4.5rem;
	text-align: center;
	padding: 1.4rem 1rem 1rem;
}

.p-member__list li .content {
	padding: 5.4rem 2rem 9rem;
	display: flex;
	gap: 2.2rem;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.p-member__list li .subT {
	font-size: 4.398rem;
	font-weight: bold;
	position: relative;
}

.p-member__list li .number {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 7.33rem;
	line-height: 1;
}

.p-member__list li .number span {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	font-weight: bold;
	font-size: 3.665rem;
}

.p-member__list li .number span .tax {
	display: inline-block;
	margin-left: 2rem;
}

.p-member__btn {
	max-width: 66.64rem;
	margin: 5.9rem auto 0;
	position: relative;
	z-index: 2;
}

.p-member__ic {
	position: absolute;
	bottom: 4.5rem;
}

.p-member__ic img {
	width: 100%;
}

.p-member__ic--01 {
	width: 18.297rem;
	height: 20.489rem;
	left: 0;
}

.p-member__ic--02 {
	width: 18.22rem;
	height: 20.154rem;
	right: 1.5rem;
}

.p-data {
	padding-block: 3.2rem;
}

.p-data__wrap {
	padding-inline: 3.6rem;
}

.p-data__ttl {
	max-width: 51.962rem;
	margin: 0 auto;
}

.p-data__table {
	margin-top: 5.6rem;
	position: relative;
}

.p-data__table thead tr th {
	border-top: 1px solid var(--color-white);
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--color-white);
	font-size: 1.883rem;
	font-weight: bold;
	text-align: center;
	padding: 3rem 0;
}

.p-data__table thead tr th:nth-child(1) {
	border-top: none;
}

.p-data__table thead tr th:nth-child(2) {
	background-image: url("../images/table_bg01.png");
}

.p-data__table thead tr th:nth-child(3) {
	border-left: 1px solid var(--color-white);
	background-image: url("../images/table_bg02.png");
}

.p-data__table thead tr th:nth-child(4) {
	border-left: 1px solid var(--color-white);
	background-image: url("../images/table_bg03.png");
}

.p-data__table thead tr th:nth-child(5) {
	border-left: 1px solid var(--color-white);
	background-image: url("../images/table_bg04.png");
}

.p-data__table tbody tr td {
	border: 1px solid #333333;
	font-size: 2.8rem;
	font-weight: bold;
	position: relative;
	width: 20%;
	text-align: center;
	padding: 1rem 1.1rem;
}

.p-data__table tbody tr td:nth-child(1) {
	border-bottom-color: var(--color-white);
	background-color: #333333;
	color: var(--color-white);
	padding-inline: 1rem 0.8rem;
	min-width: 24.728rem;
	height: 11.722rem;
	text-align: left;
}

.p-data__table tbody tr td:nth-child(1) span.small-1,
.p-data__table tbody tr td:nth-child(1) span.small-2,
.p-data__table tbody tr td:nth-child(1) span.small-3 {
	display: block;
	margin-top: 0.5rem;
}

.p-data__table tbody tr td:nth-child(1) span.small-1 {
	font-size: 1.378rem;
}

.p-data__table tbody tr td:nth-child(1) span.small-2 {
	font-size: 1.02rem;
}

.p-data__table tbody tr td:nth-child(1) span.small-3 {
	font-size: 1.1rem;
}

.p-data__table tbody tr td.txt-small {
	font-size: 2.208rem;
	line-height: 1.4;
}

.p-data__table tbody tr:last-child td:nth-child(1) {
	border-bottom-color: #333333;
}

.p-data__table .number {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 1.837rem;
}

.p-data__table .number--txt {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
}

.p-data__table .dot {
	font-size: 3rem;
	font-weight: bold;
}

.p-data__table .dot--yellow {
	color: #C6B137;
}

.p-data__table .dot--red {
	color: #E50012;
}

.p-data__table .dot--green {
	color: #7FBE26;
}

.p-data__table .dot--blue {
	color: #0068B7;
}

.p-data__table .line {
	background-color: #231815;
	width: 1.579rem;
	height: 0.16rem;
	display: inline-block;
}

.p-data__table .txt {
	font-size: 2.2rem;
}

.p-data__table .txt--small {
	font-size: 1.182rem;
}

.p-data__ic {
	position: absolute;
}

.p-data__ic img {
	width: 100%;
}

.p-data__ic--01 {
	width: 17.034rem;
	height: 20.087rem;
	top: -8.5rem;
	left: 0;
}

.p-data__ic--02 {
	width: 13.304rem;
	height: 12.424rem;
	top: -12.2rem;
	right: 1rem;
}

.p-service {
	padding: 3.6rem 3.6rem 7.5rem;
}

.p-service__wrap {
	max-width: 91.447rem;
	margin: 0 auto;
}

.p-service__ttl {
	text-align: center;
}

.p-service__ttl-box {
	display: inline-flex;
	flex-wrap: wrap;
	flex-direction: column;
	position: relative;
}

.p-service__ttl-note {
	background-color: var(--color-secondary);
	color: var(--color-white);
	font-size: 2.612rem;
	font-weight: bold;
	transform: rotate(-10deg);
	width: -moz-fit-content;
	width: fit-content;
	padding: 1.1rem 2.725rem;
}

.p-service__ttl-note span {
	color: #FFFF00;
}

.p-service__ttl-sub {
	font-weight: bold;
	font-size: 5.762rem;
}

.p-service__ttl-txt {
	color: var(--color-primary);
	font-size: 9.219rem;
	font-weight: bold;
}

.p-service__ttl-txt span {
	color: var(--color-black);
}

.p-service__list {
	margin-top: 2rem;
}

.p-service__list > li {
	display: flex;
	gap: 2rem;
	flex-direction: column;
	position: relative;
}

.p-service__list > li:not(:last-child) {
	margin-bottom: 6rem;
}

.p-service__list > li:nth-child(2)::after {
	content: "";
	background: url("../images/service_ic.png") no-repeat center/contain;
	width: 17.583rem;
	height: 14.057rem;
	position: absolute;
	top: 1rem;
	right: 0;
}

.p-service__list > li .ttl {
	background-color: var(--color-primary);
	color: var(--color-white);
	font-size: 4rem;
	font-weight: bold;
	padding: 1.6rem 4.9rem 1.4rem;
	position: relative;
}

.p-service__list > li .ttl::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 0;
	border-width: 3.426rem 3.426rem 0 0;
	border-style: solid;
	border-color: #2CA6E0 #005CB9 #005CB9 #005CB9;
}

.p-service__list > li ol li {
	display: flex;
	gap: 1rem;
	font-weight: bold;
	font-size: 3.1rem;
}

.p-service__list > li ol li:not(:last-child) {
	margin-bottom: 1rem;
}

.p-service__list > li ol li:not(.no-dot)::before {
	content: "・ ";
	flex-shrink: 0;
	color: var(--color-primary);
}

.p-service__list > li ol.pl li:not(.no-dot) {
	padding-left: 3rem;
}

.p-service__desc {
	display: flex;
	flex-direction: column-reverse;
	gap: 2.4rem;
	margin-top: 4rem;
}

.p-service__desc-text {
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.2001689189;
	text-align: justify;
}

.p-service__desc-table {
	flex-shrink: 0;
}

.p-service__desc-table table tr th,
.p-service__desc-table table tr td {
	border: 1px solid #888888;
}

.p-service__desc-table table thead th {
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--color-white);
	font-size: 1.952rem;
	font-weight: bold;
	text-align: center;
	padding: 1rem 0.5rem;
}

.p-service__desc-table table thead th:nth-child(1) {
	border: none;
}

.p-service__desc-table table thead th:nth-child(2) {
	background-image: url("../images/table_bg01.png");
}

.p-service__desc-table table thead th:nth-child(3) {
	border-left: 1px solid var(--color-white);
	background-image: url("../images/table_bg02.png");
}

.p-service__desc-table table thead th:nth-child(4) {
	border-left: 1px solid var(--color-white);
	background-image: url("../images/table_bg03.png");
}

.p-service__desc-table table tbody tr td {
	padding: 0.8rem 1.5rem;
	text-align: center;
}

.p-service__desc-table table tbody tr td:nth-child(1) {
	background-color: var(--color-primary);
	color: var(--color-white);
	font-weight: bold;
	font-size: 2.23rem;
	text-align: left;
}

.p-service__desc-table table tbody tr td p {
	font-weight: 500;
	font-family: "Oswald", sans-serif;
	font-size: 4.121rem;
}

.p-service__desc-table table tbody tr td p span {
	font-size: 3.297rem;
}

.p-service__desc-table table tbody tr td p small {
	font-size: 2.226rem;
	display: inline-block;
	margin-right: 1rem;
}

.p-service__prod {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	margin-top: 5rem;
}

.p-service__prod .item {
	flex: 0 0 calc(33.3333333333% - 4rem);
	max-width: calc(33.3333333333% - 4rem);
}

.p-service__prod .item .media {
	text-align: center;
	margin-bottom: 1rem;
	position: relative;
}

.p-service__prod .item .media span {
	font-size: 1.09rem;
	position: absolute;
	bottom: 0;
	right: -0.5rem;
}

.p-service__prod .item .name {
	font-size: 2.455rem;
	font-weight: bold;
	text-align: center;
}

.p-service__prod .item .prc {
	color: var(--color-secondary);
	font-size: 6.369rem;
	font-weight: 500;
	font-family: "Oswald", sans-serif;
	text-align: center;
}

.p-service__prod .item .prc span {
	font-size: 5.095rem;
}

.p-service__note {
	margin-top: 1.5rem;
}

.p-service__note p {
	display: flex;
	font-size: 1.55rem;
	margin-bottom: 1rem;
}

.p-ticket {
	background-color: #3FA9F5;
	padding-block: 4.2rem 5rem;
	position: relative;
	isolation: isolate;
}

.p-ticket::before {
	content: "";
	background: url("../images/ticket_bg.png") no-repeat top left/cover;
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: -1;
}

.p-ticket__wrap {
	padding-inline: 3.6rem;
}

.p-ticket__ttl {
	max-width: 31.102rem;
	margin: 0 auto;
}

.p-ticket__logo {
	max-width: 16.725rem;
	margin: 3rem auto 0;
}

.p-ticket__logo img {
	width: 100%;
}

.p-ticket__brand {
	max-width: 51.492rem;
	margin: 2.6rem auto 0;
}

.p-stadium {
	padding: 6.5rem 3.6rem 6.5rem;
}

.p-stadium__wrap {
	margin: 0 auto;
}

.p-stadium__item:not(:last-child) {
	margin-bottom: 9.5rem;
}

.p-stadium__ttl {
	max-width: 43.071rem;
}

.p-stadium__ttl--02 {
	max-width: 39.213rem;
}

.p-stadium__image {
	max-width: 50.464rem;
	margin: 3.3rem auto 0;
}

.p-stadium__image--02 {
	max-width: 54.751rem;
}

.p-stadium__table {
	margin-top: 5.2rem;
}

.p-stadium__table .table:not(:last-child) {
	margin-bottom: 5.6rem;
}

.p-stadium__table tr th,
.p-stadium__table tr td {
	border: 1px solid #BFBFBF;
	position: relative;
	text-align: center;
}

.p-stadium__table tr td.full {
	width: 2.974rem;
}

.p-stadium__table tr td.stt {
	font-size: 2.974rem;
	font-weight: bold;
}

.p-stadium__table tr td.txt {
	font-size: 2.442rem;
	font-weight: bold;
	text-align: left;
}

.p-stadium__table tr td.txt span {
	display: block;
	font-size: 2.25rem;
}

.p-stadium__table tr td.number {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 4.182rem;
}

.p-stadium__table tr td.number span {
	font-weight: 500;
	font-size: 2.204rem;
}

.p-stadium__table thead tr th {
	font-size: 2.441rem;
	font-weight: bold;
	padding: 0.4rem;
}

.p-stadium__table thead tr th.medium {
	font-size: 2.143rem;
}

.p-stadium__table thead tr th.small {
	font-size: 2.03rem;
}

.p-stadium__table tbody tr td:not(.full) {
	padding: 2rem 2rem 2.3rem;
}

.p-stadium__table .color {
	position: absolute;
	top: 0;
	inset: 0;
}

.p-stadium__table .color--red {
	background-color: #FF0000;
}

.p-stadium__table .color--blue {
	background-color: #0000CC;
}

.p-stadium__table .color--orange {
	background-color: #F7931E;
}

.p-stadium__table .color--green {
	background-color: #00A0E9;
}

.p-backtop {
	border-radius: 50%;
	cursor: pointer;
	width: 12rem;
	aspect-ratio: 1;
	position: fixed;
	right: 2.3rem;
	bottom: 2.8rem;
	z-index: 99;
	transform: translate3d(0, 100px, 0);
	transition: transform 0.4s cubic-bezier(0.55, 0, 0.1, 1) 0s;
}

.p-backtop.is-visible {
	transform: translate3d(0, 0, 0);
}

.p-fixed {
	cursor: pointer;
	width: 21.4rem;
	position: fixed;
	right: 1.5rem;
	z-index: 99;
	transition: bottom 0.3s ease;
}

.p-fixed.is-visible {
	transform: translate3d(0, 0, 0);
}

.p-division {
	margin-bottom: 6.4rem;
}

.p-division__inner {
	padding: 3.5rem 3.6rem 0;
}

.p-division__ttl {
	margin: 0 auto;
}

.p-division__content {
	margin-top: 2.5rem;
}

.p-division__content h3 {
	font-size: 3rem;
	font-weight: bold;
	text-align: center;
}

.p-division__content h3 span {
	font-size: 2.5rem;
}

.p-division__table {
	margin-top: 2.6rem;
}

.p-division__table table tr th,
.p-division__table table tr td {
	border-left: 1px solid #999999;
	padding: 1rem 0.8rem;
}

.p-division__table table tr th:first-child,
.p-division__table table tr td:first-child {
	border-left: none;
}

.p-division__table table thead tr th {
	background-color: #003994;
	color: var(--color-white);
	font-weight: bold;
	text-align: center;
}

.p-division__table table tbody tr:nth-child(even) {
	background-color: #EAF6FD;
}

.p-division .team-info__sec {
	color: #005CB9;
	font-weight: bold;
	font-size: 1.5rem;
	text-align: center;
	margin-bottom: 0.2rem;
}

.p-division .team-info__yr {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 1.8rem;
}

.p-division .team-info__date {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 4rem;
	white-space: nowrap;
}

.p-division .team-info__date span {
	font-weight: bold;
	font-size: 1.377rem;
}

.p-division .team-logo {
	display: flex;
	gap: 1rem;
	align-items: center;
}

.p-division .team-logo .logo {
	width: 6.1rem;
	flex-shrink: 0;
}

.p-division .team-logo .name {
	font-size: 1.733rem;
	font-weight: bold;
}

.p-division .team-std {
	font-size: 2.022rem;
	font-weight: bold;
	white-space: nowrap;
}

.p-division .team-std span {
	font-size: 1.502rem;
	display: block;
}

.p-division .team-time {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 4rem;
	text-align: center;
	white-space: nowrap;
}

.p-division .team-time .currency {
	font-size: 1.665rem;
	font-weight: bold;
}

.p-division .team-time .time {
	font-size: 2.31rem;
	display: block;
}

.p-division .team-time--red {
	color: #FF0000;
}

.division-wrap {
	background-color: #EAF6FD;
	margin-top: 3.4rem;
	padding: 4.1rem 6rem;
}

.division-card {
	background-color: #fff;
	margin-bottom: 2rem;
	padding: 1.5rem 1.6rem;
}

.division-card:last-child {
	margin-bottom: 0;
}

.division-card__label {
	display: inline-block;
	background-color: #005CB9;
	color: #fff;
	font-size: 1.7rem;
	font-weight: bold;
	padding: 0.8rem 1rem 0.2rem;
}

.division-card__head {
	border-bottom: 1px solid #B3B3B3;
	margin-bottom: 4.5rem;
	padding-bottom: 1.1rem;
}

.division-card__date {
	line-height: 1;
	font-weight: bold;
	text-align: center;
}

.division-card__date .year {
	font-weight: 500;
	font-family: "Oswald", sans-serif;
	font-size: 4.3rem;
}

.division-card__date .month-day {
	font-size: 9.6rem;
	font-weight: 500;
	font-family: "Oswald", sans-serif;
	margin-left: 2rem;
}

.division-card__date .week {
	font-size: 4.8rem;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	font-weight: bold;
	margin-left: 1rem;
}

.division-card__date .week::before {
	content: "［";
}

.division-card__date .week::after {
	content: "］";
}

.division-card__name {
	font-size: 2.7rem;
	font-weight: bold;
	margin-top: 1.5rem;
}

.division-card__name small {
	font-size: 2rem;
}

.division-card__body {
	display: flex;
	align-items: center;
	gap: 1.9rem;
	padding-left: 1.8rem;
}

.division-card__body .logo {
	width: 9.9rem;
}

.division-card__body .name {
	font-size: 4rem;
	font-weight: bold;
}

.division-card__footer {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
	margin-top: 6.5rem;
}

.division-card__col {
	text-align: center;
}

.division-card__col.--primary .division-card__col-label {
	background-color: #003994;
}

.division-card__col.--primary .division-card__col-txt {
	color: #f00;
}

.division-card__col-label {
	background-color: #808080;
	color: #fff;
	font-size: 1.7rem;
	font-weight: bold;
	padding: 1rem 1rem 0.8rem;
	text-align: center;
	margin-bottom: 1.5rem;
}

.division-card__col-date {
	font-weight: 500;
	font-family: "Oswald", sans-serif;
	font-size: 5rem;
}

.division-card__col-week {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	font-size: 2.4rem;
	font-weight: bold;
	margin-left: 0.5rem;
}

.division-card__col-week::before {
	content: "［";
}

.division-card__col-week::after {
	content: "］";
}

.division-card__col-time {
	font-weight: 500;
	font-family: "Oswald", sans-serif;
	font-size: 3.3rem;
	margin-left: 0.5rem;
}

.division-card__col-time small {
	font-size: 2.4rem;
}

.p-howto {
	background-color: #F0F0F0;
	padding-block: 3.2rem 8.3rem;
}

.p-howto__ttl {
	margin-bottom: 2.2rem;
	text-align: center;
}

.p-howto__ttl img {
	width: 38.1rem;
}

.p-howto__inner {
	max-width: 51.4rem;
	margin: 0 auto;
	position: relative;
}

.p-howto__wrap {
	display: grid;
	gap: 1.8rem;
	margin-bottom: 3rem;
	position: relative;
}

.p-howto__ic {
	position: absolute;
	pointer-events: none;
}

.p-howto__ic.p-howto__ic--01 {
	right: -7.4rem;
	bottom: -8.6rem;
	width: 20.8rem;
}

.p-faq {
	background-color: #00A4E0;
	padding-block: 5.5rem 3.7rem;
	position: relative;
}

.p-faq__ttl {
	margin-bottom: 4.4rem;
	text-align: center;
}

.p-faq__ttl img {
	width: 24.1rem;
}

.p-faq__wrap {
	max-width: 94.4rem;
	margin: 0 auto;
	position: relative;
}

.p-faq__wrap::before {
	content: "準備中";
	background-color: rgba(0, 0, 0, 0.82);
	position: absolute;
	inset: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3rem;
	color: #F40000;
	font-weight: bold;
	z-index: 3;
}

.p-faq__ic {
	position: absolute;
}

.p-faq__ic.p-faq__ic--01 {
	left: -1.5rem;
	bottom: calc(100% - 2.1rem);
	width: 15rem;
}

.p-faq__ic.p-faq__ic--02 {
	right: 2.9rem;
	bottom: calc(100% - 1rem);
	width: 11.7rem;
}

.p-faq .faq-item {
	background-color: #E6E6E6;
	margin-bottom: 1.4rem;
}

.p-faq .faq-item:last-child {
	margin-bottom: 0;
}

.p-faq .faq-item__head {
	padding: 2.8rem 3.7rem;
	cursor: pointer;
	display: flex;
	align-items: center;
	font-size: 2.6rem;
	font-weight: bold;
	gap: 3.2rem;
}

.p-faq .faq-item__head::before {
	content: "Q";
	flex-shrink: 0;
}

.p-faq .faq-item__head.is-active .ic-expand::after {
	transform: rotate(90deg);
	opacity: 0;
}

.p-faq .faq-item__head .ic-expand {
	flex-shrink: 0;
	margin-left: auto;
	height: 2.3rem;
	width: 2.3rem;
	position: relative;
}

.p-faq .faq-item__head .ic-expand::after,
.p-faq .faq-item__head .ic-expand::before {
	content: "";
	background-color: #000;
	position: absolute;
	transition: 0.3s ease;
}

.p-faq .faq-item__head .ic-expand::before {
	height: 0.2rem;
	width: 100%;
	left: 0;
	top: calc(50% - 0.1rem);
}

.p-faq .faq-item__head .ic-expand::after {
	height: 100%;
	width: 0.2rem;
	top: 0;
	left: calc(50% - 0.1rem);
}

.p-faq .faq-item__body {
	display: none;
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.6;
	padding: 0 3.7rem 2.8rem;
}

.p-faq .faq-item__txt {
	display: flex;
	gap: 3.2rem;
}

.p-faq .faq-item__txt::before {
	content: "A";
	flex-shrink: 0;
	font-weight: bold;
}

.p-sns {
	padding-top: 5.6rem;
}

.p-sns__ttl {
	margin-bottom: 3.1rem;
	text-align: center;
}

.p-sns__ttl img {
	width: 19rem;
}

.p-sns__list {
	margin-bottom: 6.8rem;
}

.p-sns__list #sb_instagram #sbi_images {
	gap: 1.1rem;
}

.p-sns__btns {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2.3rem;
}

@media (min-width: 576px) {

.d-sm-none {
	display: none !important;
}

.d-sm-block {
	display: block !important;
}

.d-sm-flex {
	display: flex !important;
}

.text-sm-left {
	text-align: left !important;
}

.text-sm-right {
	text-align: right !important;
}

.text-sm-center {
	text-align: center !important;
}

}

@media (min-width: 769px) {

body {
	padding-top: 6.2rem;
}

body.backtop-visible .p-fixed {
	bottom: 10rem;
}

.d-md-none {
	display: none !important;
}

.d-md-block {
	display: block !important;
}

.d-md-flex {
	display: flex !important;
}

.text-md-left {
	text-align: left !important;
}

.text-md-right {
	text-align: right !important;
}

.text-md-center {
	text-align: center !important;
}

.p-footer {
	margin-top: 6.5rem;
	padding-bottom: 3.5rem;
}

.p-footer__nav {
	margin-bottom: 3.8rem;
}

.p-footer__copyright img {
	width: 36.8rem;
}

.sp {
	display: none !important;
}

.p-mv__btn {
	max-width: 35.5555555556%;
	bottom: 2.7083333333vw;
}

.p-benefit {
	background-image: url("../images/benefits_bg.png");
	padding-block: 3.2rem 3.5rem;
}

.p-benefit__wrap {
	max-width: 93.4rem;
}

.p-benefit__ttl {
	max-width: 50.54rem;
	max-width: 54.1113490364%;
}

.p-benefit__content {
	margin-top: 6.5rem;
}

.p-benefit__ic--01 {
	width: 19.161rem;
	height: 21.418rem;
	top: -19.5rem;
}

.p-benefit__ic--02 {
	width: 21.719rem;
	height: 22.075rem;
	top: -20rem;
}

.p-benefit__list {
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.p-benefit__list > div {
	padding: 1.58rem 1.04rem;
}

.p-benefit__list > div h3 {
	border-radius: 0.5rem;
	font-size: 2.43rem;
	padding-block: 1.2rem 1rem;
	margin-bottom: 0.5rem;
}

.p-benefit__list > div p {
	font-size: 1.735rem;
	margin-top: 1rem;
}

.p-grade {
	padding-top: 2.4rem;
}

.p-grade__ttl {
	max-width: 33.248rem;
}

.p-grade__content {
	margin-top: 4rem;
}

.p-grade .tab-head li {
	max-width: 23.04rem;
}

.p-grade .tab-head li a {
	font-size: 2.304rem;
	padding-block: 1.7rem 1.3rem;
}

.p-grade .tab-content {
	padding-top: 4rem;
}

.p-grade .tab-box {
	margin: 0 auto;
	max-width: 87.8rem;
}

.p-grade__subT {
	font-size: 2.56rem;
	margin-block: 3.2rem;
	padding-block: 1.2rem 0.8rem;
}

.p-grade__list {
	grid-template-columns: repeat(3, 1fr);
	gap: 3.2rem 2rem;
}

.p-member {
	padding-top: 3.4rem;
	margin-top: 5rem;
}

.p-member__wrap {
	max-width: 89.243rem;
	margin: 0 auto;
}

.p-member__ttl {
	max-width: 71.3422901516%;
}

.p-member__content {
	margin-top: 5.5rem;
	padding-bottom: 3.4rem;
}

.p-member__list {
	grid-template-columns: repeat(2, 1fr);
	gap: 3.2rem 1.95rem;
}

.p-member__list li .ttl {
	font-size: 2.426rem;
	padding-block: 1.9rem 1.5rem;
}

.p-member__list li .content {
	padding: 2.9rem 1rem 2.5rem;
	gap: 0;
	flex-direction: row;
}

.p-member__list li .subT {
	font-size: 2.079rem;
	top: 0.2rem;
}

.p-member__list li .number {
	font-size: 3.466rem;
}

.p-member__list li .number span {
	font-size: 1.733rem;
}

.p-member__list li .number span .tax {
	margin-left: 1rem;
}

.p-member__btn {
	max-width: 49.0279349641%;
	margin-top: 7rem;
}

.p-member__ic {
	bottom: -3.4rem;
}

.p-member__ic--01 {
	width: 23.616rem;
	height: 24.641rem;
	left: -15.6875049023%;
}

.p-member__ic--02 {
	width: 22.762rem;
	height: 22.538rem;
	right: -14.5669688379%;
}

.p-data {
	background-color: #F0F0F0;
	padding-block: 3.2rem 6.2rem;
}

.p-data__wrap {
	max-width: 101.515rem;
	margin: 0 auto;
}

.p-data__ttl {
	max-width: 51.186524159%;
}

.p-data__table {
	margin-top: 6.4rem;
}

.p-data__table thead tr th {
	font-size: 2.624rem;
	padding: 5.5rem 0 4.4rem;
}

.p-data__table tbody tr td {
	padding: 2.2rem 1.1rem;
	font-size: 2.56rem;
}

.p-data__table tbody tr td:nth-child(1) {
	padding-inline: 2rem 1.8rem;
	min-width: 23.9583333333vw;
}

.p-data__table tbody tr td:nth-child(1) span.small-1 {
	font-size: 1.92rem;
}

.p-data__table tbody tr td:nth-child(1) span.small-2 {
	font-size: 1.504rem;
}

.p-data__table tbody tr td:nth-child(1) span.small-3 {
	font-size: 1.6rem;
}

.p-data__table tbody tr td.txt-small {
	font-size: 2.253rem;
}

.p-data__table .number {
	font-size: 2.56rem;
}

.p-data__table .dot {
	font-size: 2.56rem;
}

.p-data__table .line {
	width: 2.2rem;
	height: 0.15rem;
}

.p-data__table .txt {
	font-size: 2.56rem;
}

.p-data__table .txt--small {
	font-size: 1.647rem;
}

.p-data__ic--01 {
	width: 23.738rem;
	height: 27.992rem;
	top: -10.5rem;
	left: -3rem;
}

.p-data__ic--02 {
	width: 18.539rem;
	height: 17.313rem;
	top: -17rem;
	right: 0.5rem;
}

.p-service {
	padding-block: 5.8rem 3.1rem;
}

.p-service__list > li .ttl::before {
	border-width: 2.284rem 2.284rem 0 0;
}

.p-service__desc-table table thead th {
	font-size: 1.457rem;
	padding: 0.5rem;
}

.p-service__prod {
	margin-top: 2rem;
}

.p-service__note p {
	font-size: 1.142rem;
	margin-bottom: 0.5rem;
}

.p-ticket {
	padding-block: 3.5rem 4.8rem;
}

.p-ticket__wrap {
	max-width: 88.1rem;
	margin: 0 auto;
}

.p-ticket__ttl {
	max-width: 35.3030646992%;
}

.p-ticket__logo {
	max-width: 16.426rem;
	margin-top: 4.2rem;
}

.p-ticket__brand {
	max-width: 51.492rem;
}

.p-stadium {
	padding-block: 4rem 6.7rem;
}

.p-stadium__wrap {
	max-width: 90.5rem;
}

.p-stadium__item:not(:last-child) {
	margin-bottom: 10.5rem;
}

.p-stadium__ttl {
	max-width: 36.069rem;
}

.p-stadium__ttl--02 {
	max-width: 39.213rem;
}

.p-stadium__image {
	max-width: 63.33rem;
}

.p-stadium__image--02 {
	max-width: 68.709rem;
}

.p-stadium__table {
	margin-top: 1.7rem;
}

.p-stadium__table tr td.full {
	width: 2.5rem;
}

.p-stadium__table tr td.stt {
	font-size: 2.696rem;
}

.p-stadium__table tr td.txt {
	font-size: 2.257rem;
}

.p-stadium__table tr td.txt span {
	font-size: 2.143rem;
}

.p-stadium__table tr td.number {
	font-size: 3.16rem;
}

.p-stadium__table tr td.number span {
	font-size: 1.665rem;
}

.p-stadium__table thead tr th {
	font-size: 2.689rem;
	background-color: #E6E6E6;
}

.p-backtop {
	width: 6.2rem;
}

.p-fixed {
	bottom: 2rem;
	width: 10.7rem;
}

.p-division {
	margin-bottom: 8.1rem;
}

.p-division__inner {
	padding-block: 4rem 0;
}

.p-division__ttl {
	max-width: 84.093rem;
}

.p-division__content {
	max-width: 90.5rem;
	margin: 3rem auto 0;
}

.p-division__content h3 {
	font-size: 3.774rem;
}

.p-division__content h3 span {
	font-size: 3.019rem;
}

.p-division__table table thead tr th {
	font-size: 1.788rem;
	padding: 1rem 1.2rem;
}

.p-howto {
	padding-block: 3.3rem 17.5rem;
}

.p-howto__ttl {
	margin-bottom: 3.4rem;
}

.p-howto__inner {
	max-width: 84.9rem;
}

.p-howto__wrap {
	grid-template-columns: repeat(2, 1fr);
	gap: 5.2rem;
	margin-bottom: 3.6rem;
}

.p-howto__ic.p-howto__ic--01 {
	right: -10.2rem;
	bottom: -17.5rem;
	width: 28.9rem;
}

.p-faq {
	padding-block: 3.2rem 3.7rem;
}

.p-faq__ttl {
	margin-bottom: 8.9rem;
}

.p-faq__ttl img {
	width: 20.609rem;
}

.p-faq__ic.p-faq__ic--01 {
	left: -2.5rem;
	bottom: calc(100% - 1.3rem);
	width: 19rem;
}

.p-faq__ic.p-faq__ic--02 {
	bottom: calc(100% - 2.9rem);
	right: 6.5rem;
	width: 16rem;
}

.p-faq .faq-item__head {
	font-size: 2.1rem;
	padding: 2.8rem 4rem;
}

.p-faq .faq-item__body {
	font-size: 1.8rem;
	padding: 0 4rem 2.8rem;
}

.p-faq .faq-item__txt::before {
	font-size: 2.1rem;
}

.p-sns {
	padding-top: 3.7rem;
}

.p-sns__ttl {
	margin-bottom: 6.5rem;
}

.p-sns__list {
	max-width: 94.4rem;
	margin: 0 auto 6rem;
}

.p-sns__list #sb_instagram #sbi_images {
	gap: 1.4rem 1.5rem;
}

}

@media (min-width: 992px) {

.d-lg-none {
	display: none !important;
}

.d-lg-block {
	display: block !important;
}

.d-lg-flex {
	display: flex !important;
}

.text-lg-left {
	text-align: left !important;
}

.text-lg-right {
	text-align: right !important;
}

.text-lg-center {
	text-align: center !important;
}

.p-service__ttl-box {
	justify-content: center;
	align-items: center;
	flex-direction: row;
}

.p-service__ttl-note {
	font-size: 2.036rem;
	padding: 1.05rem 2.15rem 0.65rem;
	position: absolute;
	top: -2.6rem;
	left: -9rem;
	transform: rotate(-20deg);
}

.p-service__ttl-sub {
	font-size: 3.5rem;
	margin-right: 1rem;
}

.p-service__ttl-txt {
	font-size: 6rem;
}

.p-service__list {
	margin-top: 3.2rem;
}

.p-service__list > li {
	flex-direction: row;
	align-items: stretch;
	gap: 1.9rem;
	flex-direction: row;
}

.p-service__list > li:not(:last-child) {
	margin-bottom: 2rem;
}

.p-service__list > li:nth-child(2)::after {
	width: 14.816rem;
	height: 11.845rem;
	top: 50%;
	transform: translateY(-50%);
}

.p-service__list > li .ttl {
	font-size: 2.343rem;
	width: 23.163rem;
	flex-shrink: 0;
	padding: 1.35rem 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.p-service__list > li ol li {
	gap: 0.5rem;
	font-size: 2.258rem;
}

.p-service__list > li ol li:not(:last-child) {
	margin-bottom: 0.5rem;
}

.p-service__list > li ol.pl li:not(.no-dot) {
	padding-left: 3rem;
}

.p-service__desc {
	flex-direction: row;
}

.p-service__desc-text {
	flex: 1;
	font-size: 2.368rem;
	line-height: 1.5;
	margin-top: 4rem;
}

.p-service__desc-table {
	width: 49.7rem;
}

.p-service__desc-table table tbody tr td {
	padding: 0.4rem 1.5rem 0.3rem;
}

.p-service__desc-table table tbody tr td:nth-child(1) {
	font-size: 1.664rem;
}

.p-service__desc-table table tbody tr td p {
	font-size: 3.775rem;
}

.p-service__desc-table table tbody tr td p span {
	font-size: 2.46rem;
}

.p-service__desc-table table tbody tr td p small {
	font-size: 1.661rem;
}

.p-service__prod .item {
	flex: 1;
}

.p-service__prod .item .media span {
	font-size: 0.782rem;
	right: 2rem;
}

.p-service__prod .item .name {
	font-size: 1.981rem;
}

.p-service__prod .item .prc {
	font-size: 4.568rem;
}

.p-service__prod .item .prc span {
	font-size: 3.655rem;
}

}

@media (min-width: 1025px) {

.d-tb-none {
	display: none !important;
}

.d-tb-block {
	display: block !important;
}

.d-tb-flex {
	display: flex !important;
}

.text-tb-left {
	text-align: left !important;
}

.text-tb-right {
	text-align: right !important;
}

.text-tb-center {
	text-align: center !important;
}

.p-header__text {
	text-align: center;
	font-size: 0.9722222222vw;
}

.p-header__wrap {
	background: url("../images/bg_menu_a.png") repeat-x center bottom;
	background-size: 16.9444444444vw 2.7777777778vw;
	margin-top: 0.5rem;
}

.p-header__content {
	display: flex;
	justify-content: center;
	position: relative;
	padding: 0 3.5rem 0;
	max-width: 144rem;
	margin: 0 auto;
}

.p-header__hamburger {
	display: none;
}

.p-header__sns {
	display: none;
}

.gl-nav {
	display: flex;
	align-items: center;
}

.gl-nav__item {
	position: relative;
	background: url("../images/bg_menu_a.png") no-repeat center/cover;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 16.9444444444vw;
	height: 2.7777777778vw;
	flex: 1;
}

.gl-nav__item:not(:last-child)::after {
	content: "";
	background-color: var(--color-white);
	width: 0.1rem;
	height: 1.6923611111vw;
	position: absolute;
	top: 60%;
	transform: translateY(-50%);
	right: 0;
}

.gl-nav__link {
	flex-direction: column;
	justify-content: center;
	text-align: center;
}

.gl-nav__link .en {
	font-size: 0.9895833333vw;
	margin-bottom: 0.3rem;
}

.gl-nav__link .jp {
	font-size: 0.59375vw;
}

}

@media (min-width: 1440px) {

.d-xl-none {
	display: none !important;
}

.d-xl-block {
	display: block !important;
}

.d-xl-flex {
	display: flex !important;
}

.text-xl-left {
	text-align: left !important;
}

.text-xl-right {
	text-align: right !important;
}

.text-xl-center {
	text-align: center !important;
}

.p-header__text {
	font-size: 1.4rem;
}

.p-header__wrap {
	background-size: 24.4rem 4rem;
}

.p-header__logo {
	top: -1.5rem;
	width: 5.725rem;
}

.p-header__ic {
	top: -2.2rem;
	width: 5.355rem;
}

.gl-nav__item {
	width: 24.4rem;
	height: 4rem;
	padding-top: 0.4rem;
}

.gl-nav__link .en {
	font-size: 1.425rem;
}

.gl-nav__link .jp {
	font-size: 0.855rem;
}

.p-data__table tbody tr td:nth-child(1) {
	min-width: 34.5rem;
}

}

@media (max-width: 1024px) {

.p-header {
	height: 12.2rem;
}

.p-header::after {
	content: "";
	background: url("../images/bg_menu_sp.svg") no-repeat bottom center/cover;
	width: 100%;
	height: 7.645rem;
	position: absolute;
	bottom: 0;
	left: 0;
}

.p-header__text {
	padding-top: 2rem;
	width: calc(100% - 11rem);
}

.p-header__wrap {
	display: none;
}

.p-header__logo {
	display: none;
}

.p-header__ic {
	display: none;
}

.gl-nav__item {
	margin-bottom: 0.4rem;
}

.gl-nav__item:nth-child(1) {
	margin-top: 0.4rem;
}

.gl-nav__link {
	gap: 2.9rem;
	background-color: #3E3E3E;
	padding: 5.1rem 5rem 5.3rem;
}

.gl-nav__link .jp {
	position: relative;
	top: 1px;
}

}

@media (max-width: 991px) {

.p-service__ttl-box {
	text-align: center;
}

.p-service__ttl-note {
	margin-bottom: 3rem;
}

.p-service__list > li ol {
	padding-left: 1rem;
}

}

@media (max-width: 768px) {

html {
	font-size: 1.3333333333vw;
}

.pc {
	display: none !important;
}

.p-grade .tab-content {
	padding-inline: 3.6rem;
}

.p-member__ttl::after {
	display: none;
}

.p-member__list li {
	width: 100%;
	margin: 0 auto;
}

.p-data__table tbody tr td:nth-child(1) span.small-1 {
	position: absolute;
	top: 1.05rem;
	right: 1.51rem;
}

.p-data__table tbody tr td.txt-small-1 {
	font-size: 2.604rem;
}

.p-data__table tbody tr td.txt-small-2 {
	font-size: 2.366rem;
}

.p-data__table tbody tr td.txt-small-2 > .num {
	font-size: 1.7rem;
}

.p-data__table tbody tr td.txt-small-3 {
	font-size: 2.5rem;
}

.p-data__table tbody tr td.txt-small-3 > .num {
	font-size: 2rem;
}

.p-data__table .number--big {
	font-size: 3rem;
}

.p-service__prod {
	gap: 5rem;
}

}

