/******************************************
ここから基本設定
********************************************/
:root {
	--lp-accent-color: #FF8A00;
	--lp-accent-color--yellow: #FFE500;
	--lp-sky-color: #D5F0ED;
	--lp-brown-color: #5E3712;
	--lp--beige-color: #F5F2ED;

	--inner-lp-largest: 1500px;
	--inner-lp-large: 1300px;
}

.lp-accent-color {
	color: var(--lp-accent-color);
}

.lp-accent-color--yellow {
	color: var(--lp-accent-color--yellow);
}

.lp-brown-color {
	color: var(--lp-brown-color);
}

.bg-lp-beige {
	background-color: var(--lp--beige-color);
}

.inner-lp-largest {
	width: var(--inner-lp-largest);
	max-width: var(--inner-lp-largest);
	margin: 0 auto
}

@media only screen and (max-width: 1499px) {
	.inner-lp-largest {
		width: var(--inner-large)
	}
}

@media only screen and (max-width: 1379px) {
	.inner-lp-largest {
		width: var(--inner-responsive)
	}
}

.inner-lp-large {
	width: var(--inner-lp-large);
	max-width: var(--inner-lp-large);
	margin: 0 auto
}

@media only screen and (max-width: 1299px) {
	.inner-lp-large {
		width: var(--inner-responsive)
	}
}


/******************************************
ここからLP共通パーツのcss
********************************************/


/* 番号つき見出し */
.heading-list-num-wrap {
	counter-reset: list_num;
}

.heading-list-num {
	display: inline-block;
	position: relative;
	padding-left: 2.5em;
}

.heading-list-num::before {
	counter-increment: list_num;
	content: counter(list_num, decimal-leading-zero);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 0;
	top: -.5em;
	width: 2em;
	height: 2em;
	padding-top: .2em;
	background: var(--primary-color);
	color: white;
	font-weight: 600;
}

/* btn-lp-icon */
.btn-lp-icon {
	display: block;
	position: relative;
	text-align: center;
	min-width: 40rem;
	border-radius: .8rem;
	padding: 1em .5em;
	border: 2px solid var(--primary-color);
	background: white;
	box-shadow: 2px 4px 4px var(--shadow-color);
	color: var(--primary-color);
	font-size: 3.2rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.btn-lp-icon {
		width: 100%;
		min-width: auto;
		font-size: 15px;
	}
}

.btn-lp-icon__has-icon {
	display: inline-block;
	position: relative;
}

.btn-lp-icon__has-icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

@media screen and (max-width: 374px) {
	.btn-lp-icon__has-icon::after {
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
}

.btn-lp-icon__has-icon.btn-lp-icon__has-icon--file {
	padding-left: 2.3em;
}

.btn-lp-icon__has-icon.btn-lp-icon__has-icon--file::after {
	width: 1.35em;
	height: 1.8em;
	background-image: url(../img/icon-file-primary.svg);
}

@media (hover: hover) {
	.btn-lp-icon:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}
}


/* btn-lp-icon-yajirushi */
.btn-lp-icon-yajirushi {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 31.2rem;
	border-radius: 5em;
	padding: 1em 1em;
	padding-right: 1em;
	border: 1px solid var(--primary-color);
	background: var(--primary-color);
	box-shadow: 2px 4px 4px var(--shadow-color--dark);
	color: white;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.btn-lp-icon-yajirushi {
		font-size: 13px;
	}
}

.btn-lp-icon-yajirushi.btn-lp-icon-yajirushi--w-100 {
	display: block;
	width: 100%;
	min-width: 100%;
}

.btn-lp-icon-yajirushi::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 1.25em;
	transform: translateY(-50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.btn-lp-icon-yajirushi.btn-lp-icon-yajirushi--online::after {
	width: 2.5em;
	height: 1.95em;
	background-image: url(../img/icon-online-white-lp.svg);
}

.btn-lp-icon-yajirushi.btn-lp-icon-yajirushi--mail::after {
	width: 2em;
	height: 1.5em;
	background-image: url(../img/icon-mail-white-lp.svg);
}

.btn-lp-icon-yajirushi.btn-lp-icon-yajirushi--tel::after {
	width: 1.5em;
	height: 1.5em;
	background-image: url(../img/icon-tel-white-lp.svg);
}

.btn-lp-icon-yajirushi.btn-lp-icon-yajirushi--line::after {
	width: 2em;
	height: 2em;
	background-image: url(../img/icon-line-white-lp.png);
}

.btn-lp-icon-yajirushi.btn-lp-icon-yajirushi--pdf::after {
	width: 1.2em;
	height: 1.5em;
	background-image: url(../img/icon-pdf-white-lp.png);
}

.btn-lp-icon-yajirushi__yajirushi-wrap {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
}

.btn-lp-icon-yajirushi__yajirushi {
	display: inline-block;
	width: 1em;
	height: 1em;
	background-image: url(../img/icon-yajirushi-white-right.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

@media (hover: hover) {
	.btn-lp-icon-yajirushi:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}
}

/* ボックス */
.layout-lp-box {
	padding: 4rem 5rem;
	border-radius: 1rem;
	background: var(--lp-sky-color);
	box-shadow: 0 4px 4px var(--shadow-color--dark);
}

@media screen and (max-width: 767px) {
	.layout-lp-box {
		padding: 3rem 2rem;
	}
}

/* 計算式ボックス */
.layout-lp-calc-box {
	text-align: center;
	padding: 3rem 2rem;
	border-radius: 1rem;
	background: white;
}

.layout-lp-calc-box-letter {
	color: var(--primary-color);
	font-size: 2.7rem;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.layout-lp-calc-box-letter {
		font-size: 14px;
	}
}

.layout-lp-box-02 {
	text-align: center;
	padding: 5.5rem 2rem;
	background: var(--primary-color);
	box-shadow: 4px 4px 4px var(--shadow-color);
	color: white;
}

@media screen and (max-width: 1129px) {
	.layout-lp-box-02 {
		text-align: left;
		padding: 3rem 2rem;
	}
}

.layout-lp-box-02-letter {
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.layout-lp-box-02-letter {
		font-size: 16px;
	}
}

/* 表 */
.table-lp {
	width: 100%;
	table-layout: fixed;
}

.table-lp__child {
	text-align: center;
	padding: 1.5rem .5rem;
	border: .5px solid var(--border-color--light);
}

@media screen and (max-width: 767px) {
	.table-lp.table-lp--sp-block .table-lp__child {
		display: block;
		width: 100% !important;
		border-top-width: 0;
		border-bottom-width: 0;
	}
}

.table-lp__child.table-lp__child--th {
	background: var(--bg-main-color--light);
}

.table-lp__child.table-lp__child--th-last {
	padding: 3rem 0;
	background: #EEFBFA;
}

.table-lp__child.table-lp__child--td-last {
	padding: 3rem 0;
	background: #FFFDEB;
}

.table-lp__child.table-lp__child--td {
	background: white;
}

.table-lp__child.table-lp__child--th-top {
	background: var(--lp-sky-color);
}


/******************************************
ここからLP特定使用のcss
********************************************/

/* 選ばれる理由 */
.lp-reason__main-row {
	display: grid;
}

.lp-reason__main-row.lp-reason__main-row--4c {
	grid-template-columns: repeat(4, 1fr);
	gap: 6rem 2rem;
}

@media screen and (max-width: 1499px) {
	.lp-reason__main-row.lp-reason__main-row--4c {
		grid-template-columns: repeat(4, 1fr);
		gap: 6rem 2rem;
	}
}

@media screen and (max-width: 1379px) {
	.lp-reason__main-row.lp-reason__main-row--4c {
		grid-template-columns: repeat(3, 1fr);
		gap: 6rem 2rem;
	}
}

@media screen and (max-width: 1119px) {
	.lp-reason__main-row.lp-reason__main-row--4c {
		grid-template-columns: repeat(2, 1fr);
		gap: 6rem 2rem;
	}
}

@media screen and (max-width: 767px) {
	.lp-reason__main-row.lp-reason__main-row--4c {
		grid-template-columns: repeat(1, 1fr);
		gap: 3rem 0;
	}
}

.lp-reason__main-row.lp-reason__main-row--5c {
	grid-template-columns: repeat(5, 1fr);
	gap: 6rem 1rem;
}

@media screen and (max-width: 1499px) {
	.lp-reason__main-row.lp-reason__main-row--5c {
		grid-template-columns: repeat(4, 1fr);
		gap: 6rem 2rem;
	}
}

@media screen and (max-width: 1379px) {
	.lp-reason__main-row.lp-reason__main-row--5c {
		grid-template-columns: repeat(3, 1fr);
		gap: 6rem 2rem;
	}
}

@media screen and (max-width: 1119px) {
	.lp-reason__main-row.lp-reason__main-row--5c {
		grid-template-columns: repeat(2, 1fr);
		gap: 6rem 2rem;
	}
}

@media screen and (max-width: 767px) {
	.lp-reason__main-row.lp-reason__main-row--5c {
		grid-template-columns: repeat(1, 1fr);
		gap: 3rem 0;
	}
}

.lp-reason__main-content {
	position: relative;
}

.lp-reason__main-content-num {
	text-align: center;
}

/* 番号つき見出し */
.lp-reason__main {
	counter-reset: list_num;
}

.lp-reason__main-content-num-letter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	width: 10rem;
	height: 5rem;
	border-radius: 50% 50% 0 0 / 100% 100% 0 0;
	padding-top: .5em;
	background: var(--primary-color);
	color: white;
	font-family: var(--en-font);
	font-size: 2.5rem;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0;
}

.lp-reason__main-content-num-letter::before {
	content: counter(list_num, decimal-leading-zero);
	counter-increment: list_num;
}

@media screen and (max-width: 767px) {
	.lp-reason__main-content-num-letter {
		width: 100px;
		height: 50px;
		font-size: 25px;
	}
}

.lp-reason__main-content-title {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	padding: 1rem;
	background: var(--primary-color);
	color: white;
}

@media screen and (max-width: 767px) {
	.lp-reason__main-content-title {
		margin-top: -1px;
	}
}

.lp-reason__main-content-title-letter {
	font-size: 1.6rem;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-reason__main-content-title-letter {
		font-size: 16px;
	}
}

.lp-reason__main-content-title-letter--large {
	font-size: 2.2rem;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-reason__main-content-title-letter--large {
		font-size: 22px;
	}
}

.lp-reason__main-content-desc-letter {
	font-size: 1.5rem;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-reason__main-content-desc-letter {
		font-size: 15px;
	}
}

.lp-reason__main-content-desc {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	padding: 1.5rem 1rem;
	background: linear-gradient(45deg, white, #E3E3E3)
}

@media screen and (max-width: 767px) {
	.lp-reason__main-content-desc {
		text-align: left;
	}
}

/* 相続相談所レクサーの代表税理士・伊東 秀明です。 */
.lp-msg {
	position: relative;
}

.lp-msg__bg {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}

.lp-msg__bg-image img {
	width: 100%;
	height: 90rem;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.lp-msg__bg-image img {
		height: 250px;
	}
}

.lp-msg__box-wrap {
	position: relative;
	z-index: 1;
	padding: 1rem;
	background: linear-gradient(to right, var(--primary-color), #57C1C8);
	box-shadow: 4px 4px 4px var(--shadow-color);
}

.lp-msg__box {
	padding: 8.5rem;
	background: white;
}

@media screen and (max-width: 1129px) {
	.lp-msg__box {
		padding: 3rem;
		border-width: 2px;
	}
}

.lp-msg__header-row {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 1129px) {
	.lp-msg__header-row {
		display: block;
	}
}

.lp-msg__header-img {
	margin-left: -18.5rem;
	margin-right: 6.5rem;
	flex-shrink: 0;
	position: relative;
	z-index: 1;
	width: 68rem;
}

@media screen and (max-width: 1129px) {
	.lp-msg__header-img {
		margin: 0;
		width: 100%;
	}
}

.lp-msg__header-image img {
	box-shadow: 2px 4px 4px var(--shadow-color);
}

.lp-msg__header-txt {
	width: 100%;
}

@media screen and (max-width: 1129px) {
	.lp-msg__header-txt {
		margin-top: 4rem;
	}
}

.lp-msg__detail {
	margin-top: 6.5rem;
	text-align: center;
}

.lp-msg__detail-tri-wrap {
	margin-top: 2rem;
}

.lp-msg__detail-tri {
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 6rem solid transparent;
	border-left: 6rem solid transparent;
	border-top: 2rem solid var(--primary-color);
	border-bottom: 0;
}

@media screen and (max-width: 767px) {
	.lp-msg__detail-tri {
		border-right: 60px solid transparent;
		border-left: 60px solid transparent;
		border-top: 20px solid var(--primary-color);
	}
}

.lp-msg__content+.lp-msg__content {
	margin-top: 2rem;
}

.lp-msg__content {
	border-radius: 2.5rem;
	padding: 3rem 3.5rem;
	background: #E7FFE9;
}

@media screen and (max-width: 767px) {
	.lp-msg__content {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

.lp-msg__content-header-row {
	display: flex;
}

@media screen and (max-width: 767px) {
	.lp-msg__content-header-row {
		display: block;
	}
}

.lp-msg__content-header-num {
	margin-right: 2rem;
	padding-top: .5rem;
	flex-shrink: 0;
}

@media screen and (max-width: 767px) {
	.lp-msg__content-header-num {
		margin-right: 0;
		padding-top: 0;
	}

	.lp-msg__content-header-txt {
		margin-top: 1rem;
	}
}

.lp-msg__content-header-num-letter {
	font-family: var(--en-font);
	font-size: 2.4rem;
	line-height: 1;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-msg__content-header-num-letter {
		font-size: 14px;
	}
}

.lp-msg__content-body {
	margin-top: 2rem;
	padding: 0 1rem;
}

@media screen and (max-width: 767px) {
	.lp-msg__content-body {
		padding-left: 0;
		padding-right: 0;
	}
}

.lp-msg__sign {
	text-align: right;
}


.lp-msg__sign-image img {
	width: 100%;
	max-width: 29.2rem;
	height: auto;
}

@media screen and (max-width: 767px) {
	.lp-msg__sign-image img {
		max-width: 80px;
	}
}


/* 相続税申告の料金表 */
.lp-price__desc {
	text-align: center;
}

@media screen and (max-width: 1129px) {
	.lp-price__desc {
		text-align: left;
	}
}

.lp-price__table {
	width: 100%;
	table-layout: fixed;
}

.lp-price__table-header-th {
	vertical-align: top;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-bottom: 4rem;
}

.lp-price__table-header-th.lp-price__table-header-th--circle {
	vertical-align: bottom;
}

.lp-price__table-circle-letter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	width: 24.3rem;
	height: 24.3rem;
	border-radius: 50%;
	background: var(--primary-color);
	color: var(--lp-accent-color--yellow);
	font-size: 3.5rem;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-circle-letter {
		width: 168px;
		height: 168px;
		font-size: 24px;
	}
}

.lp-price__table-circle-letter-accent {
	color: white;
	font-size: 5.3rem;
	line-height: 1.5;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-circle-letter-accent {
		font-size: 36px;
	}
}

.lp-price__table-title {
	position: relative;
	border-radius: 1rem;
	padding: 2.5rem 1.5rem 1.5rem;
}

@media screen and (max-width: 767px) {
	.lp-price__table-title {
		display: inline-block;
		max-width: 280px;
	}
}

.lp-price__table-title::after {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 1.5rem solid transparent;
	border-left: 1.5rem solid transparent;
	border-bottom: 0;
}

.lp-price__table-title-header {
	text-align: center;
}

.lp-price__table-title-header-letter {
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-title-header-letter {
		font-size: 24px;
	}
}

.lp-price__table-title-body {
	margin-top: 3rem;
}

.lp-price__table-title-body-box {
	padding: 2.5rem 1rem 1.5rem;
	background: white;
}

.lp-price__table-title-body-heading {
	text-align: center;
}

@media screen and (max-width: 1129px) {
	.lp-price__table-title-body-heading {
		display: table;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
}

.lp-price__table-title-body-heading-letter {
	font-size: 2.0rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-title-body-heading-letter {
		font-size: 20px;
	}
}

.lp-price__table-title-body-sub {
	margin-top: 1rem;
	text-align: center;
}

.lp-price__table-title-body-sub-letter {
	color: #818181;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-title-body-sub-letter {
		font-size: 16px;
	}
}

/* 個別スタイル */
.lp-price__table-title.lp-price__table-title--light {
	background: #2992C1;
	color: white;
}

.lp-price__table-title.lp-price__table-title--light::after {
	border-top: 2.6rem solid #2992C1;
}

.lp-price__table-title.lp-price__table-title--light .lp-price__table-title-body-heading-letter {
	color: #2992C1;
}

.lp-price__table-title.lp-price__table-title--basic {
	background: #007C8D;
	color: white;
}

.lp-price__table-title.lp-price__table-title--basic::after {
	border-top: 2.6rem solid #007C8D;
}

.lp-price__table-title.lp-price__table-title--basic .lp-price__table-title-body-heading-letter {
	color: #007C8D;
}

.lp-price__table-title.lp-price__table-title--premium {
	background: #2D353E;
	color: #FFE500;
}

.lp-price__table-title.lp-price__table-title--premium::after {
	border-top: 2.6rem solid #2D353E;
}


.lp-price__table-title.lp-price__table-title--premium .lp-price__table-title-body-heading-letter {
	color: #2D353E;
}

.lp-price__table-child {
	text-align: center;
	padding: 2rem 0;
	border: .5px solid var(--border-color--light);
}

.lp-price__table-child.lp-price__table-child--top-th {
	padding-top: 3rem;
	padding-bottom: 3rem;
	background: var(--bg-main-color--light);
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-child.lp-price__table-child--top-th {
		font-size: 24px;
	}
}

.lp-price__table-child.lp-price__table-child--top-th-light {
	background: #70C3E8;
	color: white;
}

.lp-price__table-child.lp-price__table-child--top-th-basic {
	background: #007C8D;
	color: white;
}

.lp-price__table-child.lp-price__table-child--top-th-premium {
	background: #2D353E;
	color: #FFE500;
}

.lp-price__table-child.lp-price__table-child--td {
	background: white;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-price__table-child.lp-price__table-child--td {
		font-size: 13px;
	}
}

/*SP　レイアウト*/
.lp-price__table-circle-sp {
	text-align: center;
}

.lp-price__table-main-sp {
	margin-top: 4rem;
	text-align: center;
}

.lp-price__table-main-sp-content+.lp-price__table-main-sp-content {
	margin-top: 4rem;
}

.lp-price__table-main-sp-content-main {
	margin-top: 4rem;
}

.lp-price__dw {
	text-align: center;
	max-width: 777px;
	margin-left: auto;
	margin-right: auto;
}

/* 生前の節税対策にも対応 */
@media screen and (max-width: 1179px) {
	.lp-tax-saving__main {
		margin-top: var(--mt-d);
	}
}

.lp-tax-saving__main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

@media screen and (max-width: 1119px) {
	.lp-tax-saving__main-row {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 5rem 2rem;
	}
}

@media screen and (max-width: 767px) {
	.lp-tax-saving__main-row {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 5rem 0;
	}
}


.lp-tax-saving__content {
	margin-top: 10rem;
	margin-left: 2ch;
	margin-right: 2rem;
	max-width: 295px;
}

@media screen and (max-width: 1119px) {
	.lp-tax-saving__content {
		margin: 0;
		max-width: 100%;
	}
}

@media screen and (max-width: 767px) {
	.lp-tax-saving__content {
		max-width: 280px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (min-width: 1120px) {
	.lp-tax-saving__main-row.lp-tax-saving__main-row--pc-no-grid {
		display: block;
	}
}

.lp-tax-saving__content-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

@media screen and (max-width: 1119px) {
	.lp-tax-saving__content-wrap {
		display: contents;
	}
}


.lp-tax-saving__content-title {
	margin-top: 2.5rem;
	text-align: center;
}

.lp-tax-saving__content-desc {
	margin-top: 2rem;
}

/* 相続税の計算方法 */
.lp-calculation__main {
	margin-top: 10rem;
}

.lp-calculation__content+.lp-calculation__content {
	margin-top: 8rem;
}

.lp-calculation__content-heading {
	text-align: center;
}

@media screen and (max-width: 1129px) {
	.lp-calculation__content-heading {
		text-align: left;
	}
}

.lp-calculation__content-desc {
	margin-top: 4rem;
	text-align: center;
}

@media screen and (max-width: 1129px) {
	.lp-calculation__content-desc {
		text-align: left;
	}
}

.lp-calculation__content-main {
	margin-top: 4rem;
}

/* 相続税申告までの流れ */
.lp-flow__content {
	position: relative;
}

@media screen and (max-width: 1129px) {
	.lp-flow__content+.lp-flow__content {
		padding-top: 2rem;
	}

	.lp-flow__content::after {
		content: '';
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: 0;
		width: 5px;
		height: 100%;
		background: var(--border-color--light);
	}
}

.lp-flow__content-row {
	display: flex;
	flex-wrap: wrap;
}

@media screen and (max-width: 1129px) {
	.lp-flow__content-row {
		position: relative;
		z-index: 1;
	}
}

.lp-flow__content-title {
	position: relative;
	text-align: center;
	width: 37%;
	padding-bottom: 3rem;
}

@media screen and (max-width: 1129px) {
	.lp-flow__content-title {
		width: 100%;
		padding-top: 3rem;
	}
}

.lp-flow__content:first-child .lp-flow__content-title {
	padding-top: 2.5rem;
}

.lp-flow__content-title.lp-flow__content-title--skin-01 {
	background: #E4F4EF;
}

.lp-flow__content-title.lp-flow__content-title--skin-02 {
	background: #D6EBE7;
}

.lp-flow__content-title.lp-flow__content-title--skin-03 {
	background: #BEE8E0;
}

.lp-flow__content-title.lp-flow__content-title--skin-04 {
	background: #8CCBC0;
}

.lp-flow__content.lp-flow__content--first .lp-flow__content-title {
	padding-top: 3rem;
}

.lp-flow__content-title::after {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 0;
	width: 5px;
	height: calc(100% + 3rem);
	background: white;
}

.lp-flow__content.lp-flow__content--first:first-child .lp-flow__content-title::after {
	top: 3rem;
}

.lp-flow__content:last-child .lp-flow__content-title::after {
	display: none;
}

.lp-flow__content:last-child.lp-flow__content--first-last .lp-flow__content-title::after {
	display: block;
	top: 0;
	height: 3rem;
}

@media screen and (max-width: 1129px) {
	.lp-flow__content-title::after {
		display: none;
	}

	.lp-flow__content:last-child.lp-flow__content--first-last .lp-flow__content-title::after {
		display: none;
	}
}

.lp-flow__content-title-heading {
	position: relative;
	z-index: 1;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.lp-flow__content-title-heading {
		padding: 0 2rem;
	}
}

.lp-flow__content-title-heading-letter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	min-width: 37.5rem;
	min-height: 7.6rem;
	border-radius: 5em;
	border: 1px solid white;
	background: white;
	color: var(--primary-color);
	font-size: 2rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-flow__content-title-heading-letter {
		width: 100%;
		min-width: auto;
		min-height: 60px;
		font-size: 18px;
	}
}

.lp-flow__content-txt {
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 60%;
	min-height: 15rem;
	padding: 0 2rem 6rem;
	background: white;
}

@media screen and (max-width: 1129px) {
	.lp-flow__content-txt {
		display: block;
		width: 100%;
		min-height: auto;
		padding-top: 3rem;
	}
}

.lp-flow__content.lp-flow__content--first .lp-flow__content-txt {
	padding-top: 3rem;
}

.lp-flow__content:first-child .lp-flow__content-txt {
	padding-top: 3rem;
}

.lp-flow__content-btn {
	width: 100%;
}

.lp-flow__content-btn-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.4rem 1rem;
}

@media screen and (max-width: 767px) {
	.lp-flow__content-btn-row {
		grid-template-columns: repeat(1, 1fr);
	}
}


/* 相続のあらゆるお悩みを解決します！ */
.lp-kaiketsu__slide-content {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.lp-kaiketsu__slide-content+.lp-kaiketsu__slide-content {
	margin-top: 4rem;
}

.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--a {
	margin-top: 1rem;
}

.lp-kaiketsu__slide-content-child-row {
	display: flex;
}

.lp-kaiketsu__slide-content-child-img {
	margin-right: 3rem;
	flex-shrink: 0;
}

@media screen and (max-width: 1299px) {
	.lp-kaiketsu__slide-content-child-img {
		margin-right: 1.5rem;
		flex-shrink: 0;
	}
}

.lp-kaiketsu__slide-content-child-image img {
	width: 18.5rem;
	height: auto;
	border-radius: 50%;
	background: #D9D9D9;
}

@media screen and (max-width: 767px) {
	.lp-kaiketsu__slide-content-child-image img {
		width: 60px;
	}
}

.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--q .lp-kaiketsu__slide-content-child-img {
	padding-top: 1rem;
}

@media screen and (max-width: 1299px) {
	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--q .lp-kaiketsu__slide-content-child-img {
		padding-top: 0;
	}
}

.lp-kaiketsu__slide-content-child-txt {
	width: 100%;
}

.lp-kaiketsu__slide-content-child-fukidashi {
	position: relative;
	text-align: left;
	max-width: 60rem;
	border-radius: 1.5rem;
}

@media screen and (max-width: 1299px) {
	.lp-kaiketsu__slide-content-child-fukidashi {
		width: 100%;
		max-width: 100%;
	}
}

.lp-kaiketsu__slide-content-child-fukidashi::after {
	content: "";
	position: absolute;
	width: 2.8rem;
	height: 2.8rem;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--q {
	padding: 2.5rem 3.5rem;
	background: var(--primary-color);
	color: white;
}

.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--q::after {
	top: 6.5rem;
	right: 100%;
	background-image: url(../img/icon-hukidashi-tail-primary-left.png);
}

@media screen and (max-width: 1129px) {
	.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--q::after {
		top: 3.5rem;
		right: 100%;
	}
}

.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--q-light {
	background: #04919A;
}

.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--q-light::after {
	background-image: url(../img/icon-hukidashi-tail-primary-light-left.png);
}

.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--a {
	padding: 3.5rem 3.5rem;
	background: #FCFFDC;
	color: var(--font-color);
}

.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--a::after {
	top: 3rem;
	left: 100%;
	background-image: url(../img/icon-hukidashi-tail-yellow-right.png);
}

@media screen and (max-width: 1129px) {
	.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--a::after {
		top: 6rem;
		left: auto;
		right: 98%;
		background-image: url(../img/icon-hukidashi-tail-yellow-left.png);
	}
}

.lp-kaiketsu__slide-content-child-answer-desc {
	margin-top: 2rem;
}

.lp-kaiketsu__slide-content-child-title-letter {
	font-size: 3rem;
	line-height: 1.333;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-kaiketsu__slide-content-child-title-letter {
		font-size: 14px;
	}
}

.lp-kaiketsu__slide-content-child-answer-title-letter {
	font-size: 2.4rem;
	line-height: 1.333;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-kaiketsu__slide-content-child-answer-title-letter {
		font-size: 16px;
	}
}

.lp-kaiketsu__slide-content-child-answer-desc-letter {
	font-size: 2rem;
	line-height: 1.333;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-kaiketsu__slide-content-child-answer-desc-letter {
		font-size: 14px;
	}
}

@media screen and (min-width: 1750px) {
	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--a .lp-kaiketsu__slide-content-child-img {
		margin-right: 0;
	}

	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--a {
		margin-top: -5rem;
	}
}

@media screen and (min-width: 1130px) {
	.lp-kaiketsu__slide-content-child-fukidashi.lp-kaiketsu__slide-content-child-fukidashi--q {
		display: flex;
		justify-content: center;
		flex-direction: column;
		min-height: 12.5rem;
	}

	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--q .lp-kaiketsu__slide-content-child-img {
		padding-top: 1rem;
	}

	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--a .lp-kaiketsu__slide-content-child-row {
		flex-direction: row-reverse;
	}

	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--a .lp-kaiketsu__slide-content-child-txt {
		padding-left: 21.5rem;
	}
}

@media screen and (max-width: 1129px) {
	.lp-kaiketsu__slide-content-child.lp-kaiketsu__slide-content-child--a {
		margin-top: 2rem;
	}
}

/* 私たちがサポートします */
.lp-support {
	position: relative;
}

.lp-support__bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}

@media screen and (max-width: 767px) {

	.lp-support__bg {
		position: static;
		top: 0;
		left: 0;
		z-index: 0;
	}
}

.lp-support__bg-image img {
	width: 100%;
	height: 67rem;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.lp-support__bg-image img {
		height: auto;
	}
}

.lp-support__main {
	padding-top: 43rem;
	position: relative;
	z-index: var(--normal-z);
}

@media screen and (max-width: 767px) {
	.lp-support__main {
		margin-top: -6vw;
		padding-top: 0;
	}
}

.lp-support__box {
	padding: 6.5rem 6.5rem;
	background: rgba(255, 255, 255, .9);
}

@media screen and (max-width: 767px) {
	.lp-support__box {
		padding: 0 40px;
		background: transparent;
	}
}

@media screen and (max-width: 767px) {
	.lp-support__box-heading {
		padding: 4rem 0 0;
		background: rgba(255, 255, 255, .9);
	}
}

@media screen and (max-width: 767px) {
	.lp-support-heading-letter {
		font-size: 20px;
	}
}

@media screen and (max-width: 767px) {
	.lp-support__box-main {
		padding: var(--mt-d) 1rem;
		background: rgba(255, 255, 255, .9);
	}
}

.lp-support__box-main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left: -3rem;
	margin-right: -3rem;
}

@media screen and (max-width: 1299px) {
	.lp-support__box-main-row {
		margin-left: -1rem;
		margin-right: -1rem;
	}
}

@media screen and (max-width: 767px) {
	.lp-support__box-main-row {
		display: block;
		margin: 0;
	}
}

.lp-support__content-wrap {
	margin-top: 3rem;
	width: 25%;
	padding-left: 3rem;
	padding-right: 3rem;
}

@media screen and (max-width: 1299px) {
	.lp-support__content-wrap {
		margin-top: 2rem;
		width: 50%;
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

@media screen and (max-width: 767px) {
	.lp-support__content-wrap {
		margin-top: 0;
		width: 100%;
	}
}

.lp-support__content {
	overflow: hidden;
	position: relative;
	border-radius: 50%;
}

.lp-support__content-txt {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 9rem;
	background: var(--primary-color);
	color: white;
}

@media screen and (max-width: 767px) {
	.lp-support__content-txt {
		height: 90px;
	}
}

.lp-support__content-txt-sub {
	text-align: center;
}

.lp-support__content-txt-sub-title-letter {
	font-size: 1.5rem;
	line-height: 1.333;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-support__content-txt-sub-title-letter {
		font-size: 13px;
	}
}

.lp-support__content-txt-title {
	margin-top: .25rem;
}

.lp-support__content-txt-title-letter {
	font-size: 2rem;
	line-height: 1.333;
	font-weight: 500;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-support__content-txt-title-letter {
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {
	.lp-support__box-main .slide-arrow.slide-arrow--prev-arrow {
		left: 0;
		transform: translate(-150%, -50%);
	}

	.lp-support__box-main .slide-arrow.slide-arrow--next-arrow {
		right: 0;
		transform: translate(150%, -50%);
	}
}

/* 相続手続きプラン */
.lp-plan__desc {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.lp-plan__desc {
		text-align: left;
	}
}

.lp-plan__main-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3rem;
}

@media screen and (max-width: 767px) {
	.lp-plan__main-row {
		grid-template-columns: repeat(1, 1fr);
	}
}

.lp-plan__content {
	border: 1px solid var(--primary-color);
	background: white;
}

.lp-plan__content-title {
	padding: 4rem 0 0;
	text-align: center;
}

.lp-plan__content-desc {
	padding: 4rem 2.5rem;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.lp-plan__content-desc {
		text-align: left;
	}
}

.lp-plan__content-price {
	padding: 2.5rem 0;
	text-align: center;
	background: var(--bg-sky-color);
}

.lp-plan__content-price-letter {
	font-size: 3.2rem;
	line-height: 1;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.lp-plan__content-price-letter {
		font-size: 20px;
	}
}

.lp-plan__content-list-wrap {
	padding: 1rem 0;
}

.lp-plan__content-list-item {
	padding: .35em 2em;
}

@media screen and (max-width: 767px) {
	.lp-plan__content-list-item {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
}

.lp-plan__content-list-item:nth-child(even) {
	background: var(--gray-light);
}

.lp-plan__content-list-item-letter {
	position: relative;
	padding-left: 2em;
}

.lp-plan__content-list-item-letter::after {
	content: '';
	position: absolute;
	top: .05em;
	left: 0;
	width: .9em;
	height: .9em;
	border-radius: 50%;
	background: var(--primary-color--light);
}

/******************************************
上書き等
********************************************/
.layout-faq__q.layout-faq__q--bg-primary {
	background: var(--primary-color);
	color: white;
}

.layout-faq__q.layout-faq__q--bg-primary .layout-faq__heading-letter.layout-faq__heading-letter--q {
	color: var(--lp-accent-color--yellow);
}

.layout-faq__q.layout-faq__q--bg-primary .layout-faq__q-arrow-down {
	border-color: white;
}


.icon-arrow-circle {
	background: white;
}

.icon-arrow-circle::after {
	border-color: var(--primary-color);
}

@media (hover: hover) {
	.icon-arrow-circle:hover {
		background: var(--primary-color);
	}

	.icon-arrow-circle:hover::after {
		border-color: white;
	}
}

/******************************************
reser.css
********************************************/

/*! destyle.css v1.0.13 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model
   ========================================================================== */

* {
	box-sizing: border-box;
}

::before,
::after {
	box-sizing: inherit;
}

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
	line-height: 1.15;
	/* 1 */
	-webkit-text-size-adjust: 100%;
	/* 2 */
	-webkit-tap-highlight-color: transparent;
	/* 3*/
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
	display: block;
}

/* Vertical rhythm
   ========================================================================== */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

/* Headings
   ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	margin: 0;
}

/* Lists (enumeration)
   ========================================================================== */

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

/* Lists (definition)
   ========================================================================== */

dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	box-sizing: content-box;
	/* 1 */
	height: 0;
	/* 1 */
	overflow: visible;
	/* 2 */
	border: 0;
	border-top: 1px solid;
	margin: 0;
	clear: both;
	color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace;
	/* 1 */
	font-size: inherit;
	/* 2 */
}

address {
	font-style: inherit;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

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

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	border-bottom: none;
	/* 1 */
	text-decoration: underline;
	/* 2 */
	text-decoration: underline dotted;
	/* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace;
	/* 1 */
	font-size: inherit;
	/* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/******************************************
ここから基本設定
********************************************/

:root {
	--txt0-size: 4.8rem;
	--txt0-height: 1.2;
	--txt0-weight: 600;
	--txt0-ls: 0;

	--txt1-size: 4.5rem;
	--txt1-height: 1.2;
	--txt1-weight: 600;
	--txt1-ls: 0;

	--txt1-0-size: 4rem;
	--txt1-0-height: 1.2;
	--txt1-0-weight: 600;
	--txt1-0-ls: 0;

	--txt1-1-size: 3.2rem;
	--txt1-1-height: 1.2;
	--txt1-1-weight: 600;
	--txt1-1-ls: 0;

	--txt1-2-size: 3.0rem;
	--txt1-2-height: 1.2;
	--txt1-2-weight: 600;
	--txt1-2-ls: 0;

	--txt1-3-size: 2.8rem;
	--txt1-3-height: 1.2;
	--txt1-3-weight: 600;
	--txt1-3-ls: 0;

	--txt1-4-size: 2.6rem;
	--txt1-4-height: 1.2;
	--txt1-4-weight: 600;
	--txt1-4-ls: 0;

	--txt2-size: 2.4rem;
	--txt2-height: 1.2;
	--txt2-weight: 600;
	--txt2-ls: 0;

	--txt3-size: 2.2rem;
	--txt3-height: 1.5;
	--txt3-weight: 300;
	--txt3-ls: 0;

	--txt4-size: 2.0rem;
	--txt4-height: 1.5;
	--txt4-weight: 300;
	--txt4-ls: 0;

	--txt5-size: 1.8rem;
	--txt5-height: 1.5;
	--txt5-weight: 300;
	--txt5-ls: 0;

	--txt6-size: 1.6rem;
	--txt6-height: 1.5;
	--txt6-weight: 300;
	--txt6-ls: 0;

	--txt6-1-size: 1.5rem;
	--txt6-1-height: 1.5;
	--txt6-1-weight: 300;
	--txt6-1-ls: 0;

	--txt7-size: 1.4rem;
	--txt7-height: 1.5;
	--txt7-weight: 400;
	--txt7-ls: 0;

	--txt7-1-size: 1.3rem;
	--txt7-1-height: 1.5;
	--txt7-1-weight: 400;
	--txt7-1-ls: 0;

	--txt8-size: 1.2rem;
	--txt8-height: 1.5;
	--txt8-weight: 400;
	--txt8-ls: 0;

	--txt9-size: 1rem;
	--txt9-height: 1.5;
	--txt9-weight: 400;
	--txt9-ls: 0;

	--heading-size: 2.6rem;
	--heading-height: 1.3;
	--heading-weight: 600;
	--heading-ls: 0;

	--heading--large-size: 6.4rem;
	--heading--large-height: 1.3;
	--heading--large-weight: 600;
	--heading--large-ls: 0;

	--heading-en-size: 4.5rem;
	--heading-en-height: 1;
	--heading-en-weight: 600;
	--heading-en-ls: 0;

	--btn00-size: 2rem;
	--btn00-weight: 600;
	--btn00-height: 1.5;
	--btn00-ls: 0;

	--btn01-size: 1.8rem;
	--btn01-weight: 600;
	--btn01-height: 1.5;
	--btn01-ls: 0;

	--btn02-size: 1.6rem;
	--btn02-weight: 600;
	--btn02-height: 1.5;
	--btn02-ls: 0;

	--btn03-size: 1.4rem;
	--btn03-weight: 600;
	--btn03-height: 1.5;
	--btn03-ls: 0;

	--menu-size: 1.8rem;
	--menu-weight: 600;
	--menu-height: 1.5;
	--menu-ls: 0;

	--nav-size: 2.4rem;
	--nav-weight: 600;
	--nav-height: 1.5;
	--nav-ls: 0;

	--menu-sub-size: 1.6rem;
	--menu-sub-weight: 600;
	--menu-sub-height: 1.5;
	--menu-sub-ls: 0;

	--menu-sub-nest-size: 1.4rem;
	--menu-sub-nest-weight: 300;
	--menu-sub-nest-height: 1.5;
	--menu-sub-nest-ls: 0;

	--tel-size: 3.2rem;
	--tel-weight: 600;
	--tel-height: 1.2;
	--tel-ls: 0;

	--tel--cv-size: 4.6rem;
	--tel--cv-weight: 600;
	--tel--cv-height: 1.2;
	--tel--cv-ls: 0;

	--tel-txt-size: 1.2rem;
	--tel-txt-weight: 600;
	--tel-txt-height: 1.5;
	--tel-txt-ls: 0;

	--tel-txt--cv-size: 1.6rem;
	--tel-txt--cv-weight: 600;
	--tel-txt--cv-height: 1.5;
	--tel-txt--cv-ls: 0;

	--tel-heading-size: 2.4rem;
	--tel-heading-weight: 600;
	--tel-heading-height: 1.5;
	--tel-heading-ls: 0;

	--cat-size: 1.3rem;
	--cat-ls: 0;

	--time-size: 1.3rem;
	--time--large-size: 1.4rem;
	--time--large-weight: 700;
	--time-ls: 0;
	--time--large-ls: 0;

	--primary-color: #00666C;
	--primary-color--light: #3EB8B8;
	--primary-color--light02: #00969F;
	--primary-color--lighter: #D4E5E5;
	--primary-color--dark: #004448;
	--accent-color: #EEBC17;
	--bg-main-color: #F5F2ED;
	--bg-main-color--light: #F6F6F6;
	--bg-main-color--dark: #F3F3F3;
	--bg-primary-color: #DBF2F0;
	--bg-primary-color--02: #ECF5F5;
	--bg-sky-color: #F0F9F8;
	--bg-gray-color: #EFEFEF;
	--bg-yellow-color: #FFFCEC;
	--bg-yellow-color02: #FDFEEC;
	--font-color: #333;
	--border-color: #707070;
	--border-color--light: #ccc;
	--border-color--lighter: #E5E5E5;
	--border-color--blue: #707F89;
	--border-color--sky: #F0F3F5;
	--gray: #ABABAB;
	--placeholder-color: #888;
	--gray-light: #f5f5f5;
	--gray-light02: #EEEEEE;
	--shadow-color: rgba(0, 0, 0, 0.15);
	--shadow-color--dark: rgba(0, 0, 0, 0.3);
	--shadow-color--darker: rgba(0, 0, 0, 0.6);
	--white-clear: rgba(255, 255, 255, 0.5);
	--black-clear: rgba(0, 0, 0, 0.5);
	--black-clear--light: rgba(0, 0, 0, 0.2);
	--red-color: #BC0000;
	--red-color--light: #FF0707;
	--purple-color: #000B6C;
	--orange-color: #FFA237;
	--pink-color: #F57A7A;
	--line-color: #06C755;
	--black-light-color: #404040;
	--bluegray-color: #98A6B5;
	--sky-color: #91E1E1;
	--sky-color-02: #51B1B7;
	--sky-color-03: #E8FFFF;

	--base-font: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", 'Noto Sans JP', sans-serif;
	--accent-font: 'Noto Serif JP', serif;
	--en-font: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", 'Noto Sans JP', sans-serif;

	--section-padding--small: 4rem;
	--section-padding: 7rem;
	--section-padding--large: 10rem;
	--section-padding--largest: 14rem;
	--section-padding--small: 3.5rem;

	--mt-d: 5rem;
	--mt-d--large: 7rem;
	--mt-d--small: 4rem;
	--mt-d--smaller: 3rem;

	--inner-largest: 1720px;
	--inner-large: 1380px;
	--inner: 1120px;
	--inner-plus-10: 1130px;
	--inner-responsive: 92%;
	--inner-responsive-p: calc(50% - var(--inner-responsive) / 2);

	--normal-transition: 0.3s;
	--fadein-transition: 1s;

	--header-z: 9999;
	--header-z-plus: 19999;
	--header-z-plus-two: 29999;
	--header-z-plus-three: 39999;
	--slick-z: 100;
	--two-z: 2;
	--normal-z: 1;
	--zero-z: 0;
	--minus-z: -1;
	--minus-two-z: -2;

	--header-height: 10.5rem;

	--shadow: 0 3px 6px var(--shadow-color);
}

@media only screen and (max-width: 767px) {
	:root {
		--txt0-size: 24px;
		--txt1-size: 22px;
		--txt1-1-size: 20px;
		--txt1-2-size: 20px;
		--txt1-3-size: 20px;
		--txt1-4-size: 20px;
		--txt2-size: 18px;
		--txt3-size: 16px;
		--txt4-size: 15px;
		--txt5-size: 14px;
		--txt6-size: 14px;
		/* --txt6-1-size: 14px; */
		--txt7-size: 12px;
		--txt7-1-size: 12px;
		--txt8-size: 10px;
		--txt9-size: 10px;

		--heading-size: 16px;
		--heading--large-size: 32px;
		--heading-en-size: 30px;

		--btn00-size: 18px;
		--btn01-size: 16px;
		--btn02-size: 14px;
		--btn03-size: 12px;

		--nav-size: 22px;

		--menu-sub-size: 16px;
		--menu-sub-nest-size: 14px;

		--tel-size: 30px;
		--tel--cv-size: 30px;
		--tel-txt-size: 16px;
		--tel-txt--cv-size: 14px;
		--tel-heading-size: 16px;

		--cat-size: 12px;

		--time-size: 12px;
		--time--large-size: 12px;

		--hissu-size: 14px;
		--input-size: 16px;
		--label-sp-size: 16px;

		--mt-d: 4rem;
		--mt-d--large: 5.5rem;
		--mt-d--small: 2rem;
		--mt-d--smaller: 2rem;

		--header-height: 70px;
	}
}

@media only screen and (max-width: 374px) {
	:root {
		--tel--cv-size: 28px;
		--tel-txt--cv-size: 12px;
	}
}

@media only screen and (min-width: 1380px) {

	html,
	body {
		overflow-y: auto !important;
	}
}

html {
	font-size: 62.5%;
}

@media only screen and (max-width: 1719px) {
	html {
		font-size: 60%;
	}
}

@media only screen and (max-width: 767px) {
	html {
		font-size: 45%;
	}
}

body {
	overflow-x: hidden;
	position: relative;
	max-width: 100%;
	color: var(--font-color);
	font-family: var(--base-font);
	font-size: 1.6em;
	letter-spacing: 0;
}

.section-padding--small {
	padding: var(--section-padding--small) 0;
}

.section-padding--small-t {
	padding-top: var(--section-padding--small);
}

.section-padding--small-b {
	padding-bottom: var(--section-padding--small);
}

.section-padding {
	padding: var(--section-padding) 0;
}

.section-padding-t {
	padding-top: var(--section-padding);
}

.section-padding-b {
	padding-bottom: var(--section-padding);
}

.section-padding--large {
	padding: var(--section-padding--large) 0;
}

.section-padding--large-t {
	padding-top: var(--section-padding--large);
}

.section-padding--large-b {
	padding-bottom: var(--section-padding--large);
}

.section-padding--largest {
	padding: var(--section-padding--largest) 0;
}

.section-padding--largest-t {
	padding-top: var(--section-padding--largest);
}

.section-padding--largest-b {
	padding-bottom: var(--section-padding--largest);
}

.section-padding--small {
	padding: var(--section-padding--small) 0;
}

.section-padding--small-t {
	padding-top: var(--section-padding--small);
}

.section-padding--small-b {
	padding-bottom: var(--section-padding--small);
}

@media only screen and (max-width: 767px) {
	.section-padding-sp {
		padding: var(--section-padding) 0;
	}

	.section-padding-t-sp {
		padding-top: var(--section-padding);
	}

	.section-padding-b-sp {
		padding-bottom: var(--section-padding);
	}
}

@media only screen and (max-width: 767px) {
	.section-padding--small-sp {
		padding: var(--section-padding--small) 0;
	}

	.section-padding--small-t-sp {
		padding-top: var(--section-padding--small);
	}

	.section-padding--small-b-sp {
		padding-bottom: var(--section-padding--small);
	}
}

@media only screen and (max-width: 767px) {
	.section-padding--none-sp {
		padding: 0;
	}

	.section-padding--none-t-sp {
		padding-top: 0;
	}

	.section-padding--none-b-sp {
		padding-bottom: 0;
	}
}

.inner-largest {
	width: var(--inner-largest);
	max-width: var(--inner-largest);
	margin: 0 auto
}

@media only screen and (max-width: 1719px) {
	.inner-largest {
		width: var(--inner-large)
	}
}

@media only screen and (max-width: 1379px) {
	.inner-largest {
		width: var(--inner-responsive)
	}
}

.inner-large {
	width: var(--inner-large);
	max-width: var(--inner-large);
	margin: 0 auto
}

@media only screen and (max-width: 1379px) {
	.inner-large {
		width: var(--inner-responsive)
	}
}

.inner {
	width: var(--inner);
	max-width: var(--inner);
	margin: 0 auto
}

@media only screen and (max-width: 1119px) {
	.inner {
		width: var(--inner-responsive)
	}
}

.inner-plus-10 {
	width: var(--inner-plus-10);
	max-width: var(--inner-plus-10);
	margin: 0 auto
}

@media only screen and (max-width: 1129px) {
	.inner-plus-10 {
		width: var(--inner-responsive)
	}
}

.inner-all {
	width: var(--inner-responsive);
	margin: 0 auto
}

@media only screen and (max-width: 1119px) {
	.inner-tab-w-100 {
		width: 100%;
	}
}

@media only screen and (max-width: 767px) {
	.inner-sp-w-100 {
		width: 100%;
	}
}

.txt0 {
	font-size: var(--txt0-size);
	line-height: var(--txt0-height);
	font-weight: var(--txt0-weight);
	letter-spacing: var(--txt0-ls)
}

.txt1 {
	font-size: var(--txt1-size);
	line-height: var(--txt1-height);
	font-weight: var(--txt1-weight);
	letter-spacing: var(--txt1-ls)
}

.txt1-0 {
	font-size: var(--txt1-0-size);
	line-height: var(--txt1-0-height);
	font-weight: var(--txt1-0-weight);
	letter-spacing: var(--txt1-0-ls)
}

.txt1-1 {
	font-size: var(--txt1-1-size);
	line-height: var(--txt1-1-height);
	font-weight: var(--txt1-1-weight);
	letter-spacing: var(--txt1-1-ls)
}

.txt1-2 {
	font-size: var(--txt1-2-size);
	line-height: var(--txt1-2-height);
	font-weight: var(--txt1-2-weight);
	letter-spacing: var(--txt1-2-ls)
}

.txt1-3 {
	font-size: var(--txt1-3-size);
	line-height: var(--txt1-3-height);
	font-weight: var(--txt1-3-weight);
	letter-spacing: var(--txt1-3-ls)
}

.txt1-4 {
	font-size: var(--txt1-4-size);
	line-height: var(--txt1-4-height);
	font-weight: var(--txt1-4-weight);
	letter-spacing: var(--txt1-4-ls)
}

.txt2 {
	font-size: var(--txt2-size);
	line-height: var(--txt2-height);
	font-weight: var(--txt2-weight);
	letter-spacing: var(--txt2-ls)
}

.txt3 {
	font-size: var(--txt3-size);
	line-height: var(--txt3-height);
	font-weight: var(--txt3-weight);
	letter-spacing: var(--txt3-ls)
}

.txt4 {
	font-size: var(--txt4-size);
	line-height: var(--txt4-height);
	font-weight: var(--txt4-weight);
	letter-spacing: var(--txt4-ls)
}

.txt5 {
	font-size: var(--txt5-size);
	line-height: var(--txt5-height);
	font-weight: var(--txt5-weight);
	letter-spacing: var(--txt5-ls)
}

.txt6 {
	font-size: var(--txt6-size);
	line-height: var(--txt6-height);
	font-weight: var(--txt6-weight);
	letter-spacing: var(--txt6-ls)
}

.txt6-1 {
	font-size: var(--txt6-1-size);
	line-height: var(--txt6-1-height);
	font-weight: var(--txt6-1-weight);
	letter-spacing: var(--txt6-1-ls)
}

.txt7 {
	font-size: var(--txt7-size);
	line-height: var(--txt7-height);
	font-weight: var(--txt7-weight);
	letter-spacing: var(--txt7-ls)
}

.txt7-1 {
	font-size: var(--txt7-1-size);
	line-height: var(--txt7-1-height);
	font-weight: var(--txt7-1-weight);
	letter-spacing: var(--txt7-1-ls)
}

.txt8 {
	font-size: var(--txt8-size);
	line-height: var(--txt8-height);
	font-weight: var(--txt8-weight);
	letter-spacing: var(--txt8-ls)
}

.txt9 {
	font-size: var(--txt9-size);
	line-height: var(--txt9-height);
	font-weight: var(--txt9-weight);
	letter-spacing: var(--txt9-ls)
}

.fw700 {
	font-weight: 700;
}

.fw600 {
	font-weight: 600;
}

.fw500 {
	font-weight: 500;
}

.fw400 {
	font-weight: 400;
}

.fw300 {
	font-weight: 300;
}

.lh1 {
	line-height: 1;
}

.lh1-2 {
	line-height: 1.2;
}

.lh1-5 {
	line-height: 1.5;
}

.lh1-6 {
	line-height: 1.6;
}

.lh1-7 {
	line-height: 1.7;
}

.lh1-8 {
	line-height: 1.8;
}

.lh1-9 {
	line-height: 1.9;
}

.lh2 {
	line-height: 2;
}

.lh2-1 {
	line-height: 2.1;
}

.lh2-3 {
	line-height: 2.3;
}

.lh2-6 {
	line-height: 2.6;
}

.lh3 {
	line-height: 3;
}

.ls0 {
	letter-spacing: 0;
}

.ls01 {
	letter-spacing: 0.2em;
}

.ls03 {
	letter-spacing: 0.3em;
}

.ls05 {
	letter-spacing: 0.5em;
}

.base-font {
	font-family: var(--base-font);
}

.accent-font {
	font-family: var(--accent-font);
}

.en-font {
	font-family: var(--en-font);
}

.primary-color {
	color: var(--primary-color);
}

.accent-color {
	color: var(--accent-color);
}

.gray-color {
	color: var(--gray);
}

.white-color {
	color: #fff;
}

.red-color {
	color: var(--red-color);
}

.red-color--light {
	color: var(--red-color--light);
}

.font-color {
	color: var(--font-color);
}

.gray-blue-color {
	color: var(--border-color--blue);
}

.mt-d {
	margin-top: var(--mt-d)
}

.mt-d--large {
	margin-top: var(--mt-d--large)
}

.mt-d--small {
	margin-top: var(--mt-d--small)
}

.mt-d--smaller {
	margin-top: var(--mt-d--smaller)
}

@media only screen and (max-width: 767px) {
	.mt-sp-none {
		margin-top: 0;
	}
}

.mt-d-plus+.mt-d-plus {
	margin-top: var(--mt-d);
}

.mt1em {
	margin-top: 1em;
}

.mt1em-plus+.mt1em-plus {
	margin-top: 1em;
}

.mt5 {
	margin-top: 0.5rem;
}

.mt10 {
	margin-top: 1rem;
}

.mt15 {
	margin-top: 1.5rem;
}

.mt20 {
	margin-top: 2rem;
}

.mt25 {
	margin-top: 2.5rem;
}

.mt30 {
	margin-top: 3rem;
}

.mt35 {
	margin-top: 3.5rem;
}

.mt40 {
	margin-top: 4rem;
}

.mt45 {
	margin-top: 4.5rem;
}

.mt50 {
	margin-top: 5rem;
}

.mt55 {
	margin-top: 5.5rem;
}

.mt60 {
	margin-top: 6rem;
}

.mr05em {
	margin-right: 0.5em;
}

.mr10em {
	margin-right: 1em;
}

.mr-minus-03em {
	margin-right: -0.3em;
}

.mr-minus-05em {
	margin-right: -0.5em;
}

.bg-main {
	background-color: var(--bg-main-color);
}

.bg-primary {
	background-color: var(--bg-primary-color);
}

.bg-primary--02 {
	background-color: var(--bg-primary-color--02);
}

.bg-primary-base {
	background-color: var(--primary-color);
}

.bg-gray {
	background-color: var(--bg-gray-color);
}

.bg-sky {
	background-color: var(--bg-sky-color);
}

.bg-white {
	background-color: #fff;
}

/* 背景画像 */
.bg-image {
	position: relative;
}

.bg-image__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: var(--minus-z);
}

@media only screen and (max-width: 1119px) {
	.bg-image__img.bg-image__img--sp-static {
		margin-top: var(--mt-d--small);
		position: static;
	}
}

.bg-image__image {
	height: 100%;
}

.bg-image__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bg-hougan {
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), var(--border-color--lighter) calc(100% - 1px)),
		linear-gradient(90deg, transparent calc(100% - 1px), var(--border-color--lighter) calc(100% - 1px));
	background-size: 3.5rem 3.5rem;
	background-repeat: repeat;
	background-position: center center;
}

.border-bottom {
	border-bottom: 1px solid CurrentColor;
}

.underline {
	text-decoration: underline;
}

@media (hover: hover) {
	.underline:hover {
		text-decoration: none;
	}
}

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

@media (hover: hover) {
	.hover-underline:hover {
		text-decoration: underline;
	}
}

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

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

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

.tlma {
	display: table;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (max-width: 1119px) {
	.text-center--tab {
		text-align: center;
	}

	.text-left--tab {
		text-align: left;
	}

	.tlma--tab {
		display: table;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (max-width: 767px) {
	.text-center--sp {
		text-align: center;
	}

	.text-left--sp {
		text-align: left;
	}

	.tlma--sp {
		display: table;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}
}

.none {
	display: none;
}

.block {
	display: block;
}

.inline {
	display: inline;
}

.inline-block {
	display: inline-block;
}

@media only screen and (max-width: 1119px) {
	.none--tab {
		display: none;
	}

	.block--tab {
		display: block;
	}

	.inline--tab {
		display: inline;
	}

	.inline-block--tab {
		display: inline-block;
	}
}

@media only screen and (max-width: 767px) {
	.none--sp {
		display: none;
	}

	.block--sp {
		display: block;
	}

	.inline--sp {
		display: inline;
	}

	.inline-block--sp {
		display: inline-block;
	}
}

@media only screen and (max-width: 500px) {
	.none--mobile {
		display: none;
	}

	.block--mobile {
		display: block;
	}

	.inline--mobile {
		display: inline;
	}

	.inline-block--mobile {
		display: inline-block;
	}
}

@media only screen and (max-width: 374px) {
	.none--se {
		display: none;
	}

	.block--se {
		display: block;
	}

	.inline--se {
		display: inline;
	}

	.inline-block--se {
		display: inline-block;
	}
}

.textbr {
	display: inline-block;
}

@media only screen and (min-width: 1119px) {
	.textbr--pc-only {
		display: inline-block;
	}
}

.white-space-nowrap {
	white-space: nowrap;
}

@media only screen and (min-width: 1119px) {
	.white-space-nowrap--pc-only {
		white-space: nowrap;
	}
}

.break-all {
	word-break: break-all;
}

img {
	max-width: 100%;
	height: auto;
}

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

.video-100 video {
	width: 100%;
	height: auto;
}

@media (hover: hover) {
	.hover-op:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}

	.hover-op--clear:hover {
		opacity: .5;
		transition: var(--normal-transition);
	}
}

.mw-1270 {
	max-width: 1270px;
	margin-left: auto;
	margin-right: auto;
}

.mw-1135 {
	max-width: 1135px;
	margin-left: auto;
	margin-right: auto;
}

.mw-1050 {
	max-width: 1050px;
	margin-left: auto;
	margin-right: auto;
}

.mw-1025 {
	max-width: 1025px;
	margin-left: auto;
	margin-right: auto;
}

.mw-998 {
	max-width: 998px;
	margin-left: auto;
	margin-right: auto;
}

.mw-980 {
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}

.mw-912 {
	max-width: 912px;
	margin-left: auto;
	margin-right: auto;
}

.mw-885 {
	max-width: 885px;
	margin-left: auto;
	margin-right: auto;
}

.mw-785 {
	max-width: 785px;
	margin-left: auto;
	margin-right: auto;
}

.mw-728 {
	max-width: 728px;
	margin-left: auto;
	margin-right: auto;
}

.mw-626 {
	max-width: 626px;
	margin-left: auto;
	margin-right: auto;
}

.mw-600 {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.mw-555 {
	max-width: 555px;
	margin-left: auto;
	margin-right: auto;
}

.mw-410 {
	max-width: 410px;
	margin-left: auto;
	margin-right: auto;
}

.mw--ml0 {
	margin-left: 0;
}

.h-100 {
	height: 100%;
}

.o-hidden {
	overflow: hidden;
}

.p-relative {
	position: relative;
}

.z-zere {
	z-index: var(--zero-z);
}

/* 電話番号 */
.tel-number {
	display: inline-block;
	position: relative;
	padding: .1em 1.7em;
	padding-right: 0;
	color: var(--primary-color);
	font-family: var(--en-font);
	font-size: var(--tel-size);
	line-height: var(--tel-height);
	font-weight: var(--tel-weight);
	letter-spacing: var(--tel-ls)
}

.tel-number.tel-number--large {
	font-size: var(--tel--cv-size);
	line-height: var(--tel--cv-height);
	font-weight: var(--tel--cv-weight);
	letter-spacing: var(--tel--cv-ls)
}

.tel-number::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 1.2em;
	height: 1.2em;
	background-image: url(../img/icon-tel-primary.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.tel-number.tel-number--icon-reverse {
	padding-left: 1em;
}

.tel-number.tel-number--icon-reverse::after {
	top: auto;
	bottom: .2em;
	width: .65em;
	height: .65em;
	background-image: url(../img/icon-tel-reverse-primary.svg);
}

/* 電話番号 レイアウト */
.tel {
	display: inline-block;
}

.tel__txt {
	margin-top: .5rem;
	text-align: center;
}

.tel__txt-letter {
	font-size: var(--tel-txt-size);
	line-height: var(--tel-txt-height);
	font-weight: var(--tel-txt-weight);
	letter-spacing: var(--tel-txt-ls)
}

@media (hover: hover) {
	.tel:hover {
		opacity: .5;
		transition: var(--normal-transition);
	}
}

/* 電話番号 レイアウト */
.tel-box {
	display: block;
	text-align: center;
	padding: 2.5rem 6rem;
	border-radius: .8rem;
	background: white;
}

@media screen and (max-width: 767px) {
	.tel-box {
		padding: 4rem 2rem;
		border-radius: 5px;
	}
}

.tel-box__heading {
	text-align: center;
}

.tel-box__heading-letter {
	color: var(--border-color--blue);
	font-size: var(--tel-heading-size);
	line-height: var(--tel-heading-height);
	font-weight: var(--tel-heading-weight);
	letter-spacing: var(--tel-heading-ls);
}

.tel-box__number {
	margin-top: 2rem;
	padding-bottom: 2rem;
}

.tel-box__txt {
	padding-top: 1.5rem;
	border-top: 1px solid var(--border-color--blue);
	color: var(--border-color--blue);
}

.tel-box__txt-letter {
	font-size: var(--tel-txt--cv-size);
	line-height: var(--tel-txt--cv-height);
	font-weight: 300;
	letter-spacing: var(--tel-txt--cv-ls)
}

@media (hover: hover) {
	.tel-box:hover {
		background: var(--bg-main-color);
		transition: var(--normal-transition);
	}
}

/* プラスアイコン */
.icon-plus {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	line-height: 1;
	width: 15px;
	height: 1px;
	background: var(--primary-color);
}

.icon-plus.icon-plus--large {
	width: 30px;
	height: 2px;
}

.icon-plus.icon-plus--in-txt {
	width: .8em;
	background: currentColor;
}

.icon-plus.icon-plus--white {
	background: white;
}

.icon-plus::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: inherit;
	border-radius: inherit;
	transform: rotate(90deg);
}

.icon-plus.active::after {
	display: none;
}

/* 丸のプラスアイコン */
.icon-plus-circle {
	display: inline-block;
	position: relative;
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	background: var(--primary-color);
}

@media screen and (max-width: 767px) {
	.icon-plus-circle {
		width: 30px;
		height: 30px;
	}
}

.icon-plus-circle__border-wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.icon-plus-circle__border {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	line-height: 1;
	width: 1.6rem;
	height: 1px;
	background: white;
}

@media screen and (max-width: 767px) {
	.icon-plus-circle__border {
		width: 16px;
	}
}

.icon-plus-circle__border::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: inherit;
	border-radius: inherit;
	transform: rotate(90deg);
}

.icon-plus-circle.active .icon-plus-circle__border::after {
	display: none;
}

/* 丸の＞ */
.icon-arrow-circle {
	display: inline-block;
	position: relative;
	width: 6.4rem;
	height: 6.4rem;
	border-radius: 50%;
	background: var(--primary-color--light);
	box-shadow: 0 0 10px rgba(0, 0, 0, .8);
}

@media screen and (max-width: 767px) {
	.icon-arrow-circle {
		width: 30px;
		height: 30px;
	}
}

.icon-arrow-circle::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -.5em;
	margin-left: -.75em;
	width: 1em;
	height: 1em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	border-top: 2px solid white;
	border-right: 2px solid white;
}

@media screen and (max-width: 767px) {
	.icon-arrow-circle::after {
		margin-top: -.325em;
		margin-left: -.425em;
		width: .65em;
		height: .65em;
		border-width: 1px;
	}
}

.icon-arrow-circle.icon-arrow-circle--reverse::after {
	margin-left: -.25em;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

@media screen and (max-width: 767px) {
	.icon-arrow-circle.icon-arrow-circle--reverse::after {
		margin-left: -.225em;
	}
}

@media (hover: hover) {
	.icon-arrow-circle:hover {
		background: white;
		transition: var(--normal-transition);
	}

	.icon-arrow-circle:hover::after {
		border-color: var(--primary-color--light);
		transition: var(--normal-transition);
	}
}

.icon-circle-icon-txt {
	position: relative;
}

.icon-circle-icon-txt__num {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
}

.icon-circle-icon-txt__num-letter {
	color: var(--primary-color);
	font-family: var(--accent-font);
	font-size: 3.6rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.icon-circle-icon-txt__num-letter {
		font-size: 36px;
	}
}

.icon-circle-icon-txt__title {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
}

.icon-circle-icon-txt__title-letter {
	color: var(--primary-color);
	font-size: 2.5rem;
	line-height: 1.7;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.icon-circle-icon-txt__title-letter {
		font-size: 25px;
	}
}

.icon-circle-icon-txt__img {
	text-align: center;
}

.icon-circle-icon-txt__image img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 767px) {
	.icon-circle-icon-txt__image img {
		width: 205px;
	}
}

/* 縦並び見出し */
.heading-center {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.heading-center.heading-center--sp-ta-left {
		text-align: left;
	}
}

.heading-center__jp {
	margin-top: 1.7rem;
}

.heading-center__jp.heading-center__jp--mt-large {
	margin-top: 2rem;
}

.heading-center__desc {
	margin-top: 4rem;
	text-align: left;
}

/* 縦並び左揃え見出し */
.heading-left {
	text-align: left;
}

.heading-left__desc {
	margin-top: 1.7rem;
}

.heading-left__desc.heading-left__desc--mt-large {
	margin-top: 4rem;
}

.heading-left__desc.heading-left__desc--ml {
	padding-left: 3.5rem;
}

@media screen and (max-width: 767px) {
	.heading-left__desc.heading-left__desc--ml {
		padding-left: 0;
	}
}

.heading-left__desc {
	margin-top: 4rem;
	text-align: left;
}

/* 帯付き見出し */
.heading-obi {
	padding: 5rem 0;
	background: var(--primary-color);
	color: white;
	text-align: center;
}

/* 左に線がある見出し */
.heading-left-border {
	position: relative;
	padding-left: 3.9rem;
}

.heading-left-border::after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: .9rem;
	height: 100%;
	background: var(--primary-color--light);
}

/* 下に線がある見出し */
.heading-has-bottom-border {
	position: relative;
	padding-bottom: .5em;
}

.heading-has-bottom-border::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 10rem;
	height: 1px;
	background: var(--primary-color);
}

/* 上下の線に囲まれている出し */
.heading-top-bottom-border {
	padding: 1.8em 0;
	border-top: 1px solid var(--primary-color--light);
	border-bottom: 1px solid var(--primary-color--light);
	color: var(--primary-color--light);
}

/* テキストの前にアイコンがある見出し */
.heading-before-icon {
	display: inline-block;
	position: relative;
	padding-left: 2em;
}

.heading-before-icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.heading-before-icon.heading-before-icon--folder::after {
	width: 1.1em;
	height: 1em;
	background-image: url(../img/icon-folder-open-primary.svg);
}

/* テキストの前に■アイコンがある見出し */
.heading-icon-box {
	display: inline-block;
	position: relative;
	padding-left: 2em;
}

.heading-icon-box__icon {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.heading-icon-box__icon-box {
	position: relative;
	width: 1.5em;
	height: 1.5em;
	background: var(--primary-color);
}

.heading-icon-box__icon-box::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--calculator::after {
	width: .65em;
	height: .83em;
	background-image: url(../img/icon-calculator-white.svg);
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--maplawyer::after {
	width: .95em;
	height: .74em;
	background-image: url(../img/icon-maplawyer-white.svg);
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--kankonsosai::after {
	width: .75em;
	height: .75em;
	background-image: url(../img/icon-kankonsosai-white.png);
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--mapbank::after {
	width: .55em;
	height: .85em;
	background-image: url(../img/icon-mapbank-white.svg);
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--maphealth::after {
	width: .7em;
	height: .7em;
	background-image: url(../img/icon-maphealth-white.svg);
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--home::after {
	width: 1.15em;
	height: .9em;
	background-image: url(../img/icon-home-white.svg);
}

.heading-icon-box__icon-box.heading-icon-box__icon-box--featherbookopen::after {
	width: .9em;
	height: .82em;
	background-image: url(../img/icon-featherbookopen-white.svg);
}

.heading-icon-box-letter {
	color: var(--primary-color);
	font-size: 4.6rem;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: 0
}

@media screen and (max-width: 767px) {
	.heading-icon-box-letter {
		font-size: 26px;
	}
}


/* 下線がある見出し */
.heading-bottom-border {
	padding-bottom: .75em;
	border-bottom: 1px solid var(--border-color);
}

.heading-bottom-border.heading-bottom-border--sky {
	border-bottom-color: var(--sky-color);
}

.heading-bottom-border.heading-bottom-border--bold {
	border-bottom-width: 7px;
}

/* 見出しのテキスト */
.heading-en-letter {
	font-size: 0;
}

.heading-en-letter::after {
	content: attr(data-letter);
	font-family: var(--en-font);
	font-size: var(--heading-en-size);
	line-height: var(--heading-en-height);
	font-weight: var(--heading-en-weight);
	letter-spacing: var(--heading-en-ls);
}

.heading-letter {
	font-size: var(--heading-size);
	line-height: var(--heading-height);
	font-weight: var(--heading-weight);
	letter-spacing: var(--heading-ls);
}

.heading-letter--large {
	font-size: var(--heading--large-size);
	line-height: var(--heading--large-height);
	font-weight: var(--heading--large-weight);
	letter-spacing: var(--heading--large-ls);
}

.heading-letter--largest {
	font-size: var(--heading--largest-size);
	line-height: var(--heading--largest-height);
	font-weight: var(--heading--largest-weight);
	letter-spacing: var(--heading--largest-ls);
}

/* heading-box-w-100 */
.heading-box-w-100 {
	padding: 3rem 0;
	background: var(--bg-sky-color);
}

.heading-box-w-100__desc {
	margin-top: 2rem;
}

/* ボタン */
.btn {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 20rem;
	border-radius: 5rem;
	padding: 1rem 2rem;
	border: 2px solid var(--primary-color);
	background: var(--primary-color);
	color: white;
	font-size: var(--btn02-size);
	line-height: var(--btn02-height);
	font-weight: var(--btn02-weight);
	letter-spacing: var(--btn02-ls);
}

@media screen and (max-width: 767px) {
	.btn {
		border-radius: 50px;
		min-width: 200px;
		padding: 5px 20px;
	}
}

@media screen and (max-width: 374px) {
	.btn {
		min-width: 170px;
	}
}

.btn.btn--border {
	background: white;
	color: var(--primary-color);
}

.btn.btn--min-w-small {
	min-width: 24rem;
}

@media screen and (max-width: 767px) {
	.btn.btn--min-w-small {
		min-width: 240px;
	}
}

.btn.btn--w-100 {
	display: block;
	width: 100%;
	min-width: auto;
}

@media (hover: hover) {

	.btn-trigger:hover .btn,
	.btn:hover {
		background: white;
		color: var(--primary-color);
		transition: var(--normal-transition);
	}

	.btn-trigger:hover .btn.btn--border,
	.btn.btn--border:hover {
		background: var(--primary-color);
		color: white;
	}
}

/* ＞付きのbtn */
.btn-arrow {
	display: inline-block;
	position: relative;
	text-align: left;
	min-width: 28.2rem;
	border-radius: 5rem;
	padding: 1rem 3rem;
	border: 2px solid var(--primary-color);
	background: white;
	color: var(--primary-color);
	font-size: var(--btn02-size);
	line-height: var(--btn02-height);
	font-weight: var(--btn02-weight);
	letter-spacing: var(--btn02-ls);
}

@media screen and (max-width: 767px) {
	.btn-arrow {
		border-radius: 50px;
		min-width: 265px;
		padding: 10px 30px;
	}
}

@media screen and (max-width: 374px) {
	.btn-arrow {
		min-width: auto;
		width: 100%;
	}
}

.btn-arrow::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1.2em;
	margin-top: -0.35em;
	width: 0.5em;
	height: 0.5em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center bottom;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
}


@media (hover: hover) {

	.btn-trigger:hover .btn-arrow,
	.btn-arrow:hover {
		background: var(--primary-color);
		color: white;
		transition: var(--normal-transition);
	}

	.btn-trigger:hover .btn-arrow::after,
	.btn-arrow:hover::after {
		right: .5em;
		transition: right var(--normal-transition);
	}
}

/* 矢印→付きのbtn */
.btn-yajirushi {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 32.8rem;
	border-radius: 5rem;
	padding: 1rem 3rem;
	padding-right: 4em;
	border: 2px solid var(--primary-color);
	background: var(--primary-color);
	color: white;
	font-size: var(--btn02-size);
	line-height: var(--btn02-height);
	font-weight: var(--btn02-weight);
	letter-spacing: var(--btn02-ls);
}

@media screen and (max-width: 767px) {
	.btn-yajirushi {
		border-radius: 50px;
		min-width: 330px;
		padding: 10px 30px;
		padding-right: 4em;
	}
}

@media screen and (max-width: 374px) {
	.btn-yajirushi {
		min-width: auto;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
}

.btn-yajirushi.btn-yajirushi--min-w-large {
	min-width: 40.3rem;
}

@media screen and (max-width: 767px) {
	.btn-yajirushi.btn-yajirushi--min-w-large {
		min-width: 400px;
	}
}

@media screen and (max-width: 500px) {
	.btn-yajirushi.btn-yajirushi--min-w-large {
		min-width: auto;
		width: 100%;
	}
}

.btn-yajirushi.btn-yajirushi--ta-center {
	text-align: center;
	padding-right: 3em;
}

@media screen and (max-width: 374px) {
	.btn-yajirushi.btn-yajirushi--ta-center {
		padding-right: 0;
	}
}

.btn-yajirushi::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1.2em;
	margin-top: -0.5em;
	width: 1em;
	height: 1em;
	background-image: url(../img/icon-yajirushi-white-right.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.btn-yajirushi.btn-yajirushi--reverse {
	padding-right: 3rem;
	padding-left: 4em;
}

@media screen and (max-width: 767px) {
	.btn-yajirushi.btn-yajirushi--reverse {
		padding-right: 30px;
		padding-left: 4em;
	}
}

.btn-yajirushi.btn-yajirushi--reverse.btn-yajirushi--ta-center {
	padding-left: 3em;
}

@media screen and (max-width: 374px) {
	.btn-yajirushi.btn-yajirushi--reverse.btn-yajirushi--ta-center {
		padding-left: 0;
	}
}

.btn-yajirushi.btn-yajirushi--reverse::after {
	right: auto;
	left: 1.2em;
	background-image: url(../img/icon-yajirushi-white-left.svg);
}

@media (hover: hover) {

	.btn-trigger:hover .btn-yajirushi,
	.btn-yajirushi:hover {
		background: white;
		color: var(--primary-color);
		transition: var(--normal-transition);
	}

	.btn-trigger:hover .btn-yajirushi::after,
	.btn-yajirushi:hover::after {
		background-image: url(../img/icon-yajirushi-primary-right.svg);
		right: .5em;
		transition: var(--normal-transition);
	}

	.btn-trigger:hover .btn-yajirushi.btn-yajirushi--reverse::after,
	.btn-yajirushi.btn-yajirushi--reverse:hover::after {
		background-image: url(../img/icon-yajirushi-primary-left.svg);
		left: .5em;
	}
}

/* headerのcv btn */
.btn-cv {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 33.8rem;
	border-radius: .5rem;
	padding: 1rem 2rem;
	border: 1px solid var(--primary-color);
	background: white;
	color: var(--primary-color);
	font-size: var(--btn02-size);
	line-height: var(--btn02-height);
	font-weight: var(--btn02-weight);
	letter-spacing: var(--btn02-ls);
}

@media screen and (max-width: 767px) {
	.btn-cv {
		padding: 10px 20px;
	}
}

.btn-cv.btn-cv--primary {
	background: var(--primary-color);
	color: white;
}

.btn-cv__txt {
	display: inline-block;
	position: relative;
	padding-left: 1em;
}

.btn-cv__txt::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .3em 0 .3em .4em;
	border-color: transparent transparent transparent currentColor;
}

@media (hover: hover) {

	.btn-trigger:hover .btn-cv,
	.btn-cv:hover {
		background: var(--primary-color);
		color: white;
		transition: var(--normal-transition);
	}

	.btn-trigger:hover .btn-cv.btn-cv--primary,
	.btn-cv.btn-cv--primary:hover {
		background: white;
		color: var(--primary-color);
	}
}

/* アイコン付きテキストボタン */
.btn-before-icon {
	display: inline-block;
}

.btn-before-icon__row {
	display: flex;
	align-items: center;
}

.btn-before-icon__img {
	margin-right: .7rem;
}

@media screen and (max-width: 767px) {
	.btn-before-icon__img {
		margin-right: 7px;
	}
}

.btn-before-icon__icon {
	position: relative;
	width: 3.3rem;
	height: 3.3rem;
	border-radius: 50%;
	background: var(--primary-color);
}

@media screen and (max-width: 767px) {
	.btn-before-icon__icon {
		width: 33px;
		height: 33px;
	}
}

.btn-before-icon__icon.btn-before-icon__icon--mail {
	background: var(--primary-color--light);
}

.btn-before-icon__icon.btn-before-icon__icon--line {
	background: var(--line-color);
}

.btn-before-icon__icon.btn-before-icon__icon--online {
	background: var(--primary-color);
}

.btn-before-icon__icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.btn-before-icon__icon.btn-before-icon__icon--mail::after {
	width: 1.575rem;
	height: 1.5rem;
	background-image: url(../img/icon-mail-white.svg);
}

.btn-before-icon__icon.btn-before-icon__icon--line::after {
	width: 1.8rem;
	height: 1.7rem;
	background-image: url(../img/icon-line-white.svg);
}

.btn-before-icon__icon.btn-before-icon__icon--online::after {
	width: 1.8rem;
	height: 1.2rem;
	background-image: url(../img/icon-online-white.svg);
}

@media screen and (max-width: 767px) {
	.btn-before-icon__icon.btn-before-icon__icon--mail::after {
		width: 15.75px;
		height: 15px;
	}

	.btn-before-icon__icon.btn-before-icon__icon--online::after {
		width: 15.75px;
		height: 15px;
	}

	.btn-before-icon__icon.btn-before-icon__icon--line::after {
		width: 18px;
		height: 12px;
	}
}

.btn-before-icon__letter {
	font-size: var(--btn03-size);
	line-height: var(--btn03-height);
	font-weight: var(--btn03-weight);
	letter-spacing: var(--btn03-ls);
}

@media (hover: hover) {
	.btn-before-icon:hover {
		opacity: .5;
		transition: var(--normal-transition);
	}
}

/* 三角付きのボタン */
.btn-tri {
	display: inline-block;
	position: relative;
	min-width: 25.5rem;
	padding: 1rem 3rem;
	padding-right: calc(3rem + 1em);
	border-radius: 5rem;
	border: 1px solid var(--primary-color);
	background: white;
	color: var(--primary-color);
	font-size: var(--btn01-size);
	line-height: var(--btn01-height);
	font-weight: var(--btn01-weight);
	letter-spacing: var(--btn01-ls);
}

@media screen and (max-width: 767px) {
	.btn-tri {
		text-align: left;
		min-width: 255px;
		padding: 10px 35px;
		padding-right: calc(35px + 1em);
		border-radius: 50px;
	}
}

.btn-tri::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 3rem;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .5em 0 .5em 1em;
	border-color: transparent transparent transparent var(--accent-color);
}

@media (hover: hover) {

	.btn-trigger:hover .btn-tri,
	.btn-tri:hover {
		background: var(--primary-color);
		color: white;
		transition: var(--normal-transition);
	}
}

/* 三角付きのボタン（テキスト形式） */
.btn-txt-tri {
	display: inline-block;
	position: relative;
	padding-right: 1.5em;
	border-bottom: 1px solid currentColor;
	color: var(--primary-color--light);
	font-size: var(--btn03-size);
	line-height: var(--btn03-height);
	font-weight: 300;
	letter-spacing: var(--btn03-ls);
}

.btn-txt-tri::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .5em 0 .5em .87em;
	border-color: transparent transparent transparent currentColor;
}

@media (hover: hover) {
	.btn-txt-tri:hover {
		border-bottom-color: transparent;
	}
}

/* 四角い大きいボタン */
.btn-block-square {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 100%;
	min-height: 13rem;
	padding: 3rem 1rem;
	background: white;
	color: var(--primary-color);
	font-size: var(--btn01-size);
	line-height: var(--btn01-height);
	font-weight: var(--btn01-weight);
	letter-spacing: var(--btn01-ls);
}

@media screen and (max-width: 767px) {
	.btn-block-square {
		min-height: 130px;
		padding: 30px 10px;
	}
}

.btn-block-square.btn-block-square--h-small {
	min-height: 11rem;
}

@media screen and (max-width: 767px) {
	.btn-block-square.btn-block-square--h-small {
		min-height: 110px;
	}
}

.btn-block-square.btn-block-square--r {
	border-radius: .8rem;
}

.btn-block-square.btn-block-square--fs-large {
	font-size: var(--btn00-size);
	line-height: var(--btn00-height);
	font-weight: var(--btn00-weight);
	letter-spacing: var(--btn00-ls);
}

.btn-block-square.btn-block-square--primary {
	border: 1px solid var(--primary-color);
	background: var(--primary-color);
	color: white;
}

@media (hover: hover) {
	.btn-block-square:hover {
		background: var(--primary-color);
		color: white;
		transition: var(--normal-transition);
	}

	.btn-block-square.btn-block-square--primary:hover {
		background: white;
		color: var(--primary-color);
	}
}

/* アイコン付きボタン */
.btn-icon-border {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 40rem;
	border-radius: .8rem;
	padding: 1.95em .5em;
	border: 1px solid var(--primary-color);
	background: white;
	color: var(--primary-color);
	font-size: var(--btn00-size);
	line-height: var(--btn00-height);
	font-weight: var(--btn00-weight);
	letter-spacing: var(--btn00-ls);
}

@media screen and (max-width: 767px) {
	.btn-icon-border {
		width: 100%;
		min-width: auto;
	}
}

.btn-icon-border.btn-icon-border--white {
	border-color: white;
	background: white;
}

.btn-icon-border.btn-icon-border--border-sky {
	border-color: var(--primary-color);
	background: var(--sky-color-03);
}

.btn-icon-border.btn-icon-border--w-100 {
	display: block;
	width: 100%;
	min-width: auto;
}

.btn-icon-border.btn-icon-border--py-small {
	padding: 1.35em .5em;
}

.btn-icon-border__small {
	margin-top: -.5rem;
	display: block;
}

.btn-icon-border__small-letter {
	font-size: var(--btn03-size);
	line-height: var(--btn03-height);
	font-weight: 300;
	letter-spacing: var(--btn03-ls);
}

.btn-icon-border__has-icon {
	display: inline-block;
	position: relative;
}

@media screen and (max-width: 374px) {
	.btn-icon-border__has-icon {
		padding-top: 1.5em;
	}
}

.btn-icon-border__has-icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

@media screen and (max-width: 374px) {
	.btn-icon-border__has-icon::after {
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
}

.btn-icon-border__has-icon.btn-icon-border__has-icon--youtube {
	padding-left: 2em;
}

@media screen and (max-width: 374px) {
	.btn-icon-border__has-icon.btn-icon-border__has-icon--youtube {
		padding-left: 0;
	}
}

.btn-icon-border__has-icon.btn-icon-border__has-icon--youtube::after {
	width: 1.2em;
	height: .85em;
	background-image: url(../img/icon-youtube-primary.svg);
}

.btn-icon-border__has-icon.btn-icon-border__has-icon--instagram {
	padding-left: 1.7em;
}

@media screen and (max-width: 374px) {
	.btn-icon-border__has-icon.btn-icon-border__has-icon--instagram {
		padding-left: 0;
	}
}

.btn-icon-border__has-icon.btn-icon-border__has-icon--instagram::after {
	width: 1em;
	height: 1em;
	background-image: url(../img/icon-instagram-primary.svg);
}

.btn-icon-border__has-icon.btn-icon-border__has-icon--file {
	padding-left: 2.3em;
}

@media screen and (max-width: 374px) {
	.btn-icon-border__has-icon.btn-icon-border__has-icon--file {
		padding-left: 0;
		padding-top: 2.5em;
	}
}

.btn-icon-border__has-icon.btn-icon-border__has-icon--file::after {
	width: 1.35em;
	height: 1.8em;
	background-image: url(../img/icon-file-primary.svg);
}

@media (hover: hover) {
	.btn-icon-border:hover {
		background: var(--bg-main-color);
		transition: var(--normal-transition);
	}

	.btn-icon-border.btn-icon-border--white:hover {
		border-color: var(--bg-main-color);
		;
		background: var(--bg-main-color);
		;
	}
}

/* 矢印アイコン付きボタン */
.btn-before-arrow {
	display: inline-block;
	position: relative;
	padding-left: 2em;
	font-size: var(--btn01-size);
	line-height: var(--btn01-height);
	font-weight: var(--btn01-weight);
	letter-spacing: var(--btn01-ls);
}

.btn-before-arrow__icon {
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-40%);
}

.btn-before-arrow__icon-arrow {
	display: inline-block;
	position: relative;
	width: 1.1em;
	height: 1.1em;
	border-radius: 50%;
	background: var(--primary-color);
}

.btn-before-arrow__icon-arrow::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -.3em;
	margin-left: -.4em;
	width: 0.4em;
	height: 0.4em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center bottom;
	border-top: 2px solid white;
	border-right: 2px solid white;
}

@media (hover: hover) {
	.btn-before-arrow:hover {
		color: var(--primary-color);
		transition: var(--normal-transition);
	}
}


/* アイコン付きボタン矢印ボタン */
.btn-icon-yajirushi {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 28rem;
	border-radius: 5em;
	padding: 1.2em .5em;
	padding-right: 2em;
	border: 3px solid white;
	background: var(--primary-color);
	color: white;
	font-size: var(--btn00-size);
	line-height: var(--btn00-height);
	font-weight: var(--btn00-weight);
	letter-spacing: var(--btn00-ls);
}

@media screen and (max-width: 767px) {
	.btn-icon-yajirushi {
		min-width: 280px;
		padding: .75em;
		border-width: 1px;
		font-size: 14px;
	}
}

@media screen and (max-width: 374px) {
	.btn-icon-yajirushi {
		width: 100%;
		min-width: auto;
	}
}

.btn-icon-yajirushi__has-icon {
	display: inline-block;
	position: relative;
}

.btn-icon-yajirushi__has-icon::after {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.btn-icon-yajirushi__has-icon.btn-icon-yajirushi__has-icon--mail {
	padding-left: 2.5em;
}

.btn-icon-yajirushi__has-icon.btn-icon-yajirushi__has-icon--mail::after {
	width: 1.2em;
	height: .83em;
	background-image: url(../img/icon-mail-white.svg);
}

.btn-icon-yajirushi__has-icon.btn-icon-yajirushi__has-icon--line {
	padding-left: 3em;
}

.btn-icon-yajirushi__has-icon.btn-icon-yajirushi__has-icon--line::after {
	width: 1.75em;
	height: 1.64em;
	background-image: url(../img/icon-line-white.svg);
}

.btn-icon-yajirushi__has-icon.btn-icon-yajirushi__has-icon--online {
	padding-left: 2.25em;
}

.btn-icon-yajirushi__has-icon.btn-icon-yajirushi__has-icon--online::after {
	width: 1.3em;
	height: .875em;
	background-image: url(../img/icon-online-white.svg);
}

.btn-icon-yajirushi__yajirushi {
	content: '';
	position: absolute;
	top: 50%;
	right: 1.2em;
	margin-top: -0.5em;
	width: 1em;
	height: 1em;
	background-image: url(../img/icon-yajirushi-white-right.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

@media (hover: hover) {
	.btn-icon-yajirushi:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}

	.btn-icon-yajirushi:hover .btn-icon-yajirushi__yajirushi {
		right: .5em;
		transition: var(--normal-transition);
	}
}

/* カテゴリー */
.cat {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 13.5rem;
	padding: .35em 1em;
	border-radius: .5em;
	border: 1px solid var(--primary-color);
	background: var(--primary-color);
	color: white;
	font-family: var(--en-font);
	font-size: var(--cat-size);
	font-weight: var(--cat-weight);
	letter-spacing: var(--cat-ls);
}

.cat.cat--m {
	margin-top: .5rem;
	margin-right: 1rem;
}

.cat.cat--no-r {
	border-radius: 0;
}

.cat.cat--white {
	background: white;
	color: var(--primary-color);
}

@media (hover: hover) {
	.cat.cat--link:hover {
		background: white;
		color: var(--primary-color);
		transition: var(--normal-transition);
	}
}

@media screen and (max-width: 767px) {
	.cat {
		min-width: 80px;
	}

	.cat.cat--sp-fs-small {
		font-size: 10px;
	}
}

/* 色変更 .cat--スラッグ名 */
.cat.cat--uncategorized {
	border-color: #ABABAB;
	background: #ABABAB;
	color: white;
}

@media (hover: hover) {
	.cat.cat--link.cat--uncategorized:hover {
		background: white;
		color: #ABABAB;
	}
}

/* 日付のテキスト */
.time {
	font-size: var(--time-size);
	letter-spacing: var(--time-ls);
}

.time--large {
	font-size: var(--time--large-size);
	font-weight: var(--time--large-weight);
	letter-spacing: var(--time--large-ls);
}

/* map */
.map iframe {
	width: 100% !important;
	height: 31rem !important;
}

@media screen and (max-width: 767px) {
	.map iframe {
		height: 310px !important;
	}
}

.map-02 iframe {
	width: 100% !important;
	height: 50rem !important;
}

@media screen and (max-width: 767px) {
	.map-02 iframe {
		height: 500px !important;
	}
}

.map__txt {
	margin-top: 3.5rem;
}

/* YouTube */
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/* パンクズリスト */
.breadcrumb {
	-ms-overflow-style: none;
	scrollbar-width: none;
	white-space: nowrap;
	overflow-x: scroll;
	padding: 1rem 0;
	background: white;
}

.breadcrumb::-webkit-scrollbar {
	display: none;
}

.breadcrumb__list {
	display: flex;
	align-items: center;
}

.breadcrumb__list-item {
	position: relative;
	font-size: 1.4rem;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.breadcrumb__list-item {
		font-size: 12px;
	}
}

.breadcrumb__list-item::after {
	content: '>';
	padding: 0 .75em;
}

.breadcrumb__list-item:last-child::after {
	content: '';
	padding: 0;
}

.breadcrumb__link {
	font-weight: 500;
}

@media (hover: hover) {
	.breadcrumb__link:hover {
		text-decoration: underline;
	}
}

/* 記事 */
.article-thumb {
	background: white;
	box-shadow: var(--shadow);
	--side-p: 2rem;
}

.article-thumb.article-thumb--no-shadow {
	box-shadow: none;
}

.article-thumb__inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	height: 100%;
}

.article-thumb__title {
	margin-top: 3.5rem;
	text-align: center;
	padding: 0 var(--side-p);
}

.article-thumb__desc {
	margin-top: 2.5rem;
	padding: 0 var(--side-p);
}

.article-thumb__btn {
	margin-top: auto;
	display: block;
	text-align: center;
	padding: 2.4rem var(--side-p) 3rem;
}

.article-thumb__time {
	margin-top: 3rem;
	padding: 0 var(--side-p);
}

.article-thumb__case-title {
	margin-top: 1.5rem;
	padding: 0 var(--side-p);
}

/* 記事02 */
.article-thumb-row.article-thumb-row--mt+.article-thumb-row.article-thumb-row--mt {
	margin-top: 4rem;
}

@media screen and (max-width: 767px) {
	.article-thumb-row.article-thumb-row--mt+.article-thumb-row.article-thumb-row--mt {
		margin-top: 0;
	}
}

.article-thumb-row__link {
	display: block;
	padding: 3rem;
	background: white;
	box-shadow: 0 0 6px var(--shadow-color);
}

@media screen and (max-width: 767px) {
	.article-thumb-row__link {
		padding-left: var(--inner-responsive-p);
		padding-right: var(--inner-responsive-p);
		box-shadow: none;
		border-bottom: 1px solid var(--border-color--light);
	}
}

@media screen and (max-width: 767px) {
	.article-thumb-row__row {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row-reverse;
		justify-content: space-between;
	}
}

@media screen and (max-width: 767px) {
	.article-thumb-row__txt {
		width: 67%;
	}
}

@media screen and (max-width: 500px) {
	.article-thumb-row__txt {
		width: 100%;
	}
}

.article-thumb-row__meta {
	display: flex;
}

@media screen and (max-width: 767px) {
	.article-thumb-row__meta {
		display: block;
	}
}

.article-thumb-row__time {
	margin-right: .8rem;
	padding-top: 1rem;
}

@media screen and (max-width: 767px) {
	.article-thumb-row__time {
		margin-right: 0;
		padding-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.article-thumb-row__cat {
		margin-top: .5rem;
	}
}

.article-thumb-row__title {
	margin-top: 1.5rem;
}

@media screen and (max-width: 767px) {
	.article-thumb-row__title {
		margin-top: .5rem;
	}
}

@media screen and (max-width: 500px) {
	.article-thumb-row__title {
		margin-top: 1.5rem;
	}
}

.article-thumb-row__catch {
	margin-top: 2rem;
}

@media screen and (max-width: 767px) {
	.article-thumb-row__catch {
		margin-top: 0;
		width: 30%;
	}
}

@media screen and (max-width: 500px) {
	.article-thumb-row__catch {
		margin-top: 3rem;
		width: 100%;
	}
}

.article-thumb-row__catch-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.article-thumb-row__catch-img {
	width: 33%;
}

@media screen and (max-width: 767px) {
	.article-thumb-row__catch-img {
		width: 100%;
	}
}

.article-thumb-row__catch-desc {
	display: flex;
	flex-direction: column;
	width: 63%;
}

@media screen and (max-width: 767px) {
	.article-thumb-row__catch-desc {
		display: none;
	}
}

.article-thumb-row__catch-btn {
	margin-top: auto;
	padding-top: 1.5rem;
}

@media (hover: hover) {
	.article-thumb-row__link:hover {
		background: var(--bg-main-color);
		transition: var(--normal-transition);
	}
}

/* サムネイルなし */
.article-thumb-row.article-thumb-row--no-thumb .article-thumb-row__catch-img {
	display: none;
}

.article-thumb-row.article-thumb-row--no-thumb .article-thumb-row__catch-desc {
	display: block;
	width: 100%;
}

/* 線で囲まれた角丸ボックス */
.article-border-box-r {
	padding: 4rem 0;
	border-radius: 1rem;
	border: .5rem solid var(--primary-color);
	background: white;
}

.article-border-box-r__heading {
	text-align: center;
}

.article-border-box-r__desc {
	margin-top: 2rem;
	padding: 0 3rem;
}

/* テキストのみのカード */
.article-card-txt {
	display: flex;
	flex-direction: column;
	padding: 2.5rem 2rem 3rem;
	background: white;
}

.article-card-txt__meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.article-card-txt__cat {
	padding-top: .5rem;
}

.article-card-txt__time {
	padding-top: .5rem;
}

.article-card-txt__title {
	margin-top: 3rem;
}

.article-card-txt__img {
	margin-top: 1rem;
}

.article-card-txt__title-letter {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.article-card-txt__desc {
	margin-top: 1rem;
}

.article-card-txt__desc-letter {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.article-card-txt__btn {
	margin-top: auto;
	padding-top: 1.5rem;
	text-align: center;
}

/* テキストのみの記事一覧 */
.article-txt-type {
	border-radius: 1rem;
	padding: 2rem 3rem;
	background: white;
}

@media screen and (max-width: 767px) {
	.article-txt-type {
		padding: 2.5rem 2.5rem;
	}
}

.article-txt-type.article-txt-type--mt+.article-txt-type.article-txt-type--mt {
	margin-top: .5rem;
}

@media screen and (max-width: 767px) {
	.article-txt-type.article-txt-type--mt+.article-txt-type.article-txt-type--mt {
		margin-top: 2rem;
	}
}

.article-txt-type__row {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.article-txt-type__row {
		flex-wrap: wrap;
	}
}

.article-txt-type__time {
	margin-right: 1.3rem;
	min-width: 12rem;
}

@media screen and (max-width: 767px) {
	.article-txt-type__time {
		margin-right: 15px;
		text-align: left;
		min-width: 70px;
		padding-top: .5rem;
	}
}

.article-txt-type__cat {
	margin-right: 2rem;
}

@media screen and (max-width: 767px) {
	.article-txt-type__cat {
		margin-right: 0;
		width: 50%;
		padding-top: .5rem;
	}
}

.article-txt-type__title {
	width: 100%;
	padding-right: 2rem;
}

@media screen and (max-width: 767px) {
	.article-txt-type__title {
		margin-top: 3rem;
		padding-right: 0;
	}
}

.article-txt-type__title-letter {
	display: inline-block;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

@media (hover: hover) {
	.article-txt-type__title-letter:hover {
		text-decoration: underline;
	}
}

.article-txt-type__btn {
	flex-shrink: 0;
}

@media screen and (max-width: 767px) {
	.article-txt-type__btn {
		display: none;
	}
}

/* テキストのみ下線付きの記事一覧 */
.article-txt-border {
	padding: 1.45rem .5rem;
	background: white;
	border-bottom: 1px solid var(--border-color--light);
}

@media screen and (max-width: 767px) {
	.article-txt-border {
		padding: 1.5rem 0
	}
}

.article-txt-border:first-child {
	padding-top: 0;
}

.article-txt-border:last-child {
	padding-bottom: 0;
	border-bottom-width: 0;
}

.article-txt-border__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

@media screen and (max-width: 767px) {
	.article-txt-border__row {
		flex-wrap: wrap;
		justify-content: flex-start;
	}
}

@media screen and (max-width: 767px) {
	.article-txt-border__main {
		display: contents;
	}
}

@media screen and (max-width: 767px) {
	.article-txt-border__time {
		margin-right: 1.5rem;
	}
}

.article-txt-border__title {
	margin-top: .25rem;
}

@media screen and (max-width: 767px) {
	.article-txt-border__title {
		display: contents;
	}
}

.article-txt-border__title-row {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.article-txt-border__title-row {
		display: contents;
	}
}

.article-txt-border__cat {
	margin-right: 2.5rem;
}

@media screen and (max-width: 767px) {
	.article-txt-border__cat {
		margin-right: 0;
		padding-top: .5rem;
	}
}

@media screen and (max-width: 767px) {
	.article-txt-border__title-txt {
		margin-top: 1.5rem;
		width: 100%;
	}
}

.article-txt-border__title-letter {
	display: inline-block;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

@media (hover: hover) {
	.article-txt-border__title-letter-link:hover {
		text-decoration: underline;
	}
}

.article-txt-border__btn {
	flex-shrink: 0;
}

@media screen and (max-width: 767px) {
	.article-txt-border__btn {
		margin-top: 1.5rem;
		width: 100%;
		text-align: right;
	}
}

/* 写真の上にテキストと右矢印 */
.article-img-card {
	background: white;
}

.article-img-card__inner {
	display: block;
	position: relative;
}

.article-img-card__txt {
	position: absolute;
	left: 0;
	bottom: 4.5rem;
	text-align: center;
	width: 100%;
	color: white;
}

@media screen and (max-width: 767px) {
	.article-img-card__txt {
		bottom: 2.5rem;
	}
}

.article-img-card__jp-letter {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.article-img-card__jp-letter {
		font-size: 16px;
	}
}

.article-img-card__en {
	margin-top: 1.5rem;
}

@media screen and (max-width: 767px) {
	.article-img-card__en {
		margin-top: .5rem;
	}
}

.article-img-card__en-letter {
	font-family: var(--en-font);
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 300;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.article-img-card__en-letter {
		font-size: 12px;
	}
}

.article-img-card__tri {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 9.2rem 9.2rem;
	border-color: transparent transparent var(--primary-color) transparent;
}

@media screen and (max-width: 767px) {
	.article-img-card__tri {
		border-width: 0 0 90px 90px;
	}
}

.article-img-card__yajirushi {
	position: absolute;
	right: 1.7rem;
	bottom: 1.8rem;
}

@media screen and (max-width: 767px) {
	.article-img-card__yajirushi {
		right: 17px;
		bottom: 18px;
	}
}

.article-img-card__yajirushi-image img {
	width: 1.7rem;
	height: auto;
}

@media screen and (max-width: 767px) {
	.article-img-card__yajirushi-image img {
		width: 13px;
	}
}

@media (hover: hover) {
	.article-img-card__inner:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}

	.article-img-card__inner:hover .article-img-card__yajirushi {
		right: .5rem;
		transition: var(--normal-transition);
	}

	@media screen and (max-width: 767px) {
		.article-img-card__inner:hover .article-img-card__yajirushi {
			right: 5px;
		}
	}
}

/* イラスト付きバナー */
.article-banner-illust {
	background: white;
}

.article-banner-illust__inner {
	display: block;
	position: relative;
	padding: 2rem 0 2.3rem;
	background: var(--primary-color--light);
}

@media screen and (max-width: 767px) {
	.article-banner-illust__inner {
		padding: 4rem 0 8rem;
	}
}

.article-banner-illust__img {
	position: absolute;
	top: 50%;
	left: 2rem;
	transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
	.article-banner-illust__img {
		position: static;
		transform: translate(0);
		text-align: center;
	}
}

.article-banner-illust__image img {
	width: 6.2rem;
	height: auto;
}

.article-banner-illust__txt {
	padding-left: 1.4rem;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.article-banner-illust__txt {
		margin-top: 2rem;
		padding-left: 0;
	}
}

.article-banner-illust__sub-copy-letter {
	color: var(--primary-color);
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.article-banner-illust__sub-copy-letter {
		font-size: 14px;
	}
}

.article-banner-illust__main-copy {
	margin-top: 1.5rem;
}

.article-banner-illust__main-copy-letter {
	color: white;
	font-size: 3.8rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.article-banner-illust__main-copy-letter {
		font-size: 30px;
	}
}

.article-banner-illust__tri {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 6.6rem 6.6rem;
	border-color: transparent transparent var(--primary-color) transparent;
}

@media screen and (max-width: 767px) {
	.article-banner-illust__tri {
		border-width: 0 0 66px 66px;
	}
}

.article-banner-illust__yajirushi {
	position: absolute;
	right: 1.3rem;
	bottom: 1.4rem;
}

@media screen and (max-width: 767px) {
	.article-banner-illust__yajirushi {
		right: 13px;
		bottom: 14px;
	}
}

.article-banner-illust__yajirushi-image img {
	width: 1.2rem;
	height: auto;
}

@media screen and (max-width: 767px) {
	.article-banner-illust__yajirushi-image img {
		width: 13px;
	}
}

@media (hover: hover) {
	.article-banner-illust__inner:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}

	.article-banner-illust__inner:hover .article-banner-illust__yajirushi {
		right: .5rem;
		transition: var(--normal-transition);
	}

	@media screen and (max-width: 767px) {
		.article-banner-illust__inner:hover .article-banner-illust__yajirushi {
			right: 5px;
		}
	}
}

/* article banner yajirushi */
.article-banner-yajirushi {
	overflow: hidden;
	border-radius: 1.2rem;
}

.article-banner-yajirushi__link {
	display: block;
	position: relative;
}

.article-banner-yajirushi__image img {
	width: 100%;
	height: auto;
}

.article-banner-yajirushi__txt {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	text-align: center;
	width: 55%;
	color: white;
}

.article-banner-yajirushi__letter {
	font-size: 3.2rem;
	line-height: 1.7;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 1119px) {
	.article-banner-yajirushi__letter {
		font-size: 4vw;
	}
}

@media screen and (max-width: 767px) {
	.article-banner-yajirushi__letter {
		font-size: 5.5vw;
	}
}

@media (hover: hover) {
	.article-banner-yajirushi__link:hover {
		opacity: .7;
		transition: var(--normal-transition);
	}
}

/* 青色の影がつくimgがある記事 */
.article-num-img-shadow {
	display: flex;
	flex-direction: column;
}

.article-num-img-shadow__num-txt {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 7rem;
	height: 7rem;
	padding-bottom: .25em;
	background: var(--primary-color);
	color: white;
	font-family: var(--en-font);
	font-size: 4rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.article-num-img-shadow__num-txt {
		width: 45px;
		height: 45px;
		font-size: 22px;
	}
}

.article-num-img-shadow__title {
	margin-top: 2rem;
}

@media screen and (max-width: 767px) {
	.article-num-img-shadow__title-letter {
		min-height: auto !important;
	}
}

.article-num-img-shadow__img-wrap {
	margin-top: auto;
}

.article-num-img-shadow__img {
	margin-top: 4.5rem;
}

.article-num-img-shadow__image {
	box-shadow: -22px 16px 23px var(--sky-color-02);
}

@media screen and (max-width: 767px) {
	.article-num-img-shadow__image {
		box-shadow: none;
	}
}

.article-num-img-shadow__desc {
	margin-top: 3.5rem;
}

/* 求人 */
.article-txt-info {
	display: flex;
	flex-direction: column;
	padding: 3.5rem 1.5rem;
	border: 2px solid var(--primary-color--light);
	background: white;
}

.article-txt-info__heading {
	padding: 0 1rem 2rem;
	border-bottom: 3px solid currentColor;
	color: var(--primary-color--light);
}

.article-txt-info__heading.article-txt-info__heading--px-none {
	padding-left: 0;
	padding-right: 0;
}

@media screen and (max-width: 767px) {
	.article-txt-info__heading-letter {
		display: table;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}
}

.article-txt-info__main {
	margin-top: 3.5rem;
}

.article-txt-info__btn {
	margin-top: auto;
	text-align: center;
	padding: 4.5rem 1rem 0;
}

@media screen and (max-width: 767px) {
	.article-txt-info__btn {
		padding-left: 0;
		padding-right: 0;
	}
}

/* 線の角丸ボックス */
.article-box-border-list {
	counter-reset: list_num_article;
}

.article-box-border-r {
	padding: 2rem 1rem;
	border-radius: .8rem;
	border: 1px solid var(--primary-color);
	background: white;
}

.article-box-border-r__header {
	display: flex;
	align-items: center;
}

.article-box-border-r__num {
	margin-right: 1.2rem;
}

.article-box-border-r__num-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 2.3rem;
	height: 2.3rem;
	border-radius: 50%;
	background: var(--primary-color);
	color: white;
}

@media screen and (max-width: 767px) {
	.article-box-border-r__num-box {
		width: 23px;
		height: 23px;
	}
}

/* safariのみ */
_::-webkit-full-page-media,
_:future,
:root .article-box-border-r__num-box {
	padding-top: .1em;
}

.article-box-border-r__num-letter {
	font-family: var(--en-font);
	font-size: 1.1rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.article-box-border-r__num-letter {
		font-size: 10px;
	}
}

.article-box-border-r__num-letter::after {
	counter-increment: list_num_article;
	content: counter(list_num_article, decimal-leading-zero);
}

.article-box-border-r__body {
	margin-top: 1rem;
}

/* 線の角丸ボックス（大きい） */
.article-box-border-r-section {
	padding: 5rem 6.5rem 5rem;
	border-radius: .8rem;
	border: 5px solid var(--primary-color);
	background: white;
}

@media screen and (max-width: 767px) {
	.article-box-border-r-section {
		padding: 4rem 2rem;
		border-width: 2px;
	}
}

.article-box-border-r-section.article-box-border-r-section--2c {
	padding: 6rem 2rem 10rem;
}

@media screen and (max-width: 767px) {
	.article-box-border-r-section.article-box-border-r-section--2c {
		padding: 4rem 2rem;
	}
}

.article-box-border-r-section__header {
	text-align: center;
}

.article-box-border-r-section__body {
	margin-top: 3rem;
}

@media screen and (max-width: 767px) {
	.article-box-border-r-section__body {
		margin-top: 3rem;
		padding: 0;
	}
}


/* 線のボックス */
.article-box-r__heading {
	padding: 2.35rem 2rem;
	border-radius: 2rem 2rem 0 0;
	text-align: center;
	background: var(--primary-color);
	color: white;
}

.article-box-r__desc {
	padding: 3rem 4rem;
	border-radius: 0 0 2rem 2rem;
	background: white;
}

@media screen and (max-width: 767px) {
	.article-box-r__desc {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.article-box-r__price {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.article-box-r__price-content+.article-box-r__price-content {
	margin-top: 2.5rem;
}

.article-box-r__btn {
	margin-top: 3.5rem;
}

/* 四角のボックス */
.layout-box {
	padding: 3rem;
	background: white;
}

.layout-box.layout-box--primary-light {
	background: var(--bg-primary-color--02);
}

.layout-box.layout-box--ta-center-pc {
	text-align: center;
}

@media screen and (max-width: 1119px) {
	.layout-box.layout-box--ta-center-pc {
		text-align: left;
	}
}

.layout-box.layout-box--px-small {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

/* カテゴリーボックス */
.layout-box-cat-list {
	padding: 3rem 2rem;
	background: var(--bg-main-color--dark);
}

@media screen and (max-width: 767px) {
	.layout-box-cat-list {
		padding: 0;
	}
}

.layout-box-cat-list__heading {
	pointer-events: none;
	display: block;
	padding-left: 1.5rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid var(--primary-color);
}

@media screen and (max-width: 767px) {
	.layout-box-cat-list__heading {
		pointer-events: all;
		padding: 1.2rem 1.5rem;
		border-bottom-width: 0;
	}
}

.layout-box-cat-list__heading-row {
	display: block;
}

@media screen and (max-width: 767px) {
	.layout-box-cat-list__heading-row {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
}

.layout-box-cat-list__heading-letter {
	font-size: 2.0rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.layout-box-cat-list__heading-letter {
		font-size: 18px;
	}
}

.layout-box-cat-list__heading-icon {
	display: none;
}

@media screen and (max-width: 767px) {
	.layout-box-cat-list__heading-icon {
		display: block;
	}
}

.layout-box-cat-list__main {
	margin-top: 2rem;
}

@media screen and (max-width: 767px) {

	.layout-box-cat-list__main {
		margin-top: 0;
		background: white;
		border: 1px solid var(--border-color--light);
		border-top-width: 0;
	}
}

/* 線のボックス */
.layout-box-border {
	padding: 4rem 7rem;
	border: 1px solid var(--primary-color);
	background: white;
}

@media screen and (max-width: 767px) {
	.layout-box-border {
		padding: 4rem 2rem;
	}
}

.layout-box-border.layout-box-border--p-small {
	padding: 2rem 2.5rem;
}

@media screen and (max-width: 767px) {
	.layout-box-border.layout-box-border--p-small {
		padding: 2rem 2rem;
	}
}

.layout-box-border.layout-box-border--p-middle {
	padding: 3rem 4.5rem;
}

@media screen and (max-width: 767px) {
	.layout-box-border.layout-box-border--p-middle {
		padding: 2rem 2rem;
	}
}

.layout-box-border.layout-box-border--px-small {
	padding-left: 3rem;
	padding-right: 3rem;
}

@media screen and (max-width: 767px) {
	.layout-box-border.layout-box-border--px-small {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

/* 線の角丸ボックス */
.layout-box-border-r {
	padding: 2rem 1.3rem;
	border-radius: .8rem;
	border: 1px solid var(--primary-color);
	background: white;
}

.layout-box-border-r.layout-box-border-r--txt {
	padding: 2rem 1.3rem;
	border-radius: .8rem;
	border: 1px solid var(--primary-color);
	background: white;
}

/* 線のボックス（黄色） */
.layout-box-r-yellow {
	padding: 3.5rem 4rem;
	border-radius: .8rem;
	background: var(--bg-yellow-color);
}

@media screen and (max-width: 767px) {
	.layout-box-yellow {
		padding: 4rem 2rem;
	}
}

.layout-box-r-yellow.layout-box-r-yellow--ta-center {
	text-align: center;
}

/* 線のボックス（太い） */
.layout-box-border-bold {
	padding: 4rem 4rem;
	border: 1rem solid var(--border-color--light);
	background: white;
}

@media screen and (max-width: 767px) {
	.layout-box-border-bold {
		padding: 4rem 2rem;
	}
}

.layout-box-border-bold.layout-box-border-bold--px-small {
	padding-left: 2rem;
	padding-right: 2rem;
}

/* 流れ */
.layout-flow {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 3rem;
}

.layout-flow.layout-flow--gap-x-large {
	column-gap: 4rem;
}

@media screen and (min-width: 1120px) {
	.layout-flow.layout-flow--tax-saving {
		grid-template-columns: 35.8rem 20.8rem 23.3rem 19.2rem;
	}
}

@media screen and (max-width: 1119px) {
	.layout-flow {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media screen and (max-width: 767px) {
	.layout-flow {
		grid-template-columns: 1fr;
		gap: 30px 0;
	}
}

.layout-flow__content {
	position: relative;
}

.layout-flow__content::after {
	content: '';
	position: absolute;
	top: 50%;
	left: calc(100% + 1.2rem);
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .6rem 0 .6rem .8rem;
	border-color: transparent transparent transparent var(--primary-color);
}

.layout-flow__content:last-child::after {
	display: none;
}

@media screen and (max-width: 767px) {
	.layout-flow__content::after {
		top: calc(100% + 12px);
		left: 50%;
		transform: translateX(-50%);
		border-width: 8px 6px 0 6px;
		border-color: var(--primary-color) transparent transparent transparent;
	}
}

.layout-flow.layout-flow--gap-x-large .layout-flow__content::after {
	left: calc(100% + 1.5rem);
}

@media screen and (max-width: 767px) {
	.layout-flow.layout-flow--gap-x-large .layout-flow__content::after {
		left: 50%;
	}
}

.layout-flow__content-box {
	height: 100%;
	padding: 2rem .8rem;
	border-radius: 1rem;
	border: 1px solid var(--primary-color);
}

.layout-flow__content-heading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.layout-flow__content-desc {
	margin-top: 2rem;
}

@media screen and (max-width: 767px) {
	.layout-flow__content-desc {
		display: table;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
}

/* 流れ（丸アイコン） */
.layout-flow-circle {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10rem;
}

@media screen and (max-width: 1119px) {
	.layout-flow-circle {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 767px) {
	.layout-flow-circle {
		grid-template-columns: 1fr;
		gap: 85px 0;
	}
}

.layout-flow-circle__content {
	position: relative;
}

@media screen and (max-width: 1119px) {
	.layout-flow-circle__content {
		padding-right: 4rem;
	}
}

@media screen and (max-width: 767px) {
	.layout-flow-circle__content {
		padding-right: 0;
	}
}

.layout-flow-circle__content::after {
	content: '';
	position: absolute;
	top: 50%;
	left: calc(100% + 4rem);
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3.55rem 0 3.55rem 1.9rem;
	border-color: transparent transparent transparent var(--primary-color--light);
}

.layout-flow-circle__content:last-child::after {
	display: none;
}

@media screen and (max-width: 1119px) {
	.layout-flow-circle__content::after {
		left: 100%;
	}
}

@media screen and (max-width: 767px) {
	.layout-flow-circle__content::after {
		top: calc(100% + 30px);
		left: 50%;
		transform: translateX(-50%);
		border-width: 19px 35.5px 0 35.5px;
		border-color: var(--primary-color--light) transparent transparent transparent;
	}
}


/* タグ */
.layout-tag {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 1rem;
}

@media screen and (max-width: 1119px) {
	.layout-tag {
		grid-template-columns: repeat(4, 1fr);
	}
}

@media screen and (max-width: 767px) {
	.layout-tag {
		grid-template-columns: repeat(2, 1fr);
	}
}

.layout-tag.layout-tag--5c {
	grid-template-columns: repeat(5, 1fr);
}

@media screen and (max-width: 1119px) {
	.layout-tag.layout-tag--5c {
		grid-template-columns: repeat(4, 1fr);
	}
}

@media screen and (max-width: 767px) {
	.layout-tag.layout-tag--5c {
		grid-template-columns: repeat(2, 1fr);
	}
}

.layout-tag__txt {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 1.3rem .5rem;
	text-align: center;
	border-radius: .8rem;
	border: 1px solid currentColor;
	background: white;
	color: var(--primary-color);
}

@media (hover: hover) {
	.layout-tag__txt.layout-tag__txt--link:hover {
		background: var(--primary-color);
		color: white;
		transition: var(--normal-transition);
	}
}

@media screen and (max-width: 767px) {
	.layout-tag.layout-tag--sp-type-arrow {
		display: block;
	}

	.layout-tag.layout-tag--sp-type-arrow .layout-tag__txt {
		display: block;
		position: relative;
		text-align: left;
		min-height: auto !important;
		padding: 1.5em;
		border-radius: 0;
		background: transparent;
		border: none;
		border-bottom: 1px solid var(--border-color--light);
		color: var(--primary-color);
	}

	.layout-tag.layout-tag--sp-type-arrow .layout-tag__txt::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 1.5em;
		margin-top: -0.45em;
		width: 0.7em;
		height: 0.7em;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		transform-origin: center bottom;
		border-top: 2px solid currentColor;
		border-right: 2px solid currentColor;
	}
}

@media (hover: hover) and (max-width: 767px) {
	.layout-tag.layout-tag--sp-type-arrow .layout-tag__txt.layout-tag__txt--link:hover {
		background: var(--bg-main-color);
		color: var(--primary-color);
	}

	.layout-tag.layout-tag--sp-type-arrow .layout-tag__txt.layout-tag__txt--link:hover::after {
		right: 1em;
		transition: var(--normal-transition);
	}
}

/* 横並びレイアウト */
.layout-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4rem 3.5rem;
}

@media screen and (max-width: 1119px) {
	.layout-grid.layout-grid--tab-1c {
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 767px) {
	.layout-grid {
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 767px) {
	.layout-grid.layout-grid--sp-no-col {
		grid-template-columns: repeat(2, 1fr);
	}
}

.layout-grid.layout-grid--3c {
	grid-template-columns: repeat(3, 1fr);
}

.layout-grid.layout-grid--3c-gap-y-same {
	column-gap: 3.5rem;
}

@media screen and (max-width: 1119px) {
	.layout-grid.layout-grid--3c-tab-2c {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 767px) {
	.layout-grid.layout-grid--3c {
		grid-template-columns: 1fr;
	}

	.layout-grid.layout-grid--3c-sp-2c {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 500px) {
	.layout-grid.layout-grid--3c-tab-2c {
		grid-template-columns: 1fr;
	}

	.layout-grid.layout-grid--3c-sp-2c {
		grid-template-columns: 1fr;
	}
}

.layout-grid.layout-grid--gap-large {
	gap: 3.5rem 10rem;
}

@media screen and (max-width: 767px) {
	.layout-grid.layout-grid--gap-large {
		gap: 3.5rem 5rem;
	}
}

/* 横ボタン並びレイアウト */
.layout-btns {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3.5rem 8.5rem;
}

@media screen and (max-width: 1119px) {
	.layout-btns {
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 1119px) {
	.layout-btns__item {
		text-align: center;
	}
}

/* 平行四辺形型のimg 横並び4つ */
.layout-parallelogram-img-list {
	--layout-parallelogram-img-list-yohaku: 4.17vw;
	overflow: hidden;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: .8vw 0;
}

@media screen and (max-width: 767px) {
	.layout-parallelogram-img-list {
		grid-template-columns: repeat(2, 1fr);
	}
}

.layout-parallelogram-img-list__item {
	margin-left: calc(var(--layout-parallelogram-img-list-yohaku) * -1);
	margin-right: calc(var(--layout-parallelogram-img-list-yohaku) * -1);
}

@media screen and (max-width: 767px) {
	.layout-parallelogram-img-list__item {
		margin-left: calc(var(--layout-parallelogram-img-list-yohaku) * -2);
		margin-right: calc(var(--layout-parallelogram-img-list-yohaku) * -2);
	}
}

/* tableの中にあるテーブル */
.layout-table-in-table {
	display: table;
	width: 100%;
}

.layout-table-in-table__row {
	display: table-row;
}

.layout-table-in-table__child {
	display: table-cell;
	padding: .5rem 0;
}

.layout-table-in-table__row:first-child .layout-table-in-table__child {
	padding-top: 0;
}

.layout-table-in-table__row:last-child .layout-table-in-table__child {
	padding-bottom: 0;
}

@media screen and (max-width: 1119px) {
	.layout-table-in-table__child {
		display: block;
		padding: 0;
	}
}

.layout-table-in-table__child.layout-table-in-table__child--th {
	padding-right: 1em;
}

@media screen and (max-width: 1119px) {
	.layout-table-in-table__child.layout-table-in-table__child--th {
		padding-top: 1.5rem;
		padding-bottom: 0;
		padding-right: 0;
	}
}

.layout-table-in-table__child.layout-table-in-table__child--year-w {
	width: calc(5.5rem + 1em);
}

@media screen and (max-width: 1119px) {
	.layout-table-in-table__child.layout-table-in-table__child--year-w {
		width: auto;
	}
}

@media screen and (max-width: 1119px) {

	.layout-table-in-table__child.layout-table-in-table__child--td,
	.layout-table-in-table__row:first-child .layout-table-in-table__child.layout-table-in-table__child--td {
		padding-top: .5rem;
	}
}

.layout-table-in-table__txt-group+.layout-table-in-table__txt-group {
	margin-top: .8rem;
}

@media screen and (max-width: 1119px) {
	.layout-table-in-table__txt-group+.layout-table-in-table__txt-group {
		margin-top: .5rem;
	}
}

/* 下に線があるタブレイアウト */

.layout-tabs-border {
	border-bottom: 3px solid var(--primary-color);
}

@media screen and (max-width: 1119px) {
	.layout-tabs-border {
		border-bottom: 1px solid var(--border-color--light);
	}
}

@media screen and (max-width: 1119px) {
	.layout-tabs-border__wrap {
		overflow-x: scroll;
	}
}

.layout-tabs-border__list {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 1.8rem;
}

@media screen and (max-width: 1119px) {
	.layout-tabs-border__list {
		white-space: nowrap;
		display: flex;
		gap: 0;
	}
}

@media screen and (max-width: 1119px) {
	.layout-tabs-border__list-item {
		margin-right: 1.8rem;
	}

	.layout-tabs-border__list-item:last-child {
		margin-right: 0;
	}
}

.layout-tabs-border__list-btn {
	display: block;
	position: relative;
	text-align: center;
	border-radius: .8rem .8rem 0 0;
	padding: 1.2em 1.5em;
	border: 2px solid var(--primary-color);
	border-bottom-width: 0;
	background: white;
	color: var(--primary-color);
	font-size: 2rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0;
}

.layout-tabs-border__list-btn.layout-tabs-border__list-btn--active {
	pointer-events: none;
	background: var(--primary-color);
	color: white;
}

@media screen and (max-width: 1119px) {
	.layout-tabs-border__list-btn {
		display: inline-block;
		padding: 0;
		padding-bottom: 1.6rem;
		border-radius: 0;
		border-width: 0;
		background: transparent;
		color: var(--primary-color);
	}

	.layout-tabs-border__list-btn.layout-tabs-border__list-btn--active {
		background: transparent;
		color: var(--primary-color);
	}

	.layout-tabs-border__list-btn.layout-tabs-border__list-btn--active::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 5px;
		background: var(--primary-color);
	}
}

@media screen and (max-width: 767px) {
	.layout-tabs-border__list-btn {
		font-size: 14px;
	}
}

@media (hover: hover) {
	.layout-tabs-border__list-btn:hover {
		background: var(--bg-main-color);
		transition: var(--normal-transition);
	}
}

@media (hover: hover) and (max-width: 1119px) {
	.layout-tabs-border__list-btn:hover {
		background: transparent;
	}
}

/* この記事の執筆者 */
.layout-author {
	padding: 3rem;
	background: white;
	border: 1px solid var(--border-color--light);
}

.layout-author__row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 500px) {
	.layout-author__row {
		display: block;
	}
}

.layout-author__txt {
	width: 55%;
}

@media screen and (max-width: 500px) {
	.layout-author__txt {
		width: 100%;
	}
}

@media screen and (max-width: 500px) {
	.layout-author__title {
		text-align: center;
	}
}

.layout-author__desc {
	margin-top: 2rem;
}

.layout-author__btn {
	margin-top: 2rem;
}

@media screen and (max-width: 500px) {
	.layout-author__btn {
		text-align: center;
	}
}

.layout-author__btn-letter {
	color: var(--primary-color);
	text-decoration: none;
}

@media (hover: hover) {
	layout-author__btn-letter:hover {
		color: var(--accent-color);
		font-weight: 700;
	}
}

.layout-author__btn-yajirushi::before {
	content: '→';
	color: var(--font-color);
}

.layout-author__img {
	width: 40%;
}

@media screen and (max-width: 500px) {
	.layout-author__img {
		display: none;
	}
}

.layout-author__img-name {
	margin-top: 1rem;
	text-align: center;
}

/* layout-price-box */
.layout-price-box {
	overflow: hidden;
	border-radius: .8rem;
	background: var(--bg-yellow-color);
}

@media screen and (max-width: 767px) {
	.layout-price-box {
		border-radius: 10px;
	}
}


.layout-price-box__row {
	display: flex;
}

@media screen and (max-width: 500px) {
	.layout-price-box__row {
		display: block;
	}
}

.layout-price-box__title {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 1rem;
	width: 16.5rem;
	min-height: 9.7rem;
	background: var(--red-color--light);
	color: white;
}

@media screen and (max-width: 767px) {
	.layout-price-box__title {
		width: 100px;
		min-height: 75px;
	}
}

@media screen and (max-width: 500px) {
	.layout-price-box__title {
		width: 100%;
		min-height: auto;
		padding: 2rem 1rem;
	}
}


.layout-price-box__title-letter {
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.layout-price-box__title-letter {
		font-size: 18px;
	}
}

.layout-price-box__price {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 100%;
	padding: 1rem;
	color: var(--red-color--light);
}

@media screen and (max-width: 500px) {
	.layout-price-box__price {
		padding: 2rem 1rem;
	}
}

/* slick */
.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.slide-arrow {
	position: absolute;
	top: 50%;
	z-index: var(--slick-z);
}

.slide-arrow.slide-arrow--prev-arrow {
	left: 12vw;
	transform: translate(-80%, -50%);
}

.slide-arrow.slide-arrow--next-arrow {
	right: 12vw;
	transform: translate(80%, -50%);
}

@media screen and (max-width: 767px) {
	.slide-arrow.slide-arrow--prev-arrow {
		left: var(--inner-responsive-p);
		transform: translate(0, -50%);
	}

	.slide-arrow.slide-arrow--next-arrow {
		right: var(--inner-responsive-p);
		transform: translate(0, -50%);
	}
}

.slide-arrow.slide-arrow--prev-arrow.slide-arrow--p-out {
	left: 0;
	transform: translate(-100%, -50%);
}

.slide-arrow.slide-arrow--next-arrow.slide-arrow--p-out {
	right: 0;
	transform: translate(100%, -50%);
}

@media screen and (max-width: 1879px) {
	.slide-arrow.slide-arrow--prev-arrow.slide-arrow--p-out {
		transform: translate(-0%, -50%);
	}

	.slide-arrow.slide-arrow--next-arrow.slide-arrow--p-out {
		transform: translate(0%, -50%);
	}
}

.slide-arrow.slide-arrow--prev-arrow.slide-arrow--mv {
	left: 2vw;
	transform: translate(0, -50%);
}

.slide-arrow.slide-arrow--next-arrow.slide-arrow--mv {
	right: 2vw;
	transform: translate(0, -50%);
}

@media screen and (max-width: 1879px) {
	.slide-arrow.slide-arrow--prev-arrow.slide-arrow--mv {
		transform: translate(-0%, -50%);
	}

	.slide-arrow.slide-arrow--next-arrow.slide-arrow--mv {
		transform: translate(0%, -50%);
	}
}

/* slide */
.layout-slide .slick-slide {
	margin-bottom: 6px;
}

.layout-slide__content {
	padding-left: 2rem;
	padding-right: 2rem;
}

@media screen and (max-width: 1719px) {
	.layout-slide__content {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

@media screen and (max-width: 767px) {
	.layout-slide__content {
		padding-left: 40px;
		padding-right: 40px;
	}
}

/* slide（SPのみ） */
@media screen and (max-width: 767px) {
	.layout-sp-slide__content {
		padding-left: 40px;
		padding-right: 40px;
	}
}

@media screen and (max-width: 374px) {
	.layout-sp-slide__content {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* 3カラムスライド */
@media screen and (max-width: 1879px) {
	.layout-slide-3c {
		padding-left: 7rem;
		padding-right: 7rem;
	}
}

@media screen and (max-width: 767px) {
	.layout-slide-3c {
		padding-left: 0;
		padding-right: 0;
	}
}

.layout-slide-3c__content {
	padding-left: 2rem;
	padding-right: 2rem;
	padding-bottom: 6px;
}

@media screen and (max-width: 767px) {
	.layout-slide-3c__content {
		padding-left: 40px;
		padding-right: 40px;
	}
}

/* layout-box-border-list */
.layout-box-border-list-wrap {
	margin-top: calc(var(--mt-d) - 1.5rem);
}

.layout-box-border-list {
	display: flex;
	flex-wrap: wrap;
	margin-left: -.75rem;
	margin-right: -.75rem;
}

.layout-box-border-list__content {
	margin-top: 1.6rem;
	width: 100%;
}

@media screen and (min-width: 1120px) {
	.layout-box-border-list__content {
		padding-left: .75rem;
		padding-right: .75rem;
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-01 {
		max-width: calc(19.6rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-02 {
		max-width: calc(36.1rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-03 {
		max-width: calc(24.4rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-04 {
		max-width: calc(27.3rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-05 {
		max-width: calc(29rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-06 {
		max-width: calc(31.6rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-07 {
		max-width: calc(27.3rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-08 {
		max-width: calc(19.5rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-09 {
		max-width: calc(27.4rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--inheritance-10 {
		max-width: calc(36.1rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-01 {
		max-width: calc(19.6rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-02 {
		max-width: calc(36.1rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-03 {
		max-width: calc(53.3rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-04 {
		max-width: calc(50.5rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-05 {
		max-width: calc(31.4rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-06 {
		max-width: calc(27.1rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-07 {
		max-width: calc(50.5rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-08 {
		max-width: calc(36.0rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--will-09 {
		max-width: calc(22.5rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-01 {
		max-width: calc(19.6rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-02 {
		max-width: calc(36.1rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-03 {
		max-width: calc(24.4rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-04 {
		max-width: calc(27.3rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-05 {
		max-width: calc(50.5rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-06 {
		max-width: calc(31.4rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-07 {
		max-width: calc(27.1rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-08 {
		max-width: calc(50.5rem + 1.5rem);
	}

	.layout-box-border-list__content.layout-box-border-list__content--procedure-09 {
		max-width: calc(36.1rem + 1.5rem);
	}
}

.layout-bg-deco {
	position: relative;
	z-index: var(--zero-z);
}

.layout-bg-deco__deco {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	z-index: var(--minus-z);
	width: 100%;
}

.layout-bg-deco__deco.layout-bg-deco__deco--top {
	top: 17%;
	transform: translateY(0);
}

.layout-bg-deco__deco.layout-bg-deco__deco--spot-01 {
	top: -5%;
	transform: translateY(0);
}

.layout-bg-deco__deco.layout-bg-deco__deco--spot-02 {
	top: 5%;
	transform: translateY(0);
}

.layout-bg-deco__deco-image {
	width: 100%;
}

.layout-bg-deco__deco-image img {
	width: 100%;
	height: auto;
}

/* FAQ */
.layout-faq.layout-faq--mt+.layout-faq.layout-faq--mt {
	margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
	.layout-faq.layout-faq--mt+.layout-faq.layout-faq--mt {
		margin-top: 15px;
	}
}

.layout-faq__q {
	cursor: pointer;
	display: block;
	position: relative;
	padding: 1.5rem 2.4rem;
	background: var(--bg-main-color--light);
}

@media screen and (max-width: 767px) {
	.layout-faq__q {
		padding: 30px 24px;
	}
}

.layout-faq__q-row {
	display: flex;
	align-items: center;
}

.layout-faq__q-heading {
	flex-shrink: 0;
	padding-right: 2rem;
}

@media screen and (max-width: 767px) {
	.layout-faq__q-heading {
		padding-right: 20px;
	}
}

.layout-faq__heading-letter {
	font-family: var(--en-font);
	font-size: 3rem;
	line-height: 1;
	font-weight: 300;
	letter-spacing: 0;
}

.layout-faq__heading-letter.layout-faq__heading-letter--q {
	color: var(--primary-color);
}

.layout-faq__heading-letter.layout-faq__heading-letter--a {
	color: var(--red-color);
}

@media screen and (max-width: 767px) {
	.layout-faq__q-heading-letter {
		font-size: 30px;
	}
}

.layout-faq__q-title {
	position: relative;
	padding-right: 2rem;
	width: 100%;
}

.layout-faq__q-arrow-down {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -15px;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	transform-origin: center bottom;
	border-top: 2px solid var(--primary-color);
	border-right: 2px solid var(--primary-color);
}

.layout-faq__q-arrow-down.active {
	margin-top: -10px;
	border: none;
	border-bottom: 2px solid var(--primary-color);
	border-left: 2px solid var(--primary-color);
}

@media (hover: hover) {
	.layout-faq__q:hover {
		background: var(--bg-primary-color);
		transition: var(--normal-transition);
	}
}

.layout-faq__a {
	display: none;
	padding: 3.5rem 2.4rem;
	border: 1px solid var(--border-color--lighter);
	background: white;
}

@media screen and (max-width: 767px) {
	.layout-faq__a {
		padding: 30px 24px;
	}
}

.layout-faq__a-row {
	display: flex;
}

@media screen and (max-width: 767px) {
	.layout-faq__a-row {
		display: block;
	}
}

.layout-faq__a-heading {
	padding-right: 2rem;
}

@media screen and (max-width: 767px) {
	.layout-faq__a-heading {
		display: none;
	}
}

.layout-faq__a-title {
	margin-top: -1rem;
}

@media screen and (max-width: 767px) {
	.layout-faq__a-title {
		margin-top: 0;
	}
}

/* layout-article-banner-yajirushi */
.layout-article-banner-yajirushi {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3rem 6rem;
}

@media screen and (max-width: 1119px) {
	.layout-article-banner-yajirushi {
		grid-template-columns: 1fr;
	}
}


/* テーブル */
.table-common {
	width: 100%;
}

.table-common__child {
	text-align: left;
	padding: 3rem 0;
	border-bottom: 1px solid var(--border-color--light);
}

@media screen and (max-width: 767px) {
	.table-common__child {
		display: block;
	}
}

@media screen and (min-width: 768px) {
	.table-common__child.table-common__child--py-small {
		padding: 2rem 0;
	}
}

.table-common__child.table-common__child--w {
	width: 23.5rem;
}

@media screen and (max-width: 767px) {
	.table-common__child.table-common__child--w {
		width: 100%;
	}
}

.table-common__child.table-common__child--w-small {
	width: 10rem;
}

@media screen and (max-width: 767px) {
	.table-common__child.table-common__child--w-small {
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	.table-common__child.table-common__child--th {
		padding-top: 3rem;
		padding-bottom: 0;
		border-bottom: none;
	}
}

.table-common__child.table-common__child--pl {
	padding-left: 1em;
}

@media screen and (max-width: 767px) {
	.table-common__child.table-common__child--pl {
		padding-left: 0;
	}
}

@media screen and (max-width: 767px) {
	.table-common__child.table-common__child--td {
		padding-top: 1.5rem;
		padding-bottom: 3rem;
	}

	.table-common__row:first-child .table-common__child.table-common__child--td {
		border-top: none;
	}
}

.table-common__row:first-child .table-common__child {
	padding-top: 0;
}

@media screen and (max-width: 767px) {
	.table-common__row:first-child .table-common__child.table-common__child--td {
		padding-top: 1.5rem;
	}
}

.table-common__row:last-child .table-common__child {
	padding-bottom: 0;
	border-bottom-width: 0;
}

.table-common__child.table-common__child--v-top {
	vertical-align: top;
}

/* テーブル（縦積み） */
.table-common-col {
	width: 100%;
}

.table-common-col__child {
	text-align: left;
}

.table-common-col__child.table-common-col__child--th {
	padding-top: 3rem;
}

.table-common-col__child.table-common-col__child--td {
	padding-top: 3rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid var(--border-color--light);
}

.table-common-col__row:first-child .table-common-col__child.table-common-col__child--th {
	padding-top: 0;
}

.table-common-col__row:last-child .table-common-col__child.table-common-col__child--td {
	padding-bottom: 0;
	border-bottom-width: 0;
}

/* ボックスのテーブル */
.table-box {
	width: 100%;
}

.table-box__col-th {
	width: 30%;
}

.table-box__col-td {
	width: 70%;
}

.table-box__child {
	padding: 2.5rem 0;
	border: .5px solid var(--border-color--light);
}

@media screen and (max-width: 767px) {

	.table-box.table-box--sp-block .table-box__col-th,
	.table-box.table-box--sp-block .table-box__col-td {
		width: 100%;
	}

	.table-box.table-box--sp-block .table-box__child {
		display: block;
		width: 100% !important;
		border-top-width: 0;
		border-bottom-width: 0;
	}
}

.table-box.table-box--h-css .table-box__child {
	height: 10.5rem;
}

@media screen and (max-width: 767px) {
	.table-box.table-box--h-css .table-box__child {
		height: auto;
	}
}

@media screen and (max-width: 767px) {
	.table-box.table-box--min-h .table-box__child {
		height: auto !important;
	}
}

.table-box__child.table-box__child--th {
	background: var(--primary-color);
	border-bottom-color: white;
	color: white;
}

@media screen and (max-width: 767px) {
	.table-box__child.table-box__child--th {
		border-bottom-color: white;
	}
}

.table-box__child.table-box__child--td {
	border-right-color: var(--primary-color);
	background: white;
	padding-left: 4.5rem;
	padding-right: 4.5rem;
}

.table-box__row:first-child .table-box__child.table-box__child--td {
	border-top-color: var(--primary-color);
}

.table-box__row:last-child .table-box__child.table-box__child--td {
	border-bottom-color: var(--primary-color);
}

@media screen and (max-width: 767px) {
	.table-box__child.table-box__child--td {
		border-left-color: var(--primary-color);
	}

	.table-box__row:first-child .table-box__child.table-box__child--td {
		border-top-width: 0;
	}

	.table-box__row:last-child .table-box__child.table-box__child--td {
		border-bottom-width: 1px;
	}

	.table-box.table-box--sp-block .table-box__child.table-box__child--td {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

/* ボックスのテーブル（縦積み） */
.table-box-col {
	width: 100%;
}

.table-box-col_col.table-box-col_col--w-20 {
	width: 20%;
}

.table-box-col_col.table-box-col_col--w-30 {
	width: 30%;
}

.table-box-col_col.table-box-col_col--w-40 {
	width: 40%;
}

.table-box-col_col.table-box-col_col--w-50 {
	width: 50%;
}

.table-box-col_col.table-box-col_col--w-60 {
	width: 60%;
}

.table-box-col_col.table-box-col_col--w-70 {
	width: 70%;
}

.table-box-col_col.table-box-col_col--w-80 {
	width: 80%;
}

.table-box-col_col.table-box-col_col--w-90 {
	width: 90%;
}

.table-box-col_col.table-box-col_col--w-100 {
	width: 100%;
}

.table-box-col_col.table-box-col_col--d-01 {
	width: 31rem;
}

.table-box-col_col.table-box-col_col--d-02 {
	width: 41rem;
}

.table-box-col_col.table-box-col_col--will-00 {
	width: 20%;
}

.table-box-col_col.table-box-col_col--will-01 {
	width: 41%;
}

.table-box-col_col.table-box-col_col--will-02 {
	width: 39%;
}

.table-box-col__child {
	vertical-align: middle;
}

.table-box-col__child.table-box-col__child--th {
	text-align: center;
	padding: 1.5em .5em;
	font-weight: 700;
}

.table-box-col__child.table-box-col__child--th-p-small {
	padding: .85em .25em;
}

.table-box-col__child.table-box-col__child--td {
	text-align: left;
	padding: 1em;
	border: 1px solid var(--border-color--light);
	background: white;
}

.table-box-col__child.table-box-col__child--v-top {
	vertical-align: top;
}

.table-box-col.table-box-col--2c .table-box-col__child.table-box-col__child--td {
	text-align: center;
}

.table-box-col__child.table-box-col__child--top-th-type-01 {
	border: 1px solid var(--primary-color);
	background: var(--primary-color);
	color: white;
}

.table-box-col__child.table-box-col__child--top-th-type-02 {
	border: 1px solid var(--primary-color--dark);
	background: var(--primary-color--dark);
	color: white;
}

.table-box-col__child.table-box-col__child--left-th {
	border-bottom: 1px solid white;
	background: var(--bg-primary-color);
	color: var(--primary-color);
}

.table-box-col__body.table-box-col__body--stripe-yellow .table-box-col__row:nth-child(even) .table-box-col__child.table-box-col__child--td {
	background: var(--bg-yellow-color02);
}

.table-box-col__body.table-box-col__body--stripe-gray .table-box-col__row:nth-child(even) .table-box-col__child.table-box-col__child--td {
	background: var(--gray-light02);
}

/* ドットのリスト */
.list-point__item {
	position: relative;
	padding-left: 1em;
	text-indent: -1em;
}

.list-point__item::before {
	content: '・';
}

.list-point__item+.list-point__item {
	margin-top: 1rem;
}

.list-point.list-point--no-mt .list-point__item+.list-point__item {
	margin-top: 0;
}

.list-point__item.list-point__item--no-mt {
	margin-top: 0;
}

/* ドットのリスト02 */
.list-dot__item {
	position: relative;
	padding-left: 1.2em;
}

.list-dot__item::after {
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: .5em;
	height: .5em;
	border-radius: 50%;
	background: var(--primary-color);
}

.list-dot.list-dot--primary-light .list-dot__item::after {
	background: var(--primary-color--light);
}


.list-dot.list-dot--large .list-dot__item {
	padding-left: 2em;
}

.list-dot.list-dot--large .list-dot__item::after {
	top: .25em;
	left: 0;
	width: .9em;
	height: .9em;
}

.list-dot__item.list-dot__item--mt+.list-dot__item.list-dot__item--mt {
	margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
	.list-dot__item.list-dot__item--mt+.list-dot__item.list-dot__item--mt {
		margin-top: 1.5rem;
	}
}

.list-dot__item.list-dot__item--mt-small+.list-dot__item.list-dot__item--mt-small {
	margin-top: 1rem;
}

@media screen and (max-width: 767px) {
	.list-dot__item.list-dot__item--mt-small+.list-dot__item.list-dot__item--mt-small {
		margin-top: 1rem;
	}
}

/* 余白つきリスト */
.list-mt__item+.list-mt__item {
	margin-top: .5rem;
}

.list-mt.list-mt--middle .list-mt__item+.list-mt__item {
	margin-top: 1rem;
}

.list-mt.list-mt--large .list-mt__item+.list-mt__item {
	margin-top: 2.5rem;
}

/* ボックス番号つきリスト */
.list-num {
	counter-reset: list_num;
}

.list-num__item {
	position: relative;
	padding-left: 4em;
}

@media screen and (max-width: 767px) {
	.list-num__item {
		padding-left: 2.5em;
	}
}

.list-num>li::before {
	counter-increment: list_num;
	content: counter(list_num, decimal-leading-zero);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 0;
	top: -.2em;
	width: 2em;
	height: 2em;
	padding-top: .2em;
	background: var(--primary-color);
	color: white;
	font-weight: 600;
}

.list-num.list-num--mt .list-num__item+.list-num__item {
	margin-top: 2.75rem;
}

/* テキスト前にボックスがあるリスト */
.list-before-box__item {
	position: relative;
	padding-left: 2em;
}

.list-before-box__item::after {
	content: '';
	position: absolute;
	top: .2em;
	left: 0;
	width: 1em;
	height: 1em;
	background: var(--primary-color);
}

/* 矢印ボタンがたくさんあるリスト */
.list-btn-before-arrow {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 4rem 2rem;
}

@media screen and (max-width: 1119px) {
	.list-btn-before-arrow {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 767px) {
	.list-btn-before-arrow {
		grid-template-columns: 1fr;
	}
}

.list-btn-row-3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left: -1.5rem;
	margin-right: -1.5rem;
}

@media screen and (max-width: 767px) {
	.list-btn-row-3 {
		display: block;
		margin: 0;
	}
}

.list-btn-row-3__item {
	margin-top: 3rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media screen and (max-width: 767px) {
	.list-btn-row-3__item {
		margin-top: 1.5rem;
	}

	.list-btn-row-3__item+.list-btn-row-3__item {
		margin-top: 1.5rem;
	}
}

/* アスペクト比維持したまま画像 */
.img-aspect {
	position: relative;
	width: 100%;
	padding-top: 60%;
}

.img-aspect.img-aspect--blog {
	padding-top: 74.7942%;
}

.img-aspect.img-aspect--case {
	padding-top: 56.2857%;
}

.img-aspect.img-aspect--movile {
	padding-top: 56.2724%;
}

.img-aspect img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 文字画像 */
.img-txt img {
	max-width: 100%;
	height: auto;
}

/* サイン画像 */
.img-sign img {
	width: 100%;
	max-width: 23rem;
	height: auto;
}

/* 前後に何か文字をつけるとき */
.txt-before-after::before {
	content: attr(data-before);
}

.txt-before-after::after {
	content: attr(data-after);
}

.txt-before-after.txt-before-after--indent-10em {
	text-indent: -1em;
	padding-left: 1em;
}

/* 横並びテキスト */
.txt-flex {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: flex-end;
}

@media screen and (max-width: 767px) {
	.txt-flex.txt-flex--sp-block {
		display: block;
	}

	.txt-flex.txt-flex--sp-block .txt-flex__txt {
		margin-right: 0;
		display: block;
	}
}

/* テキストの前に◯ */
.txt-dot {
	position: relative;
	padding-left: 2em;
}

.txt-dot::after {
	content: '';
	position: absolute;
	top: .25em;
	left: 0;
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background: var(--primary-color);
}

/* 値段txt */
.txt-price-letter {
	font-size: 3.2rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.txt-price-letter {
		font-size: 22px;
	}
}

.txt-price-small-letter {
	font-size: 2rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.txt-price-small-letter {
		font-size: 16px;
	}

	.txt-price-small-letter.txt-price-small-letter--sp-fs-large {
		font-size: 18px;
	}
}

.txt-price-smaller-letter {
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.txt-price-small-letter {
		font-size: 12px;
	}
}

/* 丸の中にtxt */
.txt-in-circle {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 16.3rem;
	height: 16.3rem;
	border-radius: 50%;
	background: var(--primary-color);
	color: white;
}

@media screen and (max-width: 767px) {
	.txt-in-circle {
		width: 160px;
		height: 160px;
	}
}

@media screen and (max-width: 374px) {
	.txt-in-circle {
		width: 140px;
		height: 140px;
	}
}

.txt-in-circle__letter {
	font-size: 1.3rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.txt-in-circle__letter {
		font-size: 13px;
	}
}

@media screen and (max-width: 374px) {
	.txt-in-circle__letter {
		font-size: 12px;
	}
}

.txt-in-circle__large-letter {
	font-size: 2.6rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.txt-in-circle__large-letter {
		font-size: 22px;
	}
}

@media screen and (max-width: 374px) {
	.txt-in-circle__large-letter {
		font-size: 20px;
	}
}

.txt-in-circle__letter.txt-in-circle__letter--mt {
	margin-top: .5rem;
}

/* マーカー */
.txt-marker {
	padding: 0 .4em;
	background-image: linear-gradient(transparent .7em, var(--sky-color) 0, var(--sky-color) 1.2em, transparent 0);
}

.txt-marker.txt-marker--pl-none {
	padding-left: 0;
}

/* txt-indent */
.txt-indent-1em {
	text-indent: -1em;
	padding-left: 1em;
}

.txt-indent-2em {
	text-indent: -2em;
	padding-left: 2em;
}

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

/* ブログのスタイル */
.txt-single {
	word-break: break-all;
	overflow: hidden;
	font-size: var(--txt7-size);
	line-height: var(--txt7-height);
	letter-spacing: var(--txt7-ls);
}

.txt-single>*,
.txt-single .wp-block-table,
.txt-single .wp-block-image {
	margin-top: 4rem;
}

.txt-single>*:first-child {
	margin-top: 0rem;
}

.txt-single h1,
.txt-single h2,
.txt-single h3,
.txt-single h4,
.txt-single h5,
.txt-single h6 {
	font-weight: 700;
}

.txt-single h2 {
	padding-left: 2rem;
	border-left: 4px solid var(--primary-color);
	font-size: var(--txt3-size);
}

.txt-single h3 {
	padding: 3rem;
	background: var(--gray-light);
	font-size: var(--txt4-size);
}

.txt-single h4 {
	padding-bottom: 1rem;
	border-bottom: 2px dotted var(--border-color--light);
	font-size: var(--txt5-size);
}

.txt-single h5 {
	text-indent: -1em;
	padding-left: 1em;
	font-size: var(--txt5-size);
}

.txt-single h5::before {
	content: '○';
}

.txt-single h6 {
	text-indent: -1em;
	padding-left: 1em;
	font-size: var(--txt5-size);
}

.txt-single h6::before {
	content: '■';
}

.txt-single img {
	display: block;
	max-width: 100%;
	height: auto;
}

.txt-single figcaption {
	margin-top: 1rem;
	color: #888;
	font-size: 80%;
}

.txt-single ul>li {
	text-indent: -1.1em;
	padding-left: 1.1em;
}

.txt-single ul>li:before {
	content: '・';
}

.txt-single ol {
	counter-reset: ol_li;
}

.txt-single ol>li {
	position: relative;
	padding-left: 1.3em;
}

.txt-single ol>li::before {
	counter-increment: ol_li;
	content: counter(ol_li)".";
	color: var(--primary-color);
	position: absolute;
	left: 0;
	top: 0;
}

.txt-single a:not(.btn) {
	color: var(--primary-color);
	text-decoration: underline;
}

@media (hover: hover) {
	.txt-single a:hover {
		text-decoration: none;
	}
}

.txt-single table {
	width: 100%;
	background: white;
}

.txt-single table th,
.txt-single table td {
	border: 1px solid var(--border-color--light);
	padding: 1.5rem;
	text-align: left;
}

.txt-single table th {
	background-color: var(--gray-light);
	font-weight: 500;
}

.txt-single blockquote {
	display: inline-block;
	background: var(--gray-light);
	padding: 3rem;
}

.txt-single cite {
	margin-top: 2rem;
	display: block;
	text-align: right;
	font-size: 80%;
}

.txt-single cite::before {
	content: '引用元：';
}

.txt-single .wp-block-group {
	margin-top: 7rem;
}

.txt-single .wp-block-group:first-child {
	margin-top: 0;
}

.txt-single .wp-block-group .wp-block-group__inner-container>* {
	margin-top: 2rem;
}

.txt-single .wp-block-group .wp-block-group__inner-container>*:first-child {
	margin-top: 0;
}

.txt-single .wp-block-button__link {
	text-decoration: none;
}


/* ページネーション */
.pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gray);
	font-family: var(--en-font);
	font-size: 1.8rem;
	line-height: 1;
	font-weight: 400;
}

.pagination.pagination--mt {
	margin-top: 8rem;
}

.page-numbers {
	color: var(--bluegray-color);
	margin-right: 2rem;
}

.page-numbers:last-child {
	margin-right: 0;
}

.page-numbers.current {
	pointer-events: none !important;
	color: var(--primary-color);
}

.page-numbers.dots {
	pointer-events: none;
}

.page-numbers.prev {
	margin-right: 3rem;
}

.page-numbers.next {
	margin-left: 1rem;
}

.page-numbers.prev,
.page-numbers.next {
	display: block;
	position: relative;
	width: 5rem;
	height: 5rem;
	border-radius: 1rem;
	border: 2px solid var(--border-color--sky);
	background: var(--primary-color);
}

.page-numbers.prev::after,
.page-numbers.next::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1em;
	height: 1em;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.page-numbers.prev::after {
	background-image: url(../img/icon-yajirushi-white-left.svg);
}

.page-numbers.next::after {
	background-image: url(../img/icon-yajirushi-white-right.svg);
}

.page-numbers:hover {
	color: var(--primary-color);
	transition: var(--normal-transition);
}

.page-numbers.prev:hover,
.page-numbers.next:hover,
.page-numbers.first:hover,
.page-numbers.last:hover {
	background: var(--accent-color);
	transition: var(--normal-transition);
}

/* form レイアウト */
.form__input {
	margin-left: auto;
	margin-right: auto;
	max-width: 980px;
}

.form__content {
	padding-bottom: 4rem;
	border-bottom: 1px solid var(--border-color--light);
}

.form__content:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

.form__content+.form__content {
	margin-top: 4rem;
}

.form__content-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.form__content-row.form__content-row--a-start {
	align-items: flex-start;
}

.form__content-row.form__content-row--a-start .form__content-label {
	padding-top: 2rem;
}

@media screen and (max-width: 1199px) {
	.form__content-row.form__content-row--a-start .form__content-label {
		padding-top: 0;
	}
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-row.form__content-row--a-start .form__content-label {
	padding-top: 1rem;
}

.form__content-label {
	width: 30%;
}

@media screen and (max-width: 1199px) {
	.form__content-label {
		width: 100%;
	}
}

.form__content-label-row {
	display: flex;
	align-items: center;
}

.form__content-label-txt {
	margin-right: 2rem;
}

.form__content-input {
	width: 65%;
}

@media screen and (max-width: 1199px) {
	.form__content-input {
		margin-top: 1rem;
		width: 100%;
	}
}

.form__content-input.form__content-input--has-child {
	margin-top: 2rem;
}

.form__content-input-row {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 1199px) {
	.form__content-input-row {
		display: block;
	}
}

.form__content-input-control {
	margin-right: 1.5rem;
	width: 100%;
}

@media screen and (max-width: 1199px) {
	.form__content-input-control {
		margin-right: 0;
	}
}

.form__content-note {
	flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
	.form__content-note {
		margin-top: 1rem;
		padding: 0 2rem;
	}
}

.form__content-input-child+.form__content-input-child {
	margin-top: 1rem;
}

.form__content-input-child {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.form__content-input-child-heading {
	width: 25%;
}

@media screen and (max-width: 767px) {
	.form__content-input-child-heading {
		width: 100%;
	}
}

.form__content-input-child-body {
	width: 70%;
}

@media screen and (max-width: 767px) {
	.form__content-input-child-body {
		margin-top: 1.5rem;
		width: 100%;
	}
}

.form__content-input-child-body-row {
	display: flex;
	align-items: center;
}

.form__content-input-child-body-input {
	margin-right: 1rem;
}

.form__content-input-child-body {
	margin-right: 1rem;
}

.form__content-address {
	display: flex;
	align-items: center;
}

.form__content-address-num {
	margin-right: .5rem;
}

.form__content-birth {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.form__content-birth {
		display: block;
	}
}

.form__content-birth-content {
	margin-right: 2rem;
}

.form__content-birth-content:last-child {
	margin-right: 0;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-birth-content {
	margin-right: 0;
}

@media screen and (max-width: 767px) {
	.form__content-birth-content {
		margin-right: 0;
	}

	.form__content-birth-content+.form__content-birth-content {
		margin-top: 1rem;
	}
}

.form__content-birth-content-row {
	display: flex;
	align-items: center;
}

.form__content-birth-content-input {
	margin-right: 1rem;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-birth-content-input {
	margin-right: 0;
}

@media screen and (max-width: 767px) {
	.form__content-birth-content-input {
		width: 100%;
	}

	/* 確認画面表示設定 */
	.mw_wp_form_preview .form__content-birth-content-input {
		width: auto;
	}
}

.form__content-address-input {
	width: 180px;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-address-input {
	width: auto;
}

.form__content-ken-input {
	width: 300px;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-ken-input {
	width: auto;
}

.form__content-borth-year-input {
	width: 150px;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-borth-year-input {
	width: auto;
}

.form__content-borth-date-input {
	width: 100px;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__content-borth-date-input {
	width: auto;
}

@media screen and (max-width: 767px) {
	.form__content-borth-year-input {
		width: 100%;
	}

	.form__content-borth-date-input {
		width: 100%;
	}

	/* 確認画面表示設定 */
	.mw_wp_form_preview .form__content-borth-year-input,
	.mw_wp_form_preview .form__content-borth-date-input {
		width: auto;
	}
}

.form__kiyaku {
	margin-top: 6rem;
	text-align: center;
}

.form__btn {
	margin-top: 3rem;
	text-align: center;
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form__btn {
	margin-top: 8rem;
}

.form__btn-content+.form__btn-content {
	margin-top: 2rem;
}

.form__note {
	margin-top: 6rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 980px;
}

/* form コントロール */
.form-input input,
.form-input select,
.form-input textarea {
	width: 100%;
	background: white;
	border: 1px solid var(--border-color--light);
	font-size: var(--input-size);
	line-height: var(--input-height);
}

.form-input input::-webkit-input-placeholder,
.form-input select::-webkit-input-placeholder,
.form-input textarea::-webkit-input-placeholder,
.form-input input::placeholder,
.form-input select::placeholder,
.form-input textarea::placeholder {
	color: var(--placeholder-color);
}

.form-input input,
.form-input select {
	height: 5rem;
	padding: 0 2rem;
}

.form-input textarea {
	height: 30rem;
	padding: 2rem;
}

@media screen and (max-width: 767px) {

	.form-input input,
	.form-input select {
		height: 50px;
	}

	.form-input textarea {
		height: 250px;
	}
}

/* 確認画面表示設定 */
.mw_wp_form_preview .form-input {
	font-size: var(--input-size);
	line-height: var(--input-height);
}

/* セレクトボックス */
.select-custom {
	position: relative;
}

.select-custom select {
	color: var(--placeholder-color);
}

.select-custom select.selected {
	color: var(--font-color);
}

.select-custom::after {
	pointer-events: none;
	content: '';
	position: absolute;
	right: 2rem;
	top: 1.25em;
	width: 1rem;
	height: 1rem;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	border-top: 2px solid var(--border-color);
	border-right: 2px solid var(--border-color);
}

@media only screen and (max-width: 767px) {
	.select-custom::after {
		top: 1.6em;
		width: 12px;
		height: 12px;
	}
}

.mw_wp_form_preview .select-custom::after {
	display: none;
}

/* ラジオボタン */
.radio-custom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	font-size: var(--input-size);
}

@media only screen and (max-width: 767px) {
	.radio-custom {
		display: block;
		font-size: 14px;
	}
}

.radio-custom .mwform-radio-field {
	margin: 1rem 3rem 1rem 0;
}

@media only screen and (max-width: 767px) {
	.radio-custom .mwform-radio-field {
		margin: .75rem 0 .75rem 0;
	}
}

.radio-custom .mwform-radio-field>label {
	display: block;
	color: #000;
}

.radio-custom .mwform-radio-field>label input[type=radio] {
	position: absolute;
	left: -999999px;
	opacity: 0;
}

.radio-custom .mwform-radio-field>label input[type=radio]+.mwform-radio-field-text:before {
	content: "";
	background: #fff;
	border-radius: 100%;
	border: 1px solid #333;
	display: inline-block;
	width: 1em;
	height: 1em;
	position: relative;
	top: 0.1em;
	margin-right: 0.4em;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
}

.radio-custom .mwform-radio-field>label input[type=radio]:checked+.mwform-radio-field-text:before {
	background-color: #000;
	box-shadow: inset 0 0 0 3px #fff;
}

.radio-custom .mwform-radio-field>label input[type=radio]:focus+.mwform-radio-field-text:before {
	outline: none;
}

.radio-custom .mwform-radio-field>label input[type=radio]:disabled+.mwform-radio-field-text:before {
	box-shadow: inset 0 0 0 4px #fff;
	border-color: #bfbfbf;
	background: #bfbfbf;
}

.radio-custom .mwform-radio-field>label input[type=radio]+.mwform-radio-field-text:empty:before {
	margin-right: 0;
}


/* 規約checkbox */
.checkbox-custom {
	position: relative;
}

.checkbox-custom .mwform-checkbox-field {
	display: inline-block;
}

.checkbox-custom .mwform-checkbox-field-text {
	text-align: left;
	display: inline-block;
	position: relative;
	padding-left: 1.5em;
	font-size: var(--input-size);
	line-height: var(--input-height);
}

@media only screen and (max-width: 767px) {
	.checkbox-custom .mwform-checkbox-field-text {
		font-size: 14px;
	}
}

.checkbox-custom .mwform-checkbox-field-text::before {
	content: "";
	display: block;
	position: absolute;
	top: .1em;
	left: 0;
	width: 1em;
	height: 1em;
	border: 1px solid var(--font-color);
}

.checkbox-custom .checkbox-custom__input:checked+.mwform-checkbox-field-text::after {
	content: "";
	display: block;
	position: absolute;
	top: .05em;
	left: .3em;
	width: .5em;
	height: 1em;
	transform: rotate(40deg);
	border-bottom: 3px solid var(--primary-color);
	border-right: 3px solid var(--primary-color);
}

.checkbox-custom__input {
	display: none;
}

.mw_wp_form_preview .checkbox-custom {
	font-size: var(--txt5-size);
	line-height: var(--txt5-height);
}

/* 必須のテキスト */
.hissu {
	border-radius: .5em;
	padding: .35em .5em .45em;
	background: #A9171F;
	color: white;
	font-size: 1.2rem;
}

@media screen and (max-width: 767px) {
	.hissu {
		font-size: 12px;
	}
}

/* 確認画面表示設定 */
.mw_wp_form_preview .confirm-none {
	display: none;
}

.confirm-show {
	display: none;
}

.mw_wp_form_preview .confirm-show {
	display: block;
}

/* エラー画面表示設定 */
.mw_wp_form .error {
	margin-top: 1rem;
}


/******************************************
ここから特定場所使用ののcss
********************************************/

/* header */
.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: var(--header-z-plus-two);
	width: 100%;
}

@media only screen and (max-width: 1379px) {
	.header__inner {
		width: 100%;
		background: var(--primary-color);
	}
}

.header__row {
	display: flex;
}

@media only screen and (max-width: 1379px) {
	.header__row {
		justify-content: space-between;
	}
}

.header__logo {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	padding-left: 5rem;
	padding-right: calc(5rem + 1%);
	background: var(--primary-color);
}

.header__logo::after {
	content: '';
	position: absolute;
	top: 0;
	left: 1px;
	transform: translateX(-100%);
	width: 100vw;
	height: 100%;
	background: var(--primary-color);
}

@media only screen and (max-width: 1719px) {
	.header__logo {
		padding-left: 0;
		padding-right: calc(1.5rem + 1%);
	}

	/* safari */
	_::-webkit-full-page-media,
	_:future,
	:root .header__logo {
		padding-right: 1.5rem;
	}
}

@media only screen and (max-width: 1379px) {
	.header__logo {
		padding-left: 1.5rem;
		padding-right: 0;
	}

	/* safari */
	_::-webkit-full-page-media,
	_:future,
	:root .header__logo {
		padding-right: 0;
	}

	.header__logo::after {
		display: none;
	}
}

.header__right {
	display: flex;
}

@media only screen and (max-width: 1379px) {
	.header__right {
		display: none;
	}
}

.header__menu {
	flex-shrink: 0;
}

.header__tel {
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding-left: 3rem;
	padding-right: 3rem;
	background: white;
}

@media only screen and (max-width: 1719px) {
	.header__tel {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

.header__cv {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	background: white;
}

.header__cv::after {
	content: '';
	position: absolute;
	top: 0;
	right: 1px;
	transform: translateX(100%);
	width: 100vw;
	height: 100%;
	background: white;
}

.header__cv-sub {
	flex-shrink: 0;
}

.header__cv-sub-group {
	display: table;
	width: 100%;
}

.header__cv-sub-row {
	display: table-row
}

.header__cv-sub-content {
	vertical-align: middle;
	display: table-cell;
	padding-right: 1rem;
}

.header__cv-sub-content.header__cv-sub-content--pt {
	padding-top: 1rem;
}

.header__cv-sub-content:last-child {
	padding-right: 0;
}

.header__cv-main {
	margin-top: .5rem;
	padding-right: 1px;
}

.header__menu-btn {
	display: none;
}

@media screen and (max-width: 1379px) {
	.header__menu-btn {
		display: block;
		position: relative;
		z-index: var(--header-z-plus);
	}
}

/* スクロール後 */
@media screen and (min-width: 1380px) {
	.header.scroll-active {
		transition: var(--normal-transition);
		box-shadow: 0 0 5px var(--shadow-color--dark);
		background: white;
	}

	.header.scroll-active .header__row {
		justify-content: space-between;
	}

	.header.scroll-active .header__logo {
		background: transparent;
	}

	.header.scroll-active .header__logo::after {
		display: none;
	}

	.header.scroll-active .header__right {
		display: contents;
	}

	.header.scroll-active .menu__txt {
		white-space: nowrap;
		padding-top: 3rem;
		padding-bottom: 3rem;
		background: transparent;
		color: var(--font-color);
	}

	.header.scroll-active .header__menu {
		padding-right: 0;
	}

	.header.scroll-active .header__cv {
		display: none;
	}
}

.header__cv-sub-content.header__cv-sub-content--btn-cv {
	padding-right: 1px;
}

.header__cv-sub-content .btn-cv {
	min-width: auto;
	width: 100%;
}

/* SP ナビゲーション */
.header-nav {
	display: none;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	pointer-events: none;
	position: fixed;
	right: -100000px;
	top: var(--header-height);
	z-index: var(--header-z);
	width: 100%;
	height: 100%;
	padding-bottom: 200px;
	border-top: 1px solid var(--font-color);
	background: white;
}

@media screen and (max-width: 1379px) {
	.header-nav {
		display: block;
	}
}

.header-nav.active {
	pointer-events: auto;
	right: 0;
	transition: right var(--normal-transition);
}

.header-nav__tel {
	margin-top: 6rem;
	text-align: center;
}

.header-nav__cv {
	padding: 0 var(--inner-responsive-p);
}

.header-nav__cv-sub {
	margin-top: 3rem;
}

.header-nav__cv-sub-col {
	text-align: center;
}

.header-nav__cv-sub-content+.header-nav__cv-sub-content {
	margin-top: 2rem;
}

.header-nav__cv-main {
	margin-top: 3rem;
	text-align: center;
}

@media only screen and (max-width: 1379px) {
	.header-nav .tel-number {
		font-size: 40px;
	}

	.header-nav .tel__txt-letter {
		font-size: 14px;
	}

	.header-nav .btn-before-icon__img {
		margin-right: 7px;
	}

	.header-nav .btn-before-icon__icon {
		width: 33px;
		height: 33px;
	}

	.header-nav .btn-before-icon__icon.btn-before-icon__icon--mail::after {
		width: 15.75px;
		height: 15px;
	}

	.header-nav .btn-before-icon__icon.btn-before-icon__icon--line::after {
		width: 18px;
		height: 17px;
	}

	.header-nav .btn-before-icon__icon.btn-before-icon__icon--online::after {
		width: 15.75px;
		height: 15px;
	}

	.header-nav .btn-before-icon__letter {
		font-size: 16px
	}

	.header-nav .btn-cv {
		padding: 10px 20px;
		font-size: 18px;
	}
}

@media only screen and (max-width: 500px) {
	.header-nav .tel-number {
		font-size: 35px;
	}

	.header-nav .tel__txt-letter {
		font-size: 12px;
	}

	.header-nav .btn-cv {
		display: block;
	}
}

@media only screen and (max-width: 374px) {
	.header-nav .tel-number {
		font-size: 30px;
	}
}

/* フロート */
.float-area {
	display: none;
	pointer-events: none;
	position: fixed;
	left: 0;
	bottom: 0;
	transform: translateY(100%);
	z-index: var(--header-z-plus);
	width: 100%;
	background: linear-gradient(90deg, var(--primary-color) 0%, var(--primary-color)50%, var(--line-color) 50%, var(--line-color) 100%);
	transition: transform var(--normal-transition);
}

.float-area.active {
	pointer-events: all;
	transform: translateY(0);
}

@media screen and (max-width: 500px) {
	.float-area {
		display: block;
	}
}

.float-area__row {
	display: flex;
}

.float-area__content-d {
	width: 18.33333333%;
	padding: 1vw;
	background: var(--primary-color);
}

.float-area__content-d.float-area__content-d--tel {
	width: 45%;
}

.float-area__content-d.float-area__content-d--line {
	background: var(--line-color);
	color: white;
	padding: 2vw;
}

.float-area__content-d.float-area__content-d--px-none {
	padding-left: 0;
	padding-right: 0;
}

.float-area__box {
	display: block;
	text-align: center;
	height: 100%;
	padding: 0.41vw .76vw;
	background: white;
}

.float-area__content-d.float-area__content-d--line .float-area__box {
	background: var(--line-color);
	padding: 0;
}

.float-area__box-btn-wrap {
	margin-top: .5vw;
	text-align: center;
}

.float-area__box-btn {
	display: block;
	position: relative;
	text-align: center;
	border-radius: 5em;
	padding: .35em 1em;
	border: 2px solid var(--primary-color--light);
	background: var(--primary-color--light);
	color: white;
	font-size: 1.7vw;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0
}

.float-area__box-btn.float-area__box-btn--ib {
	display: inline-block;
}

.float-area__box-img {
	text-align: center;
}

.float-area__box-image img {
	width: 100%;
	height: auto;
}

.float-area__box-image.float-area__box-image--online img {
	max-width: 10vw;
}

.float-area__box-image.float-area__box-image--mail img {
	max-width: 10vw;
}

.float-area__box-image.float-area__box-image--line img {
	max-width: 8vw;
}


.float-area__tel-box-row {
	text-align: center;
}

.float-area__tel-box-heading {
	display: flex;
	align-items: center;
	justify-content: center;
}

.float-area__tel-box-heading-content {
	display: inline-block;
	min-width: 15vw;
	text-align: center;
	padding: .25em 1em;
	background: var(--primary-color--light);
	color: white;
	font-size: 1.8vw;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

.float-area__tel-box-heading-content+.float-area__tel-box-heading-content {
	margin-left: .5vw;
}

.float-area__tel-box-number {
	margin-top: 1vw;
	width: 100%;
}

.float-area__tel-box-number-skin .tel-number {
	white-space: nowrap;
	font-size: 4.3vw;
}

.float-area__tel-box-txt {
	white-space: nowrap;
}


.float-area__tel-box-txt-letter {
	font-size: 1.6vw;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

.float-area__line-btn {
	margin-top: 1vw;
	width: 100%;
}

.float-area__line-btn-skin .btn-tri {
	text-align: center;
	min-width: 100%;
	width: 100%;
	padding: .5em 1em;
	padding-right: 2em;
	font-size: 1.7vw;
}

.float-area__line-btn-skin .btn-tri::after {
	right: .5em;
}

.float-area__line-msg {
	margin-top: 1vw;
	text-align: center;
}

.float-area__line-msg-letter {
	font-size: 1.7vw;
	line-height: 1.7;
	font-weight: 600;
	letter-spacing: 0;
}

/* page-top */
.return-top-btn {
	pointer-events: none;
	opacity: 0;
	display: block;
	position: fixed;
	bottom: 4rem;
	right: 4rem;
	z-index: var(--minus-z);
}

@media screen and (max-width: 500px) {
	.return-top-btn {
		right: 5vw;
		bottom: 25vw;
	}
}

.return-top-btn.active {
	opacity: 1;
	z-index: var(--header-z);
	transition: var(--normal-transition);
}

.return-top-btn__main {
	text-align: center;
}

.return-top-btn__btn {
	pointer-events: all;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	text-align: center;
	width: 8rem;
	height: 8rem;
	border-radius: 50%;
	border: 1px solid var(--primary-color--light);
	background: var(--primary-color--light);
	color: white;
}

@media screen and (max-width: 500px) {
	.return-top-btn__btn {
		width: 15vw;
		height: 15vw;
	}
}

.return-top-btn__arrow {
	display: inline-block;
	width: .6em;
	height: .6em;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	border-bottom: 2px solid white;
	border-left: 2px solid white;
}

.return-top-btn__btn-txt {
	margin-top: .5rem;
}

.return-top-btn__btn-txt-letter {
	color: currentColor;
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 400;
	letter-spacing: 0;
}

@media screen and (max-width: 500px) {
	.return-top-btn__btn-txt-letter {
		font-size: 2.5vw;
	}
}

@media (hover: hover) {
	.return-top-btn__btn:hover {
		background: white;
		color: var(--primary-color--light);
		transition: var(--normal-transition);
	}

	.return-top-btn__btn:hover .return-top-btn__arrow {
		border-color: var(--primary-color--light);
		transition: var(--normal-transition);
	}
}

.return-top-btn__other {
	margin-top: 2rem;
	text-align: center;
}

@media screen and (max-width: 500px) {
	.return-top-btn__other {
		display: none;
	}
}

.return-top-btn__other-btn {
	pointer-events: all;
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 20rem;
	border-radius: 1rem;
	padding: 1rem 2rem;
	border: 2px solid var(--primary-color);
	background: white;
	color: var(--primary-color);
	font-size: var(--btn03-size);
	line-height: var(--btn03-height);
	font-weight: var(--btn03-weight);
	letter-spacing: var(--btn03-ls);
}

@media (hover: hover) {
	.return-top-btn__other-btn:hover {
		background: var(--primary-color);
		color: white;
		transition: var(--normal-transition);
	}
}

/* footer */
.footer__main {
	padding: 5rem 0 10rem;
	background: var(--bg-gray-color);
}

@media screen and (max-width: 767px) {
	.footer__main {
		padding-bottom: 5rem;
	}
}

@media screen and (max-width: 767px) {
	.footer__banners {
		padding: 0 3rem;
	}
}

.footer__banners-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem .7rem;
}

@media screen and (max-width: 767px) {
	.footer__banners-row {
		grid-template-columns: 1fr;
	}
}

.footer__banners-item-image {
	display: block;
}

.footer__banners-item-image img {
	width: 100%;
	height: auto;
}

.footer__menu {
	margin-top: 4rem;
	max-width: 1135px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 767px) {
	.footer__menu {
		padding: 0 3rem;
	}
}

.footer__sub {
	padding: 2rem 0;
	text-align: center;
	background: white;
}

.footer__copyright {
	margin-top: 1.5rem;
}

.footer__copyright-letter {
	font-size: 1.2rem;
	line-height: 1.5;
}

@media screen and (max-width: 767px) {
	.footer__copyright-letter {
		font-size: 10px;
	}
}

/* page-common-cv-area */
.page-common-cv-area {
	overflow: hidden;
	position: relative;
	padding: 7.5rem 0;
}

.page-common-cv-area__img {
	position: absolute;
	top: 0;
	left: 0;
	z-index: var(--minus-z);
	width: 100%;
	height: 100%;
}

.page-common-cv-area__image {
	height: 100%;
}

.page-common-cv-area__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.page-common-cv-area__image img {
		min-height: 450px;
	}
}

.page-common-cv-area__main {
	padding-left: 5rem;
	padding-right: 5rem;
}

@media screen and (max-width: 1719px) {
	.page-common-cv-area__main {
		padding-left: 0;
		padding-right: 0;
	}
}

.page-common-cv-area__txt {
	position: relative;
	text-align: center;
	width: 100%;
	color: white;
}

.page-common-cv-area__desc {
	margin-top: 4rem
}

.page-common-cv-area__tel {
	margin-top: 5rem;
}

.page-common-cv-area__btn {
	margin-top: 2rem;
}

@media screen and (max-width: 767px) {
	.page-common-cv-area__btn {
		margin-top: 3.5rem;
	}
}

/* page-common-case */
.page-common-case__main {
	position: relative;
}

.page-common-case__content {
	position: relative;
	padding: 6rem 0 3rem;
}

@media screen and (max-width: 1119px) {
	.page-common-case__content {
		padding: 6rem 0;
	}
}

.page-common-case__content+.page-common-case__content {
	margin-top: 4rem;
}

@media screen and (max-width: 1119px) {
	.page-common-case__content+.page-common-case__content {
		margin-top: 0;
	}
}

.page-common-case__content-heading {
	position: relative;
	z-index: var(--normal-z);
}

.page-common-case__content-main {
	margin-top: 2rem;
	position: relative;
	z-index: var(--normal-z);
}

.page-common-case__content-btn {
	margin-top: 3rem;
	text-align: center;
}

@media screen and (max-width: 1119px) {
	.page-common-case__content-btn {
		margin-top: 6rem;
	}
}

.page-common-case__content-bg {
	position: absolute;
	top: 0;
	right: 0;
	z-index: var(--zero-z);
	width: 100%;
	max-width: 1770px;
	height: 100%;
}

.page-common-case__content-bg-image {
	height: 100%;
}

.page-common-case__content-bg-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem 0 0 1rem;
}

@media screen and (max-width: 1769px) {
	.page-common-case__content-bg-image img {
		border-radius: 0;
	}
}

.page-common-case__content:nth-child(even) .page-common-case__content-bg {
	right: auto;
	left: 0;
}

.page-common-case__content:nth-child(even) .page-common-case__content-bg-image img {
	border-radius: 0 1rem 1rem 0;
}

@media screen and (max-width: 1769px) {
	.page-common-case__content:nth-child(even) .page-common-case__content-bg-image img {
		border-radius: 0;
	}
}

.page-common-case__main-en {
	position: absolute;
	top: 42%;
	left: 0;
	z-index: var(--zero-z);
}

@media screen and (max-width: 1119px) {
	.page-common-case__main-en {
		display: none;
	}
}

/* page-common-intro */
.page-common-intro {
	text-align: center;
	padding: 5rem 0;
	background: var(--primary-color);
	color: white;
}

@media screen and (max-width: 1119px) {
	.page-common-intro {
		text-align: left;
	}
}

.page-common-intro.page-common-intro--about {
	padding-bottom: 14rem;
}

@media screen and (max-width: 1119px) {
	.page-common-intro.page-common-intro--about {
		padding-bottom: 5rem;
	}
}

.page-common-intro.page-common-intro--bg-clear {
	background: transparent;
	color: var(--font-color)
}

/* page-common-plan-msg */
.page-common-plan-msg {
	padding: 4.5rem 0;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.page-common-plan-msg {
		text-align: left;
	}
}

.page-common-plan-msg__txt+.page-common-plan-msg__txt {
	margin-top: 1.5rem;
}

/* page-common-plan-intro */
.page-common-plan-intro {
	text-align: center;
}

.page-common-plan-intro__inner {
	max-width: 626px;
	margin-left: auto;
	margin-right: auto;
}

.page-common-plan-intro__inner.page-common-plan-intro__inner--large {
	max-width: 808px;
}

.page-common-plan-intro__chu {
	margin-top: 1rem;
}

@media screen and (max-width: 767px) {
	.page-common-plan-intro__chu {
		text-align: left;
	}
}

/* page-common-jisseki */
.page-common-jisseki {
	padding: 1.5rem 0;
}

.page-common-jisseki__main-row {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.page-common-jisseki__main-row {
		display: block;
	}
}

.page-common-jisseki__cercle {
	margin-right: 3.5rem;
	flex-shrink: 0;
}

@media screen and (max-width: 767px) {
	.page-common-jisseki__cercle {
		margin-right: 0;
		display: table;
		margin-left: auto;
		margin-right: auto;
	}
}

.page-common-jisseki__cercle-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.3rem;
}

.page-common-jisseki__txt {
	width: 100%;
}

@media screen and (max-width: 767px) {
	.page-common-jisseki__txt {
		margin-top: 2rem;
		display: table;
		margin-left: auto;
		margin-right: auto;
		width: auto;
	}
}

/* page-common-best-inheritance */
.page-common-best-inheritance__main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-common-best-inheritance__desc {
	margin-top: 2rem;
}

.page-common-best-inheritance__img {
	width: 35.75%;
}

@media screen and (max-width: 1119px) {
	.page-common-best-inheritance__img {
		width: 100%;
	}
}

.page-common-best-inheritance__txt {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 60.5%;
	padding: 2rem 3.5rem;
	background: var(--bg-primary-color--02);
}

@media screen and (max-width: 1119px) {
	.page-common-best-inheritance__txt {
		margin-top: 4rem;
		width: 100%;
		padding: 3.5rem 2rem;
	}
}

.page-common-best-inheritance__txt-list-item+.page-common-best-inheritance__txt-list-item {
	margin-top: 2rem;
}

/* page-common-service-list */
.page-common-service-list__content {
	padding: 8rem 0;
}

.page-common-service-list__content:nth-child(odd) {
	background: var(--bg-sky-color);
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content {
		display: flex;
		flex-direction: column;
	}
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-heading {
		order: 1;
	}
}

.page-common-service-list__content-desc {
	margin-top: 6rem;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-desc {
		margin-top: 3.5rem;
		order: 3;
	}
}

.page-common-service-list__content-list {
	margin-top: 3.5rem;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-list {
		order: 4;
	}
}

.page-common-service-list__content-main {
	margin-top: 4rem;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-main {
		margin-top: 0;
		display: contents;
	}
}

.page-common-service-list__content-main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-main-row {
		display: contents;
	}
}

.page-common-service-list__content-main-img {
	width: 40.25%;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-main-img {
		margin-top: 4rem;
		order: 2;
		width: 100%;
	}
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-main-image {
		max-width: 700px;
		margin-left: auto;
		margin-right: auto;
	}
}

.page-common-service-list__content-main-txt {
	width: 56%;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-main-txt {
		margin-top: 3rem;
		order: 5;
		width: 100%;
	}
}

.page-common-service-list__content-main-price-box-chu {
	margin-top: 1rem;
}

.page-common-service-list__content-main-list {
	margin-top: 1.5rem;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-main-list {
		margin-top: 3rem;
	}
}

.page-common-service-list__content-main-list-chu {
	margin-top: 1rem;
}

.page-common-service-list__content-btn {
	margin-top: 5rem;
}

@media screen and (max-width: 1119px) {
	.page-common-service-list__content-btn {
		order: 6;
	}
}

/* page-common-intro-img-txt */
.page-common-intro-img-txt__row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-common-intro-img-txt__txt {
	width: 55%;
}

@media screen and (max-width: 1119px) {
	.page-common-intro-img-txt__txt {
		width: 100%;
	}
}

.page-common-intro-img-txt__img {
	width: 42%;
}

@media screen and (max-width: 1119px) {
	.page-common-intro-img-txt__img {
		margin-top: 4rem;
		width: 100%;
	}
}

/* page-common-article-box-border-r-section */
.page-common-article-box-border-r-section {
	display: grid;
	grid-template-columns: 1fr;
	gap: 4.5rem 0;
}

/* page comon access */
.page-common-access__content+.page-common-access__content {
	margin-top: 4rem;
}

.page-common-access__content-desc {
	margin-top: 4rem;
	text-align: center;
}

@media screen and (max-width: 1119px) {
	.page-common-access__content-desc {
		text-align: left;
	}
}

.page-common-access__content-desc.page-common-access__content-desc--tlma {
	display: table;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

.page-common-access__content-main {
	margin-top: 4rem;
}

.page-common-access__content-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-common-access__content-img {
	width: 57%;
}

@media screen and (max-width: 1119px) {
	.page-common-access__content-img {
		width: 100%;
	}
}

.page-common-access__content-txt {
	width: 38%;
}

@media screen and (max-width: 1119px) {
	.page-common-access__content-txt {
		margin-top: 4rem;
		width: 100%;
	}
}


/* TOP news */
.top-news {
	margin-top: -6.5rem;
	position: relative;
	padding-bottom: 4.5rem;
}

@media screen and (max-width: 1379px) {
	.top-news {
		margin-top: -.4rem;
		padding-top: 6rem;
		background: var(--black-light-color);
	}
}

.top-news__main {
	position: relative;
	z-index: var(--normal-z);
}

.top-news__main-box {
	padding: 1.7rem 4rem 3rem;
	background: white;
	box-shadow: var(--shadow);
}

@media screen and (max-width: 1119px) {
	.top-news__main-box {
		padding: 4rem 2rem;
	}
}

.top-news__main-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.top-news__heading {
	width: 20%;
}

@media screen and (max-width: 1119px) {
	.top-news__heading {
		width: 100%;
	}
}

.top-news__data {
	width: 75%;
}

@media screen and (max-width: 1119px) {
	.top-news__data {
		margin-top: 4rem;
		width: 100%;
	}
}

.top-news__bg {
	overflow: hidden;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: var(--zero-z);
	height: 23rem;
	padding-right: 13rem;
}

@media screen and (max-width: 1119px) {
	.top-news__bg {
		display: none;
	}
}

.top-news__bg-box {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
	min-width: 8rem;
	height: 100%;
	padding-left: 3.5rem;
	padding-right: 26rem;
	background: var(--black-light-color);
}

@media screen and (max-width: 1119px) {
	.top-news__bg-box {
		min-width: auto;
		width: 100%;
		padding-left: var(--inner-responsive-p);
		padding-right: var(--inner-responsive-p);
	}
}

.top-news__bg-box::after {
	content: '';
	position: absolute;
	top: 0;
	right: -12.9rem;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25rem 13rem 0 0;
	border-color: var(--black-light-color) transparent transparent transparent;
}

/* TOP service */
.top-service {
	margin-top: -23rem;
	padding-top: 30rem;
}

@media screen and (max-width: 1119px) {
	.top-service {
		margin-top: 0;
		padding-top: var(--section-padding);
		padding-bottom: 0;
	}
}

.top-service__main {
	max-width: 500px;
}

@media screen and (max-width: 1119px) {
	.top-service__main {
		max-width: 100%;
	}
}

.top-service__list {
	margin-top: 4.5rem;
}

@media screen and (max-width: 767px) {
	.top-service__list {
		margin-top: 3rem;
	}
}

.top-service__desc {
	margin-top: 4.5rem;
}

@media screen and (max-width: 767px) {
	.top-service__desc {
		margin-top: 3rem;
	}
}

.top-service__btn {
	margin-top: 6rem;
}

@media screen and (max-width: 767px) {
	.top-service__btn {
		margin-top: 3rem;
		text-align: center;
	}
}

/* TOP movie */
.top-movie {
	position: relative;
}

.top-movie::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(39, 150, 156, .5);
}

.top-movie video {
	vertical-align: bottom;
	width: 100%;
	height: 50rem;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.top-movie video {
		height: 220px;
	}
}


/* TOP reason */
.top-reason {
	position: relative;
}

@media screen and (max-width: 767px) {
	.top-reason {
		padding-top: 12rem;
	}
}

.top-reason__en {
	position: absolute;
	top: 1.7rem;
	right: 0;
	z-index: var(--normal-z);
}

@media screen and (max-width: 767px) {
	.top-reason__en {
		top: 2.5rem;
		right: auto;
		left: 0;
	}
}

.top-reason__main {
	position: relative;
	z-index: var(--normal-z);
}

.top-reason__main-row {
	display: flex;
	flex-wrap: wrap-reverse;
	justify-content: space-between;
}

@media screen and (max-width: 767px) {
	.top-reason__txt {
		flex-direction: column;
	}
}

.top-reason__txt {
	width: 45.5%;
}

@media screen and (max-width: 767px) {
	.top-reason__txt {
		margin-top: 4rem;
		width: 100%;
	}
}


.top-reason__btn {
	margin-top: 8rem;
}

@media screen and (max-width: 767px) {
	.top-reason__btn {
		margin-top: 4rem;
		text-align: center;
		width: 100%;
	}
}

.top-reason__img {
	width: 51%;
	padding-right: 1rem;
}

@media screen and (max-width: 767px) {
	.top-reason__img {
		width: 100%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		padding-right: 0;
	}
}

.top-reason__bg {
	position: absolute;
	top: 0;
	right: 0;
	z-index: var(--zero-z);
	width: 100%;
	max-width: 1570px;
	height: 100%;
}

.top-reason__bg-image {
	height: 100%;
}

.top-reason__bg-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* TOP plan */
.top-plan {
	color: white;
}

@media screen and (max-width: 767px) {
	.top-plan__list {
		width: 85%;
	}
}

.top-plan__list-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.1rem;
}

@media screen and (max-width: 767px) {
	.top-plan__list-row {
		grid-template-columns: 1fr;
	}
}

.top-plan__last {
	text-align: center;
}

@media screen and (max-width: 1119px) {
	.top-plan__last {
		padding-bottom: 3rem;
	}
}

/* TOP about */
.top-about {
	position: relative;
	padding-bottom: 9rem;
}

@media screen and (max-width: 1119px) {
	.top-about {
		padding-bottom: 0;
	}
}

.top-about__main {
	position: relative;
	z-index: var(--normal-z);
}

.top-about__bg {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: var(--zero-z);
	width: 100%;
	max-width: 1730px;
}

@media screen and (max-width: 767px) {
	.top-about__bg {
		display: none;
	}
}

.top-about__bg-image img {
	width: 100%;
	height: 41.5rem;
	object-fit: cover;
}

/* TOP glossary */
.top-glossary {
	overflow: hidden;
}

.top-glossary__main-list {
	margin-top: calc(var(--mt-d) - 1.1rem);
}

@media screen and (max-width: 500px) {
	.top-glossary__main-list {
		margin-top: calc(var(--mt-d) - 2.5rem);
	}
}

.top-glossary__main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left: -.55rem;
	margin-right: -.55rem;
}

@media screen and (max-width: 500px) {
	.top-glossary__main-row {
		margin: 0;
	}
}

.top-glossary__main-item {
	margin-top: 1.1rem;
	width: 20%;
	padding-left: .55rem;
	padding-right: .55rem;
}

@media screen and (max-width: 1119px) {
	.top-glossary__main-item {
		width: 33.3333333%;
	}
}

@media screen and (max-width: 767px) {
	.top-glossary__main-item {
		width: 50%;
	}
}

@media screen and (max-width: 500px) {
	.top-glossary__main-item {
		margin-top: 2.5rem;
		width: 100%;
	}
}

/* page reason */
.page-reason {
	overflow: hidden;
	position: relative;
}

.page-reason__main-content {
	position: relative;
	z-index: var(--normal-z);
}

.page-reason__row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 7rem 15rem;
}

@media screen and (max-width: 1119px) {
	.page-reason__row {
		gap: 4.5rem 8rem;
	}
}

@media screen and (max-width: 767px) {
	.page-reason__row {
		grid-template-columns: 1fr;
	}
}

.page-reason__bg {
	position: absolute;
}

.page-reason__bg.page-reason__bg--01 {
	top: 32.81vw;
	left: 0;
	transform: translateX(-53%);
}

.page-reason__bg.page-reason__bg--02 {
	top: 116.7vw;
	right: 0;
	transform: translateX(53%);
}

.page-reason__bg-image img {
	width: 72.23vw;
	height: auto;
}

/* page inheritance recommend */
.page-inheritance-recommend__main {
	max-width: 360px;
	margin-left: auto;
	margin-right: auto;
}

.page-inheritance-recommend__btn {
	text-align: center;
}

/* page inheritance cost */
.page-inheritance-cost__main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-inheritance-cost__content.page-inheritance-cost__content--first {
	width: 35.2rem;
}

.page-inheritance-cost__content.page-inheritance-cost__content--main {
	width: calc(100% - 35.2rem - 8.5rem);
}

@media screen and (max-width: 1119px) {
	.page-inheritance-cost__content.page-inheritance-cost__content--first {
		width: 100%;
	}

	.page-inheritance-cost__content.page-inheritance-cost__content--main {
		margin-top: 4rem;
		width: 100%;
	}
}

.page-inheritance-cost__content-detail {
	margin-top: 2rem;
}

.page-inheritance-cost__content-btn {
	margin-top: 2.5rem;
}

.page-inheritance-cost__content-chu {
	margin-top: 1rem;
}

/* page counseling tel */
.page-counseling-tel {
	text-align: center;
}

.page-counseling-tel__tel-skin .tel-box {
	box-shadow: var(--shadow);
}

.page-counseling-tel__btn {
	margin-top: 3.5rem;
}

@media screen and (max-width: 767px) {
	.page-counseling-tel__btn {
		margin-top: 1.5rem;
	}
}

.page-counseling-tel__chu {
	margin-top: 1.5rem;
	display: table;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

/* page counseling detail */
.page-counseling-detail__content {
	max-width: 787px;
}

.page-counseling-detail__content+.page-counseling-detail__content {
	margin-top: 8rem;
}

.page-counseling-detail__content-desc {
	margin-top: 4rem;
}

.page-counseling-detail__content-desc.page-counseling-detail__content-desc--mt-small {
	margin-top: 2rem;
}

.page-counseling-detail__content-btn {
	margin-top: 3rem;
}

/* page support supporter intro */
.page-support-supporter__header {
	--top: 9rem;
	position: relative;
	padding-top: var(--top);
	background: white;
}

@media screen and (max-width: 767px) {
	.page-support-supporter__header {
		--top: 15rem;
	}
}

.page-support-supporter__header-main {
	position: absolute;
	top: 6.5rem;
	left: 0;
	z-index: var(--normal-z);
	width: 100%;
	text-align: center;
}

.page-support-supporter__header::after {
	content: '';
	position: absolute;
	top: var(--top);
	left: 0;
	tab-size: var(--zero-z);
	border-right: 50vw solid transparent;
	border-left: 50vw solid transparent;
	border-top: 17.3rem solid #fff;
}

@media screen and (max-width: 767px) {
	.page-support-supporter__header::after {
		border-top: 10vw solid #fff;
	}
}

.page-support-supporter__main {
	padding: 22rem 0 8.5rem;
	background: var(--bg-sky-color);
}

@media screen and (max-width: 767px) {
	.page-support-supporter__main {
		padding-top: 18vw;
	}
}

.page-support-supporter__content+.page-support-supporter__content {
	margin-top: 4rem;
}

.page-support-supporter__content {
	padding: 5rem 7rem;
	background: white;
}

@media screen and (max-width: 1119px) {
	.page-support-supporter__content {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.page-support-supporter__content-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 1119px) {
	.page-support-supporter__content-row {
		flex-direction: column;
	}
}

.page-support-supporter__content-txt {
	width: 47%;
}

@media screen and (max-width: 1119px) {
	.page-support-supporter__content-txt {
		display: contents;
		width: 100%;
	}
}

@media screen and (max-width: 1119px) {
	.page-support-supporter__content-heading {
		order: 1;
		text-align: center;
	}
}

.page-support-supporter__content-desc {
	margin-top: 4rem;
}

@media screen and (max-width: 1119px) {
	.page-support-supporter__content-desc {
		margin-top: 2.4rem;
		order: 3;
	}
}

.page-support-supporter__content-img {
	width: 49.5%;
}

@media screen and (max-width: 1119px) {
	.page-support-supporter__content-img {
		margin-top: 2.2rem;
		order: 2;
		width: 100%;
	}
}

.page-support-supporter__content-child-wrap {
	margin-top: 6rem;
}

.page-support-supporter__content-child+.page-support-supporter__content-child {
	margin-top: 6rem;
}

.page-support-supporter__content-child-desc {
	margin-top: 3rem;
}

.page-support-supporter__content-child-img {
	margin-top: 2.5rem;
}

/* page-spot-content */
.page-spot-content__heading {
	text-align: center;
}

.page-spot-content__list {
	max-width: 862px;
	margin-left: auto;
	margin-right: auto;
}

/* page about flow */
.page-support-flow__main {
	margin-top: 9rem;
}

/* page about intro */
.page-about-intro {
	margin-top: -10.5rem;
}

@media screen and (max-width: 1119px) {
	.page-about-intro {
		margin-top: 0;
		padding-top: var(--section-padding);
	}
}

.page-about-intro__main-content {
	position: relative;
	z-index: var(--two-z);
}

.page-about-intro__main-row {
	display: flex;
	flex-wrap: wrap;
}

.page-about-intro__txt {
	width: 50%;
	padding: 5rem 7rem 7rem;
	padding-right: 0;
	background: white;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__txt {
		display: flex;
		flex-direction: column;
		width: 100%;
		padding: 4rem 2rem;
	}
}

.page-about-intro__txt-header {
	position: relative;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__txt-header {
		display: contents;
	}
}

@media screen and (max-width: 1119px) {
	.page-about-intro__title {
		order: 1;
		text-align: center;
	}
}

.page-about-intro__title-letter {
	font-size: 2.6rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.page-about-intro__title-letter {
		font-size: 20px;
	}
}

.page-about-intro__title-en {
	margin-top: .5rem;
}

.page-about-intro__title-en-letter {
	color: var(--primary-color);
	font-family: var(--en-font);
	font-size: 6.8rem;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.page-about-intro__title-en-letter {
		font-size: 48px;
	}
}

.page-about-intro__txt-header-img {
	position: absolute;
	top: 50%;
	right: -5.5rem;
	transform: translateY(-50%);
}

@media screen and (max-width: 1119px) {
	.page-about-intro__txt-header-img {
		margin-top: 4rem;
		order: 3;
		position: static;
		transform: translateY(0);
		text-align: center;
		width: 100%;
	}
}

.page-about-intro__txt-header-image img {
	width: 100%;
	max-width: 25.3rem;
	height: auto;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__txt-header-image img {
		max-width: 40rem;
	}
}

.page-about-intro__txt-body {
	margin-top: 3.5rem;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__txt-body {
		order: 2;
	}
}

.page-about-intro__img {
	width: calc(50vw - 50% + 50%);
	margin-right: calc(50% - 50vw);
}

@media screen and (max-width: 1119px) {
	.page-about-intro__img {
		display: none;
	}
}

.page-about-intro__image {
	height: 100%;
}

.page-about-intro__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: left;
}

.page-about-intro__figure {
	margin-top: 2.5rem;
}

.page-about-intro__figure-img {
	max-width: 660px;
	margin-left: auto;
	margin-right: auto;
}

.page-about-intro__list-wrap {
	margin-top: 4rem;
}

.page-about-intro__list {
	padding-left: 7rem;
	padding-right: 7rem;
	background: white;
}

@media screen and (max-width: 767px) {
	.page-about-intro__list {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.page-about-intro__list-item {
	padding: 6rem 0;
	border-bottom: 1px solid var(--border-color--light);
}

@media screen and (max-width: 1119px) {
	.page-about-intro__list-item {
		padding: 4rem 0;
	}
}

.page-about-intro__list-item-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.page-about-intro__list-heading {
	width: 40%;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__list-heading {
		text-align: center;
		width: 100%;
	}
}

.page-about-intro__list-txt {
	width: 58%;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__list-txt {
		margin-top: 4rem;
		width: 100%;
	}
}

@media screen and (max-width: 1119px) {
	.page-about-intro__list-txt-heading {
		text-align: center;
	}
}

.page-about-intro__list-desc {
	margin-top: 1.5rem;
}

@media screen and (max-width: 1119px) {
	.page-about-intro__list-desc {
		display: table;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
}

.page-about-intro__en {
	position: absolute;
	top: 54.5vw;
	left: 1%;
	z-index: var(--normal-z);
}

@media screen and (max-width: 1119px) {
	.page-about-intro__en {
		display: none;
	}
}

/* page about2 img-list */
.page-about2-img-list {
	background: linear-gradient(180deg, var(--primary-color) 0%, var(--primary-color) 50%, transparent 50%, transparent 100%);
}

@media screen and (max-width: 1119px) {
	.page-about2-img-list {
		background: linear-gradient(180deg, var(--primary-color) 0%, var(--primary-color) 75%, transparent 75%, transparent 100%);
	}
}

/* page about2 main */
.page-about2-main {
	padding: 4.5rem 0 0;
}

/* page about2 greeting */
.page-about2-greeting {
	position: relative;
}

.page-about2-greeting__main-content {
	position: relative;
	z-index: var(--normal-z);
}

.page-about2-greeting__row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-about2-greeting__img {
	width: 39.75%;
}

@media screen and (max-width: 1119px) {
	.page-about2-greeting__img {
		width: 100%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
}

.page-about2-greeting__txt {
	width: 55.2%;
}

@media screen and (max-width: 1119px) {
	.page-about2-greeting__txt {
		margin-top: 4rem;
		width: 100%;
	}
}

.page-about2-greeting__txt-group+.page-about2-greeting__txt-group {
	margin-top: 2.5rem;
}

.page-about2-greeting__sign {
	margin-top: 1rem;
	text-align: right;
}

.page-about2-greeting__bg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: var(--zero-z);
	width: 100%;
	height: 100%;
}

.page-about2-greeting__bg-image {
	height: 100%;
}

.page-about2-greeting__bg-image img {
	width: 90%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 1379px) {
	.page-about2-greeting__bg-image img {
		width: 100%;
	}
}

/* page about2 overview */
.page-about2-overview {
	position: relative;
}

/* page access cv */
.page-access-cv {
	padding: 9.5rem 0;
	color: white;
}

@media screen and (max-width: 1119px) {
	.page-access-cv {
		padding-bottom: 0;
		background: var(--primary-color);
	}
}

.page-access-cv__heading {
	text-align: center;
}

/* page philosophy intro */
.page-philosophy-intro {
	overflow: hidden;
	padding: 8rem 0 6.5rem;
}

@media screen and (max-width: 767px) {
	.page-philosophy-intro {
		padding-top: 6rem;
		padding-bottom: 0;
		background: var(--bg-main-color);
	}
}

.page-philosophy-intro__main-content {
	position: relative;
	z-index: var(--normal-z);
}

.page-philosophy-intro__main-row {
	display: flex;
}

@media screen and (max-width: 1119px) {
	.page-philosophy-intro {
		display: block;
	}
}

.page-philosophy-intro__img {
	flex-shrink: 0;
	width: 100%;
	max-width: 48.3rem;
}

@media screen and (max-width: 1119px) {
	.page-philosophy-intro__img {
		display: none;
	}
}

.page-philosophy-intro__imaqe {
	height: 100%;
}

.page-philosophy-intro__imaqe img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.page-philosophy-intro__txt {
	position: relative;
	width: 100%;
}

.page-philosophy-intro__txt-inner {
	position: relative;
	z-index: var(--normal-z);
	height: 100%;
	padding: 4rem 5.5rem 5rem;
	background: white;
}

@media screen and (max-width: 767px) {
	.page-philosophy-intro__txt-inner {
		padding: 4rem 2rem;
	}
}

.page-philosophy-intro__txt::after {
	content: '';
	position: absolute;
	top: -4.5rem;
	right: -4.5rem;
	z-index: var(--zero-z);
	width: 45.7rem;
	height: 55.7rem;
	background: var(--primary-color);
}

@media screen and (max-width: 1119px) {
	.page-philosophy-intro__txt::after {
		display: none;
	}
}

.page-philosophy-intro__sub-title {
	margin-top: 2.5rem;
}

.page-philosophy-intro__list {
	margin-top: 3.5rem;
}

/* page philosophy lists */
.page-philosophy-lists__content-inner {
	position: relative;
	padding: 5rem 0;
}

.page-philosophy-lists__content-inner::after {
	content: '';
	position: absolute;
	top: 0;
	max-width: 1770px;
	width: 100%;
	height: 100%;
}

.page-philosophy-lists__content:nth-child(odd) {
	background: linear-gradient(90deg, white 0%, white 50%, transparent 50%, transparent 100%);
}

.page-philosophy-lists__content:nth-child(odd) .page-philosophy-lists__content-inner::after {
	left: 0;
	border: 1px solid var(--primary-color);
	border-left-width: 0;
	background: white;
}

@media screen and (max-width: 1769px) {
	.page-philosophy-lists__content:nth-child(odd) .page-philosophy-lists__content-inner::after {
		border-right-width: 0;
	}
}

.page-philosophy-lists__content:nth-child(even) {
	background: linear-gradient(90deg, transparent 0%, transparent 50%, var(--bg-sky-color) 50%, var(--bg-sky-color) 100%);
}

.page-philosophy-lists__content:nth-child(even) .page-philosophy-lists__content-inner::after {
	right: 0;
	margin-left: auto;
	background: var(--bg-sky-color);
}

.page-philosophy-lists__content+.page-philosophy-lists__content {
	margin-top: 4.5rem;
}

.page-philosophy-lists__content-main {
	position: relative;
	z-index: var(--normal-z);
}

/* page philosophy action-policy */
.page-philosophy-action-policy {
	overflow: hidden;
}

.page-philosophy-action-policy__main {
	margin-top: 5rem;
}

.page-philosophy-action-policy__main-desc {
	margin-top: 4rem;
}

/* page philosophy value */
.page-philosophy-value__main {
	margin-top: 5rem;
}

/* page philosophy promise */
.page-philosophy-promise__main-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 1119px) {
	.page-philosophy-promise__main-row {
		flex-direction: column;
		justify-content: flex-start;
	}
}

.page-philosophy-promise__txt {
	width: 44%;
}

@media screen and (max-width: 1119px) {
	.page-philosophy-promise__txt {
		display: contents;
		width: 100%;
	}
}

@media screen and (max-width: 1119px) {
	.page-philosophy-promise__title {
		order: 1;
	}
}

.page-philosophy-promise__desc {
	margin-top: 3rem;
}

@media screen and (max-width: 1119px) {
	.page-philosophy-promise__desc {
		order: 3;
	}
}

.page-philosophy-promise__img {
	width: 51.5%;
}

@media screen and (max-width: 1119px) {
	.page-philosophy-promise__img {
		margin-top: 4rem;
		order: 2;
		width: 100%;
	}
}

/* page origin msg */
.page-origin-msg {
	position: relative;
}

.page-origin-msg__logo {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-75%);
	width: 100%;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.page-origin-msg__logo {
		position: static;
		transform: translateY(0);
	}
}

.page-origin-msg__logo img {
	width: 51vw;
	height: auto;
}

@media screen and (max-width: 767px) {
	.page-origin-msg__logo img {
		width: 80%;
		max-width: 300px;
	}
}

.page-origin-msg__main-content {
	position: relative;
	z-index: var(--normal-z);
}

@media screen and (max-width: 767px) {
	.page-origin-msg__main-content {
		margin-top: 4rem;
	}
}

.page-origin-msg__txt {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.page-origin-msg__txt {
		text-align: left;
	}
}

.page-origin-msg__txt-letter {
	line-height: 3.6;
}

@media screen and (max-width: 767px) {
	.page-origin-msg__txt-letter {
		line-height: 2;
	}
}

@media screen and (max-width: 767px) {
	.page-origin-msg__txt-group+.page-origin-msg__txt-group {
		margin-top: 2rem;
	}
}

/* page origin logo */
@media screen and (max-width: 767px) {
	.page-origin-logo {
		padding-top: 0;
	}
}

.page-origin-logo__main-row {
	display: flex;
	justify-content: center;
}

.page-origin-logo__content {
	margin-right: 12rem;
}

.page-origin-logo__content:last-child {
	margin-right: 0;
}

@media screen and (max-width: 1120px) {
	.page-origin-logo__content {
		margin-right: 3vw;
	}
}

.page-origin-logo__content-image img {
	max-width: 100%;
	height: auto;
}

.page-origin-logo__content-image.page-origin-logo__content-image--logo-txt-type img {
	width: 40rem;
}

.page-origin-logo__content-image.page-origin-logo__content-image--logo-mark img {
	width: 36.2rem;
}

/* page recruit */

/* artchive page */
@media screen and (max-width: 767px) {
	.page-post {
		overflow: hidden;
	}
}

@media screen and (max-width: 767px) {
	.page-post__main {
		margin: 0 calc(50% - 50vw);
		width: 100vw;
		border-top: 1px solid var(--border-color--light);
	}
}

/* single page */
.page-single__box {
	padding: 6rem;
	background: white;
	box-shadow: 0 0 6px var(--shadow-color);
}

@media screen and (max-width: 767px) {
	.page-single__box {
		padding: 3rem;
	}
}

.page-single__meta {
	display: flex;
}

@media screen and (max-width: 767px) {
	.page-single__meta {
		display: block;
	}
}

.page-single__time {
	margin-right: 1.7rem;
	padding-top: 1rem;
}

@media screen and (max-width: 767px) {
	.page-single__time {
		margin-right: 0;
		padding-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.page-single__cat {
		margin-top: 1rem;
	}
}

.page-single__title {
	margin-top: 2rem;
}

.page-single__border {
	padding-bottom: 3rem;
	border-bottom: 1px solid var(--border-color);
}

.page-single__thumb {
	margin-top: 6rem;
}

.page-single__content {
	margin-top: 6rem;
}

.page-single__btn-list {
	margin-top: 6rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

@media screen and (max-width: 1119px) {
	.page-single__btn-list {
		display: block;
		text-align: center;
	}
}

.page-single__btn {
	width: 33.333333%;
}

@media screen and (max-width: 1119px) {
	.page-single__btn {
		width: 100%;
	}
}

.page-single__btn.page-single__btn--prev {
	text-align: right;
	padding-right: 4rem;
}

.page-single__btn.page-single__btn--back {
	text-align: center;
}

.page-single__btn.page-single__btn--next {
	text-align: left;
	padding-left: 4rem;
}

@media screen and (max-width: 1119px) {
	.page-single__btn.page-single__btn--prev {
		display: none;
	}

	.page-single__btn.page-single__btn--next {
		display: none;
	}
}

.page-single__p-n-txt>a {
	display: inline-block;
	position: relative;
	text-align: center;
	min-width: 20rem;
	padding: 1em;
	border-radius: 1rem;
	border: 2px solid var(--primary-color);
	background: var(--bg-main-color--light);
	color: var(--primary-color);
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: 0;
}

@media screen and (max-width: 767px) {
	.page-single__p-n-txt a {
		font-size: 14px;
	}
}

.page-single__p-n-txt>a::after {
	content: '';
	position: absolute;
	top: 50%;
	margin-top: -.25em;
	display: inline-block;
	width: .5em;
	height: .5em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.page-single__p-n-txt.page-single__p-n-txt--prev>a::after {
	left: 1.5em;
	border-bottom: 2px solid currentColor;
	border-left: 2px solid currentColor;
}

.page-single__p-n-txt.page-single__p-n-txt--next>a::after {
	right: 1.5em;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
}

@media (hover: hover) {
	.page-single__p-n-txt>a:hover {
		background: var(--bg-main-color);
		transition: var(--normal-transition);
	}
}

/* page terminology */
.page-terminology__content+.page-terminology__content {
	margin-top: 6.5rem;
}

.page-terminology__content-main {
	margin-top: 2rem;
}

.page-terminology__content-btn {
	margin-top: 5rem;
	text-align: center;
}


/* page-privacy */
.page-privacy__content {
	padding: 4rem 0;
	border-top: 1px solid var(--primary-color--light);
}

.page-privacy__content:first-child {
	padding-top: 0;
	border-top-width: 0;
}

.page-privacy__content:last-child {
	padding-bottom: 0;
	border-bottom-width: 0;
}

.page-privacy__content-txt {
	margin-top: 3rem;
}

.page-privacy__content-list {
	margin-top: 3rem;
}


/* page-service */
.page-service__content {
	padding: 4rem 0 7rem;
}

.page-service__content:nth-child(odd) {
	background: var(--bg-primary-color);
}


/* page-will-irai */
.page-will-irai {
	padding: 3rem 0 0;
}

@media screen and (max-width: 1119px) {
	.page-will-irai {
		padding: 3rem 0;
	}
}

.page-will-irai__row {
	display: flex;
	justify-content: center;
}

@media screen and (max-width: 1119px) {
	.page-will-irai__row {
		flex-direction: column;
		justify-content: flex-start;
	}
}

.page-will-irai__img {
	margin-right: 4rem;
}

@media screen and (max-width: 1119px) {
	.page-will-irai__img {
		margin-top: 1rem;
		margin-right: 0;
		order: 2;
		text-align: center;
	}
}

.page-will-irai__image img {
	max-width: 36rem;
}

@media screen and (max-width: 767px) {
	.page-will-irai__image img {
		max-width: 200px;
	}
}

.page-will-irai__txt {
	width: 57.8rem;
}

@media screen and (max-width: 1119px) {
	.page-will-irai__txt {
		display: contents;
		width: 100%;
	}
}

.page-will-irai__title {
	text-align: center;
}

@media screen and (max-width: 1119px) {
	.page-will-irai__title {
		order: 1;
	}
}

.page-will-irai__desc {
	margin-top: 3rem;
}

@media screen and (max-width: 1119px) {
	.page-will-irai__desc {
		margin-top: 3rem;
		order: 3;
	}
}

.page-audit-merit__list-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.2rem;
}

@media screen and (max-width: 1119px) {
	.page-audit-merit__list-row {
		grid-template-columns: 1fr;
	}
}

/* page-gift-main */
.page-gift-main__content+.page-gift-main__content {
	margin-top: 8rem;
}

.page-gift-main__content-main {
	margin-top: 6rem;
}

.page-gift-main__content-content+.page-gift-main__content-content {
	margin-top: 8rem;
}

.page-gift-main__content-content-main {
	margin-top: 3.5rem;
}

.page-gift-about__list-row {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.2rem;
}

@media screen and (max-width: 1119px) {
	.page-gift-about__list-row {
		grid-template-columns: 1fr;
	}
}

/* page-contact-form */
.page-contact-form__desc {
	margin-top: 6rem;
	text-align: center;
}

.page-contact-form__desc.page-contact-form__desc--mt-none {
	margin-top: 0;
}

.page-contact-form__main {
	margin-top: 6rem;
}

/* サイトマップ */
.page-site-map__list {
	font-size: 1.6rem;
	display: table;
	margin-left: auto;
	margin-right: auto;
}

.page-site-map__list-item {
	position: relative;
	padding-left: 1.5em;
	padding-top: 2rem;
}

.page-site-map__list-item:before {
	content: '';
	position: absolute;
	top: 1rem;
	left: .5em;
	margin-left: -1px;
	height: 100%;
	width: 0;
	border-left: 2px solid CurrentColor;
}

.page-site-map__list-item:after {
	content: '';
	position: absolute;
	top: 3.2rem;
	left: .5em;
	border-top: 2px solid CurrentColor;
	height: 0;
	width: .8em;
}

@media (hover: hover) {
	.page-site-map__list-txt:hover {
		color: var(--primary-color);
		font-weight: 700;
		transition: var(--normal-transition);
	}
}