@charset "utf-8";
/*---------- workplace ----------*/
.wp {
	padding-bottom: 7.5rem;
}
.contents--wp {
	margin-top: 5rem;
	max-width: 880px;
}
.contents--wpTab {
	max-width: 1200px;
}
.wp__headingLv2 {
	font-size: 1.7rem;
	font-weight: normal;
	line-height: 1.45;
	margin-block: 4rem 2rem;
	text-align: center;
}
.wp__headingLv2:has( + .wp__box--yellow),
.wp__headingLv2:has( + .wp__youtubeWrapper) {
	margin-bottom: 0;
}
.wp__headingLv2 .wp__headingSub {
	display: block;
	font-size: 1rem;
}
.wp__headingLv2 img {
	margin-right: .5rem;
	translate: 0 -4px;
	vertical-align: middle;
}
.wp__headingLv3 {
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 1.7;
	text-align: center;
}
.wp__headingLv3 img {
	margin-right: .46rem;
	translate: 0 -2px;
	vertical-align: middle;
}
.wp__headingLv4 {
	font-size: 1rem;
	font-weight: bold;
}
.wp__headingLv4--center {
	text-align: center;
}
.wp__headingLv4 > .wp__strong {
	font-weight: bold;
}
.wp__headingLv5 {
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.7;
	margin-top: 2rem;
	margin-bottom: .75rem;
}
.wp__headingLine {
	align-items: end;
	display: grid;
	gap: .5rem;
	grid-auto-flow: column;
	justify-content: center;
	line-height: 1.2;
}
.wp__headingLine::before {
	font-size: .8em;
	content: "＼";
}
.wp__headingLine::after {
	font-size: .8em;
	content: "／";
}
.wp__blank::after {
	background: url(/src/img/com/icon__blank.svg) left top no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	height: .875rem;
	margin-right: 1rem;
	margin-left: .5rem;
	vertical-align: middle;
	width: 1rem;
}
.wp__pdf::after {
	background: #A3677E;
	border-radius: 2px;
	color: #fff;
	content: "PDF";
	display: inline-block;
	font-size: .75rem;
	height: auto;
	margin-right: 1rem;
	margin-left: .5rem;
	padding: 0 4px 0 6px;
	text-indent: 0;
	vertical-align: middle;
	width: auto;
}
.wp__strong {
	background: linear-gradient(transparent 68%, #f8d5d7 68%);
	font-weight: normal;
}
.wp__red {
	color: #ed707f;
}
.wp__note {
	color: rgba(51, 51, 51, .6);
	font-size: .875rem;
	text-indent: hanging 1em;
}
p + .wp__note {
	margin-top: .5rem;
}
.wp__note + .wp__note {
	margin-top: 0;
}
.wp__noteWrapper {
	margin-inline: auto;
	width: fit-content;
}
.wp--center,
.wp--centerPc {
	text-align: center;
}
.wp--right {
	text-align: right;
}
.wp--sizeS {
	font-size: .85rem;
}
.wp--sizeL {
	font-size: 1.5rem;
}
/*---------- list ----------*/
.wp__item {
	text-indent: hanging 1em;
}
.wp__list--disc > .wp__item::before {
	content: "・";
	display: inline-block;
}
.wp__list--dot > .wp__item::before {
	color: #F0BFC2;
	content: "●";
	display: inline-block;
}
/*---------- table ----------*/
.wp__table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-top: 2rem;
	width: 100%;
}
.wp__table th {
	background: #F5F2F3;
	background-clip: padding-box;
	border: 1px solid #ccc;
	color: rgba(51, 51, 51, .5);
	font-weight: normal;
	padding: 1.5rem;
	position: static;
	text-align: left;
	vertical-align: top;
	white-space: nowrap;
}
.wp__table td {
	border: 1px solid #ccc;
	padding: 1.5rem;
}
.wp__table td > *:first-child,
.wp__table th > *:first-child {
	margin-top: 0 !important;
}
/*---------- box ----------*/
.wp__box {
	background-color: #fff;
	border-radius: .75rem;
	margin-top: 1.5rem;
	padding: 1rem 2.5rem;
}
.wp__box--gray {
	background-color: #F5F2F3;
}
.wp__box--yellow {
	background-color: #FCF3DE;
}
.wp__box--yellow p + p {
	margin-top: 0;
}
/*---------- button ----------*/
.wp__button {
	align-items: center;
	background: #ED707F;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: inline-grid;
	gap: .75rem;
	grid-template-columns: 1fr auto 1fr;
	font-size: 1.125rem;
	justify-content: center;
	line-height: 1.5;
	margin: .6rem auto .8rem;
	min-height: 4rem;
	min-width: 21.25rem;
	padding: .6rem .75rem;
	text-align: center;
	text-decoration: none;
}
.wp__button::before {
	content: "";
}
.wp__button::after {
	aspect-ratio: 1 / 1;
	background: url(/src/img/com/icon__button2.svg) no-repeat center / contain;
	background-size: 1rem 1rem;
	content: "";
	display: block;
	width: 1rem;
}
/*---------- caution ----------*/
.wp__caution {
	background: #ffffff;
	border: 1px solid #8abca5;
	border-radius: .65rem;
	margin-top: 2rem;
	margin-bottom: 2rem;
	padding: 2.125rem 2.4375rem;
	max-width: 98.864%;
}
.wp__caution::after {
	background: linear-gradient(to right, #9eceb8 0%, #d8f4e3 100%);
	border-radius: .65rem;
	bottom: -0.7rem;
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	right: -0.7rem;
	width: 100%;
	z-index: -1;
}
.wp__cautionTitle {
	color: #8abca5;
	font-size: 1.2rem;
	font-weight: bold;
	text-indent: hanging 3.5rem;
}
.wp__cautionTitle::before {
	aspect-ratio: 1;
	background: url(/guide/img/icon_info.svg) no-repeat center / contain;
	content: "";
	display: inline-block;
	margin-right: 1rem;
	translate: 0 -4px;
	vertical-align: middle;
	width: 2.5rem;
}
.wp__cautionInner {
	column-gap: 1.25rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.wp__cautionInner > div {
	align-items: center;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	row-gap: 1.17rem;
}
/*---------- icon ----------*/
.wp__icon {
	align-items: center;
	background-color: #ED707F;
	border-radius: 6px;
	color: #fff;
	display: inline grid;
	font-size: 1rem;
	justify-content: center;
	line-height: 1;
	margin-right: .4rem;
	padding: .4rem .2rem .5rem .5rem;
	translate: 0 -3px;
	vertical-align: middle;
}
/*---------- movie ----------*/
.wp__youtube {
	aspect-ratio: 16 / 9;
	display: block;
	height: auto;
	margin: 1rem auto .5rem;
	max-width: 600px;
	width: 100%;
}
.wp__youtubeWrapper {
	column-gap: 3.75rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	text-align: center;
}
/*---------- features ----------*/
.wp__features {
	column-gap: 2.5rem;
	display: grid;
	grid-template-columns: repeat(2, auto);
	justify-content: center;
	justify-items: center;
	row-gap: 4rem;
	text-align: center;
}
.wp__featureItem {
	display: grid;
	gap: .8rem;
	grid-row: span 3;
	grid-template-rows: subgrid;
	width: fit-content;
}
.wp__featureImg {
	align-items: center;
	aspect-ratio: 1 / 1;
	background-color: #f5f5f5;
	border-radius: 100%;
	display: grid;
	margin-inline: auto;
	overflow: hidden;
	padding: 2rem;
	width: 200px;
}
/*---------- merit ----------*/
.wp__merit {
	column-gap: 1.25rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.wp__merit .wp__box {
	flex: 0 1 calc((100% - 1.25rem) / 2);
	padding-block: 2rem;
}
@media all and (max-width: 1000px) {
	.wp__merit .wp__box {
		flex-basis: 100%;
	}
}
/*---------- serviceStockList ----------*/
.serviceStockList--wp {
	margin-top: 0;
	padding-inline: 0;
}
.serviceStockList--wp .serviceStockList__table .icon__wrapper {
	white-space: normal;
}
/*---------- tab ----------*/
.wp__tabs {
	--tabs-bg-size: 8px;
}
.wp__tabsButtonWrapper {
	column-gap: .3rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	padding-inline: 1rem;
}
.wp__tabsButton {
	align-items: center;
	appearance: none;
	background-color: #fff;
	border: 1px solid #ccc;
	border-top-width: var(--tabs-bg-size);
	border-bottom: none;
	color: #333;
	column-gap: 1.25rem;
	cursor: pointer;
	display: grid;
	font-size: 1.37rem;
	font-weight: bold;
	grid-auto-flow: column;
	justify-content: center;
	line-height: 1.2;
	padding: .5rem 1rem;
	text-align: center;
}
.wp__tabsButton[aria-selected="true"] {
	border-top-color: #ED707F;
	margin-bottom: -1px;
	z-index: 1;
}
.wp__tabsButton[aria-selected="true"]::before {
	background-image: linear-gradient(-45deg, #fff 25%, #f8d5d7 25%, #f8d5d7 50%, #fff 50%, #fff 75%, #f8d5d7 75%, #f8d5d7);
	background-size: calc(var(--tabs-bg-size) / 2) calc(var(--tabs-bg-size) / 2);
	bottom: 0;
	content: "";
	display: block;
	left: 0;
	position: absolute;
	top: 0;
	width: var(--tabs-bg-size);
}
.wp__tabsButton[aria-selected="true"]::after {
	background-image: linear-gradient(-45deg, #fff 25%, #f8d5d7 25%, #f8d5d7 50%, #fff 50%, #fff 75%, #f8d5d7 75%, #f8d5d7);
	background-size: calc(var(--tabs-bg-size) / 2) calc(var(--tabs-bg-size) / 2);
	bottom: 0;
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: var(--tabs-bg-size);
}
.wp__tabsButtonOverlay {
	background-color: #fff;
	bottom: calc(var(--tabs-bg-size) * -1);
	height: var(--tabs-bg-size);
	left: var(--tabs-bg-size);
	position: absolute;
	width: calc(100% - (var(--tabs-bg-size) * 2));
}
.wp__tabsPanel {
	background-color: #fff;
	border: 1px solid #ccc;
	display: none;
	z-index: 0;
}
.wp__tabsPanel::before {
	background-image: linear-gradient(-45deg, #fff 25%, #f8d5d7 25%, #f8d5d7 50%, #fff 50%, #fff 75%, #f8d5d7 75%, #f8d5d7);
	background-size: calc(var(--tabs-bg-size) / 2) calc(var(--tabs-bg-size) / 2);
	bottom: 0;
	content: "";
	display: block;
	left: 0;
	position: absolute;
	top: 0;
	width: var(--tabs-bg-size);
}
.wp__tabsPanel::after {
	background-image: linear-gradient(-45deg, #fff 25%, #f8d5d7 25%, #f8d5d7 50%, #fff 50%, #fff 75%, #f8d5d7 75%, #f8d5d7);
	background-size: calc(var(--tabs-bg-size) / 2) calc(var(--tabs-bg-size) / 2);
	bottom: 0;
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: var(--tabs-bg-size);
}
.wp__tabsPanel.isActive {
	display: block;
}
.wp__tabsPanelInner {
	padding: 1rem 2.5rem 1.5rem;
}
.wp__tabsPanelInner::before {
	background-image: linear-gradient(-45deg, #fff 25%, #f8d5d7 25%, #f8d5d7 50%, #fff 50%, #fff 75%, #f8d5d7 75%, #f8d5d7);
	background-size: calc(var(--tabs-bg-size) / 2) calc(var(--tabs-bg-size) / 2);
	content: "";
	display: block;
	height: var(--tabs-bg-size);
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}
.wp__tabsPanelInner::after {
	background-image: linear-gradient(-45deg, #fff 25%, #f8d5d7 25%, #f8d5d7 50%, #fff 50%, #fff 75%, #f8d5d7 75%, #f8d5d7);
	background-size: calc(var(--tabs-bg-size) / 2) calc(var(--tabs-bg-size) / 2);
	bottom: 0;
	content: "";
	display: block;
	height: var(--tabs-bg-size);
	left: 0;
	position: absolute;
	right: 0;
}
/*---------- accordion ----------*/
.wp__accordion {
	background-color: #fff;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	interpolate-size: allow-keywords;
	margin-top: 1.62rem;
}
.wp__accordion + .wp__accordion {
	border-top: none;
	margin-top: 0;
}
.wp__accordion::details-content {
	block-size: 0;
	overflow: clip;
	transition-duration: .3s;
	transition-property: content-visibility, block-size;
	transition-behavior: allow-discrete;
}
.wp__accordion[open]::details-content {
	block-size: unset;
}
.wp__accordionSummary {
	color: #EC707F;
	column-gap: .57rem;
	cursor: pointer;
	display: grid;
	font-size: 1.3rem;
	font-weight: bold;
	grid-template-columns: 1rem auto 1.56rem;
	line-height: 1.27;
	outline: none;
	padding: 1.46rem 1.18rem;
	position: static;
	-webkit-tap-highlight-color:rgba(255, 255, 255, 0);
}
.wp__accordionSummary::before {
	color: #F0BFC2;
	content: "●";
	display: inline-block;
	font-size: 1rem;
	translate: 0 3px;
}
.wp__accordionSummary::marker {
	display: none;
	content: "";
}
.wp__accordionSummary::-webkit-details-marker {
	display: none;
}
.wp__accordionSummary::after {
	align-self: center;
	aspect-ratio: 1;
	border: 1px solid #333;
	border-radius: 50%;
	color: #333;
	content: "+";
	display: grid;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	transition: transform 0.3s;
	width: 1.56rem;
}
.wp__accordion[open] .wp__accordionSummary::after {
	transform: rotate(45deg);
}
.wp__accordionSummary sup {
	color: #333;
	vertical-align: top;
}
.wp__accordionDetail {
	padding-inline: calc(1.18rem + 1rem + .57rem) 1.18rem;
	padding-bottom: 1.46rem;
}
/*---------- accordion box ----------*/
.wp__accordionBox {
	background-color: #fff;
	border-radius: .75rem;
	interpolate-size: allow-keywords;
	margin-top: 1.56rem;
}
.wp__accordionBox::details-content {
	block-size: 0;
	overflow: clip;
	transition-duration: .3s;
	transition-property: content-visibility, block-size;
	transition-behavior: allow-discrete;
}
.wp__accordionBox[open]::details-content {
	block-size: unset;
}
.wp__accordionBoxSummary {
	cursor: pointer;
	display: grid;
	font-size: 1.25rem;
	grid-template-columns: 1fr auto;
	justify-items: center;
	padding: 1.62rem 1rem;
	text-align: center;
}
.wp__accordionBoxSummary::marker {
	display: none;
	content: "";
}
.wp__accordionBoxSummary::-webkit-details-marker {
	display: none;
}
.wp__accordionBoxSummary::after {
	align-self: center;
	aspect-ratio: 1;
	border: 1px solid #333;
	border-radius: 50%;
	color: #333;
	content: "+";
	display: grid;
	font-size: 1.3rem;
	font-weight: bold;
	justify-self: end;
	line-height: 1;
	text-align: center;
	transition: transform 0.3s;
	width: 1.56rem;
}
.wp__accordionBox[open] .wp__accordionBoxSummary::after {
	transform: rotate(45deg);
}
.wp__accordionBoxDetail {
	padding-inline: 1rem;
	padding-bottom: 1.62rem;
}
/*---------- app ----------*/
.wp__app {
	column-gap: 3rem;
	display: grid;
	grid-auto-flow: column;
	justify-items: center;
	margin-top: 1.15rem;
	margin-inline: auto;
	width: fit-content;
}
.wp__appLink,
.wp__appLink img {
	display: block;
}
.wp__appQr {
	display: block;
	margin-top: .43rem;
	margin-inline: auto;
}
/*---------- step ----------*/
.wp__stepItem {
	background-color: #F5F2F3;
	border-radius: 0.75rem;
	margin-top: 2rem;
	padding-inline: 1rem;
	padding-bottom: 1rem;
}
.wp__stepItem + .wp__stepItem::before {
	background-color: #95CBAA;
	content: "";
	display: block;
	height: 2rem;
	left: 50%;
	position: absolute;
	top: -2rem;
	transform: translateX(-50%);
	width: .75rem;
}
.wp__stepIcon {
	align-items: center;
	column-gap: 1.7rem;
	display: grid;
	font-size: 1.6rem;
	grid-template-columns: 1fr auto 1fr;
	margin-inline: auto;
	width: fit-content;
}
.wp__stepIcon::before,
.wp__stepIcon::after {
	background-color: #ccc;
	content: "";
	display: block;
	height: 1px;
	max-width: 100%;
	width: 7rem;
}
.wp__stepIconNumber {
	font-size: 2rem;
}
.wp__stepTitle {
	font-size: 1.25rem;
	font-weight: normal;
	margin-inline: auto;
	width: fit-content;
}
/*----------  ----------*/

