@import url("https://fonts.googleapis.com/css?family=Cormorant+Unicase:400");
@font-face {
	font-family: "xy-sp-font";
	src:
		url("/s/images/icons/sp/xy-sp-font.woff") format("woff"),
		url("/s/images/icons/sp/xy-sp-font.ttf") format("truetype");
}
body {
	touch-action: manipulation;
}

body > footer {
	margin-top: 0;
	padding-top: 25px;
}

.header_global,
footer {
	background-color: #fff;
}

.page::before {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	content: "";
	height: 100dvh;
	z-index: -1;
	background: linear-gradient(180deg, #7cabe7 0%, #d8dbed 55.5%, #ffdde2 100%);
}

.xy-myRingType *,
.xy-myRingType *::before,
.xy-myRingType *::after {
	box-sizing: border-box;
}
.xy-myRingType a {
	text-decoration: none;
}
.xy-myRingType ::-webkit-progress-bar {
	background-color: rgba(255, 255, 255, 0.4);
}
.xy-myRingType ::-webkit-progress-value {
	background-color: #fff;
}
.xy-myRingType ::-moz-progress-bar {
	background-color: #fff;
}

.xy-myRingTypeIconStyles::before,
.xy-myRingTypeIconStyles::after {
	font-family: "xy-sp-font";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	text-decoration: none;
	text-transform: none;
}

.xy-myRingTypeTapHighlight {
	-webkit-tap-highlight-color: transparent;
}
.xy-myRingTypeTapHighlight:active {
	opacity: 0.3;
}

.xy-myRingTypeProgress {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 10px;
	line-height: 10px;
}
.xy-myRingTypeProgress__label {
	color: #fff;
}
.xy-myRingTypeProgress__progress {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: rgba(255, 255, 255, 0.4);
	width: 100%;
	height: 2px;
	color: #fff;
}

.xy-myRingTypeStrongTextStyle {
	display: block;
	font-size: 20px;
	line-height: 30px;
	font-weight: 300;
	letter-spacing: 0.02em;
	color: #fff;
	text-align: center;
	text-shadow: rgba(10, 31, 140, 0.3019607843) 0px 0px 10px;
}

.xy-myRingTypeButton {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	line-height: 24px;
	font-weight: 300;
	color: #595959;
	background-color: #fff;
	border-radius: 100px;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
}
.xy-myRingTypeButton.-han {
	position: relative;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	min-width: 64px;
	min-height: 30px;
	padding: 8px 20px;
	font-size: 12px;
	line-height: 15px;
}
.xy-myRingTypeButton.-result {
	width: 208px;
	height: 48px;
}
.xy-myRingTypeButton.-error {
	width: 258px;
	height: 48px;
}

.xy-myRingTypeNextButton {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	padding: 0;
	display: block;
	width: 56px;
	height: 56px;
	border-radius: 100px;
	background-color: #ea6077;
	color: #fff;
	font-weight: 700;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
}
.xy-myRingTypeNextButton[disabled] {
	background-color: #d8d8d8;
	pointer-events: none;
}
.xy-myRingTypeNextButton__label {
	font-size: 16px;
	line-height: 18px;
}

.xy-myRingType {
	font-family: "Hiragino Kaku Gothic ProN", sans-serif;
	background-color: #ffeff1;
}

.xy-myRingTypeCommonWrapperStyle {
	margin: 0 auto;
	max-width: 430px;
	height: auto;
	display: flex;
	flex-direction: column;
}
.xy-myRingTypeCommonWrapperStyle.-simpleGradationPattern {
	min-height: 100dvh;
	padding: 12px 20px 20px;
	background: linear-gradient(180deg, #7cabe7 0%, #d8dbed 55.5%, #ffdde2 100%);
}
.xy-myRingTypeCommonWrapperStyle.-image {
	background-attachment: fixed;
	min-height: 100dvh;
	padding: 12px 20px 20px;
}

.xy-myRingTypeCommonContentStyle {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.xy-myRingTypeCommonContentStyle.-minHeight {
	min-height: 462px;
}
.xy-myRingTypeCommonContentStyle.-contentLayoutType1 {
	justify-content: center;
	padding: 36px 0 60px;
}
.xy-myRingTypeCommonContentStyle.-contentLayoutType2 {
	padding: 36px 20px 60px;
	gap: 40px;
}

.xy-myRingTypeTop__buttonWrapper,
.xy-myRingTypeErMr__ringTypeListItem {
	border-radius: 50%;
	background-color: #fff;
}

.xy-myRingTypeTop__wrapper {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	min-height: 100dvh;
	padding: 20px;
	background-image: url("/s/contents/uxd/ring/myRingType/images/bg_myringtype_top.jpg");
	background-size: cover;
}
.xy-myRingTypeTop__wrapper.-hasHeader {
	min-height: calc(100dvh - 50px);
}
.xy-myRingTypeTop__content {
	padding: 12px 0;
	gap: 24px;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_illust_jewelry_all.png");
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
}
.xy-myRingTypeTop__title {
	display: flex;
	gap: 24px;
	align-items: center;
	flex-direction: column;
	color: #fff;
}
.xy-myRingTypeTop__titleEn {
	display: block;
	width: 178px;
	height: auto;
}
.xy-myRingTypeTop__titleJa {
	display: block;
	width: 228px;
	height: auto;
}
.xy-myRingTypeTop__line {
	display: flex;
	align-items: center;
	gap: 4px;
	width: 100%;
}
.xy-myRingTypeTop__line.-bottom {
	flex-direction: row-reverse;
}
.xy-myRingTypeTop__line::before {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border: none;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_illust_spark_white.png");
	background-size: contain;
	background-repeat: no-repeat;
}
.xy-myRingTypeTop__line::after {
	content: "";
	display: block;
	width: calc(100% - 16px);
	height: 1px;
	background-color: #fff;
}
.xy-myRingTypeTop__button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
}
.xy-myRingTypeTop__buttonLabel {
	position: relative;
	display: flex;
	align-items: center;
	font-family: "Cormorant Unicase", serif;
	font-weight: 400;
	font-size: 22px;
	line-height: 1;
	color: #595959;
}
.xy-myRingTypeTop__buttonLabel::after {
	position: absolute;
	bottom: -30px;
	left: 50%;
	transform: translate(-50%, 0);
	content: "\e016";
	font-size: 16px;
	color: #8d8d8d;
}

.xy-myRingTypeErMr__button {
	display: flex;
	gap: 8px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 160px;
	height: 160px;
	border-radius: 50%;
	background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
}
.xy-myRingTypeErMr__buttonLabel {
	display: flex;
	gap: 8px;
	align-items: center;
	font-size: 16px;
	line-height: 1;
	color: #595959;
}
.xy-myRingTypeErMr__buttonLabel::after {
	content: "\e016";
	font-size: 16px;
	line-height: 1;
	color: #8d8d8d;
}
.xy-myRingTypeErMr__buttonImage {
	width: 68px;
	height: 68px;
}
.xy-myRingTypeErMr__ringTypeList {
	position: relative;
	margin-top: 56px;
	width: 279px;
	height: 320px;
}
.xy-myRingTypeErMr__ringTypeListItem {
	position: absolute;
}
.xy-myRingTypeErMr__ringTypeListItem.-marriage {
	top: 0;
	left: 0;
}
.xy-myRingTypeErMr__ringTypeListItem.-engage {
	bottom: 0;
	right: 0;
}

.xy-myRingTypeTaste__wrapper {
	position: relative;
	justify-content: space-between;
}
.xy-myRingTypeTaste__content {
	gap: 40px;
}
.xy-myRingTypeTaste__chart {
	position: relative;
	width: 340px;
	height: 340px;
	padding: 30px;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_chart.png");
	background-repeat: no-repeat;
	background-size: 280px;
	background-position: center center;
}
.xy-myRingTypeTaste__chartLabelListItem {
	position: absolute;
}
.xy-myRingTypeTaste__chartLabelListItem.-cuteCasual {
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
}
.xy-myRingTypeTaste__chartLabelListItem.-indivisual {
	top: 70px;
	right: 0;
}
.xy-myRingTypeTaste__chartLabelListItem.-gorgeousElegant {
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
}
.xy-myRingTypeTaste__chartLabelListItem.-simple {
	top: 128px;
	left: 0;
}
.xy-myRingTypeTaste__chartLabel {
	display: block;
	text-indent: -999em;
	background-repeat: no-repeat;
	background-position: center;
}
.xy-myRingTypeTaste__chartLabel.-cuteCasual {
	width: 147px;
	height: 22px;
	background-size: calc((327 / 320) * 100%), 0;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_text_cute-casual.png"), url("/s/contents/uxd/ring/myRingType/images/img_text_cute-casual_on.png");
}
.xy-myRingTypeTaste__chartLabel.-cuteCasual.is-active {
	background-size: 0, calc((327 / 320) * 100%);
}
.xy-myRingTypeTaste__chartLabel.-indivisual {
	width: 22px;
	height: 198px;
	background-size: calc((59 / 44) * 100%), 0;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_text_indivisual.png"), url("/s/contents/uxd/ring/myRingType/images/img_text_indivisual_on.png");
}
.xy-myRingTypeTaste__chartLabel.-indivisual.is-active {
	background-size: 0, calc((59 / 44) * 100%);
}
.xy-myRingTypeTaste__chartLabel.-gorgeousElegant {
	width: 160px;
	height: 22px;
	background-size: calc((327 / 320) * 100%), 0;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_text_gorgeous-elegant.png"), url("/s/contents/uxd/ring/myRingType/images/img_text_gorgeous-elegant_on.png");
}
.xy-myRingTypeTaste__chartLabel.-gorgeousElegant.is-active {
	background-size: 0, calc((327 / 320) * 100%);
}
.xy-myRingTypeTaste__chartLabel.-simple {
	width: 22px;
	height: 80px;
	background-size: calc((59 / 44) * 100%), 0;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_text_simple.png"), url("/s/contents/uxd/ring/myRingType/images/img_text_simple_on.png");
}
.xy-myRingTypeTaste__chartLabel.-simple.is-active {
	background-size: 0, calc((59 / 44) * 100%);
}
.xy-myRingTypeTaste__tasteInputRadio {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: absolute;
	opacity: 0;
}
.xy-myRingTypeTaste__tasteInputRadioLabel {
	position: absolute;
	display: block;
	margin: 0;
}
.xy-myRingTypeTaste__tasteInputRadioLabel::after {
	display: block;
	content: "";
	width: 56px;
	height: 56px;
	background-size: 38px 38px;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_icon_spark_check-off.png");
}
.xy-myRingTypeTaste__tasteInputRadioLabel:has(.xy-myRingTypeTaste__tasteInputRadio:checked)::after {
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_icon_spark_check-on.png");
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-cuteCasual {
	top: 30px;
	left: 50%;
	transform: translate(-50%, 0);
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-cuteCasualIndivisual {
	top: 63px;
	right: 63px;
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-indivisual {
	top: 143px;
	right: 28px;
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-indivisualGorgeousElegant {
	bottom: 60px;
	right: 63px;
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-gorgeousElegant {
	bottom: 30px;
	left: 50%;
	transform: translate(-50%, 0);
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-gorgeousElegantSimple {
	bottom: 60px;
	left: 63px;
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-simple {
	top: 143px;
	left: 28px;
}
.xy-myRingTypeTaste__tasteInputRadioLabel.-simpleCuteCasual {
	top: 63px;
	left: 63px;
}
.xy-myRingTypeTaste__form {
	position: sticky;
	align-self: flex-end;
	bottom: 20px;
	right: 20px;
}

.xy-myRingTypeMaterial__list {
	width: 100%;
	display: flex;
	gap: 16px;
	flex-direction: column;
}
.xy-myRingTypeMaterial__list.is-hidden {
	display: none;
}
.xy-myRingTypeMaterial__listItem {
	border-radius: 12px;
	background-color: #fff;
}
.xy-myRingTypeMaterial__button {
	display: flex;
	gap: 12px;
	align-items: center;
	width: 100%;
	padding: 12px 16px;
	border-radius: 12px;
	background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
}
.xy-myRingTypeMaterial__buttonLabel {
	display: flex;
	gap: 2px;
	flex-direction: column;
}
.xy-myRingTypeMaterial__buttonLabelTitle {
	font-size: 14px;
	line-height: 21px;
	font-weight: 300;
	color: #595959;
}
.xy-myRingTypeMaterial__buttonLabelDescription {
	font-size: 12px;
	line-height: 18px;
	font-weight: 300;
	color: #8d8d8d;
}

.xy-myRingTypeHan__map {
	position: relative;
	width: 335px;
	height: 289px;
	background-image: url("/s/contents/uxd/ring/myRingType/images/bg_map.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}
.xy-myRingTypeHan__mapItem {
	position: absolute;
	background-color: #fff;
	border-radius: 100px;
}
.xy-myRingTypeHan__mapItem.-hokkaido {
	top: 12px;
	right: 11px;
}
.xy-myRingTypeHan__mapItem.-tohoku {
	top: 68px;
	right: 17px;
}
.xy-myRingTypeHan__mapItem.-kitakanto {
	top: 125px;
	right: -1px;
}
.xy-myRingTypeHan__mapItem.-shutoken {
	bottom: 61px;
	right: 11px;
}
.xy-myRingTypeHan__mapItem.-tokai {
	bottom: 4px;
	right: 17px;
}
.xy-myRingTypeHan__mapItem.-chubu {
	top: 68px;
	left: 78px;
}
.xy-myRingTypeHan__mapItem.-kansai {
	bottom: 61px;
	left: 120px;
}
.xy-myRingTypeHan__mapItem.-chugoku {
	bottom: 118px;
	left: 84px;
}
.xy-myRingTypeHan__mapItem.-shikoku {
	bottom: 4px;
	left: 120px;
}
.xy-myRingTypeHan__mapItem.-kyushu {
	bottom: 31px;
	left: 1px;
}
.xy-myRingTypeHan__buttonLabel {
	text-align: center;
}

.xy-myRingTypeSelectImages {
	background: transparent;
}
.xy-myRingTypeSelectImages__form {
	position: relative;
	max-width: 430px;
	margin: 0 auto;
}
.xy-myRingTypeSelectImages__wrapper {
	justify-content: flex-start;
}
.xy-myRingTypeSelectImages__content {
	padding: 36px 0 12px;
	justify-content: flex-start;
	gap: 24px;
}
.xy-myRingTypeSelectImages__content:has(.xy-myRingTypeSelectImages__loadingMessage) {
	gap: 80px;
}
.xy-myRingTypeSelectImages__selectItemBox {
	display: flex;
	flex-direction: column;
	gap: 8px;
	max-width: 334px;
}
.xy-myRingTypeSelectImages__loadingMessage {
	display: block;
	font-size: 16px;
	line-height: 24px;
}
.xy-myRingTypeSelectImages__list {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(2, calc((135 / 375) * 100vw));
}
.xy-myRingTypeSelectImages__listItem {
	position: relative;
	display: block;
	width: calc((135 / 375) * 100vw);
	height: calc((135 / 375) * 100vw);
	background-color: #fff;
	border-radius: 12px;
	-webkit-tap-highlight-color: transparent;
}
.xy-myRingTypeSelectImages__listItem:has(.xy-myRingTypeSelectImages__checkbox:checked)::before,
.xy-myRingTypeSelectImages__listItem:has(.xy-myRingTypeSelectImages__checkbox:checked)::after {
	position: absolute;
	content: "";
	display: block;
}
.xy-myRingTypeSelectImages__listItem:has(.xy-myRingTypeSelectImages__checkbox:checked)::before {
	top: 0;
	left: 0;
	width: calc((135 / 375) * 100vw);
	height: calc((135 / 375) * 100vw);
	border-radius: 12px;
	border: 1px solid #fff;
	background: rgba(245, 156, 174, 0.4);
}
.xy-myRingTypeSelectImages__listItem:has(.xy-myRingTypeSelectImages__checkbox:checked)::after {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 40px;
	height: 40px;
	background-size: contain;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_icon_spark_white.png");
}
.xy-myRingTypeSelectImages__image {
	display: block;
	border-radius: 12px;
	width: calc((135 / 375) * 100vw);
	height: calc((135 / 375) * 100vw);
	border: 1px solid #ccc;
}
.xy-myRingTypeSelectImages__checkbox {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: none;
}
.xy-myRingTypeSelectImages__noChoiceButtonWrapper {
	border-radius: 12px;
	background-color: #fff;
	width: 100%;
}
.xy-myRingTypeSelectImages__noChoiceButtonWrapper.is-hidden {
	display: none;
}
.xy-myRingTypeSelectImages__noChoiceButton {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 60px;
	border-radius: 12px;
	background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
	font-size: 14px;
	line-height: 21px;
	font-weight: 300;
	color: #595959;
}
.xy-myRingTypeSelectImages__noChoiceButton.is-disabled {
	background-color: #d8d8d8;
	color: #fff;
	opacity: 1;
	box-shadow: none;
	pointer-events: none;
}
.xy-myRingTypeSelectImages__bottomFixed {
	bottom: 20px;
	position: sticky;
	align-self: flex-end;
	display: flex;
	gap: 8px;
	align-items: center;
}
.xy-myRingTypeSelectImages__bottomFixed.is-hidden {
	display: none;
}
.xy-myRingTypeSelectImages__maxLimitMessageWrapper {
	display: none;
	bottom: 20px;
	right: 84px;
	padding-right: 8px;
}
.xy-myRingTypeSelectImages__maxLimitMessageWrapper.is-show {
	display: block;
}
.xy-myRingTypeSelectImages__maxLimitMessage {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 12px;
	background-color: #fdecee;
	border-radius: 12px;
	box-shadow: 0px 0px 10px 0px rgba(121, 145, 195, 0.5);
	font-size: 12px;
	line-height: 18px;
	font-weight: 300;
	color: #595959;
}
.xy-myRingTypeSelectImages__maxLimitMessage::after {
	position: absolute;
	display: block;
	content: "";
	width: 20px;
	height: 36px;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_arrow.png");
	top: 50%;
	right: -18px;
	transform: translate(0, -50%);
}

.xy-myRingTypeResult__content.-top {
	gap: 24px;
	padding: 32px 40px;
	background-color: #ffdde2;
	background-image: url("/s/contents/uxd/ring/myRingType/images/bg_myringtype_result.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
}
.xy-myRingTypeResult__content.-bottom {
	gap: 64px;
	padding: 32px 20px 64px;
	background-position: bottom;
	background-size: 100%;
	background: linear-gradient(180deg, #ffdde2 0%, #efdce6 70%, #d8dbed 90%, #7cabe7 100%);
}
.xy-myRingTypeResult__title {
	display: flex;
	align-items: center;
	gap: 4px;
}
.xy-myRingTypeResult__title::before,
.xy-myRingTypeResult__title::after {
	display: block;
	content: "";
	width: 16px;
	height: 16px;
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_illust_spark_white.png");
	background-size: cover;
}
.xy-myRingTypeResult__title.-bottom {
	font-size: 20px;
	line-height: 30px;
	color: #595959;
	font-weight: 300;
	text-align: center;
}
.xy-myRingTypeResult__title.-bottom::before,
.xy-myRingTypeResult__title.-bottom::after {
	background-image: url("/s/contents/uxd/ring/myRingType/images/img_illust_spark_pink.png");
}
.xy-myRingTypeResult__resultListWrapper {
	padding: 13px 0;
	width: 100%;
}
.xy-myRingTypeResult__resultList {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0 24px;
	width: 100%;
	height: auto;
	background-color: rgba(255, 255, 255, 0.5);
}
.xy-myRingTypeResult__resultList::before,
.xy-myRingTypeResult__resultList::after {
	width: 100%;
	height: 13px;
	content: "";
	position: absolute;
	background-size: 50% 50%;
	background-repeat: no-repeat;
}
.xy-myRingTypeResult__resultList::before {
	top: -13px;
	border-bottom: 13px solid rgba(255, 255, 255, 0.5);
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	box-sizing: border-box;
}
.xy-myRingTypeResult__resultList::after {
	bottom: -13px;
	border-top: 13px solid rgba(255, 255, 255, 0.5);
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	box-sizing: border-box;
}
.xy-myRingTypeResult__resultListItem {
	box-sizing: border-box;
	width: 100%;
	padding: 12px 0;
	display: flex;
	gap: 8px;
	font-size: 12px;
	line-height: 18px;
	font-weight: 300;
	color: #595959;
}
.xy-myRingTypeResult__resultListItem:first-child {
	padding-top: 6px;
}
.xy-myRingTypeResult__resultListItem:last-child {
	padding-bottom: 6px;
}
.xy-myRingTypeResult__resultListItem:not(:last-child) {
	border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
.xy-myRingTypeResult__resultListItemTitle {
	min-width: 56px;
	font-weight: 700;
}
.xy-myRingTypeResult__exampleRing {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.xy-myRingTypeResult__exampleRingTitle {
	font-size: 14px;
	line-height: 21px;
}
.xy-myRingTypeResult__exampleRingList {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(3, 1fr);
}
.xy-myRingTypeResult__exampleRingListItem {
	font-size: 10px;
	line-height: 15px;
	background-color: #f8f8f8;
	border-radius: 12px;
}
.xy-myRingTypeResult__exampleRingListItem:active {
	background-color: transparent;
}
.xy-myRingTypeResult__exampleRingImageLink {
	-webkit-tap-highlight-color: transparent;
}
.xy-myRingTypeResult__exampleRingImage {
	background-color: #f8f8f8;
	border: 1px solid #cccccc;
	border-radius: 12px;
	display: block;
	width: calc((93 / 375) * 100vw);
	height: calc((93 / 375) * 100vw);
}
.xy-myRingTypeResult__exampleRingMoreLinkWrapper {
	display: flex;
	align-items: center;
	justify-content: center;
}
.xy-myRingTypeResult__exampleRingMoreLink {
	display: inline-flex;
	gap: 4px;
	align-items: center;
	font-size: 12px;
	line-height: 18px;
	font-weight: 300;
	color: #595959;
}
.xy-myRingTypeResult__exampleRingMoreLink::after {
	content: "\e016";
	font-size: 12px;
	color: #595959;
}
.xy-myRingTypeResult__exampleRingMoreLink.is-hidden {
	display: none;
}
.xy-myRingTypeResult__brandRanking {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 24px;
}
.xy-myRingTypeResult__brandRanking.is-hidden {
	display: none;
}
.xy-myRingTypeResult__brandRankingList {
	display: flex;
	gap: 23px;
	flex-direction: column;
}
.xy-myRingTypeResult__brandRankingItem {
	counter-increment: ranking;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.xy-myRingTypeResult__brandRankingClientName {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	width: -moz-fit-content;
	width: fit-content;
}
.xy-myRingTypeResult__brandRankingClientName::before {
	content: counter(ranking);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 18px;
	height: 18px;
	font-family:
		ui-sans-serif,
		system-ui,
		-apple-system,
		BlinkMacSystemFont,
		Roboto,
		Arial,
		sans-serif;
	font-weight: 700;
	font-size: 12px;
	line-height: 18px;
	color: #fff;
	border-radius: 4px;
	background-color: #8d8d8d;
}
.xy-myRingTypeResult__brandRankingItem:nth-child(1) .xy-myRingTypeResult__brandRankingClientName::before,
.xy-myRingTypeResult__brandRankingItem:nth-child(2) .xy-myRingTypeResult__brandRankingClientName::before,
.xy-myRingTypeResult__brandRankingItem:nth-child(3) .xy-myRingTypeResult__brandRankingClientName::before {
	background-color: #ea6077;
}
.xy-myRingTypeResult__brandRankingClientNameLabel {
	display: flex;
	gap: 4px;
	align-items: center;
	font-size: 14px;
	line-height: 21px;
	font-weight: 300;
	color: #595959;
	word-break: break-all;
	max-width: calc(100% - 26px);
}
.xy-myRingTypeResult__brandRankingClientNameLabel::after {
	content: "\e016";
	font-size: 16px;
	color: #8d8d8d;
}
.xy-myRingTypeResult__brandRankingShohinList {
	display: flex;
	gap: 8px;
}
.xy-myRingTypeResult__brandRankingShohinLink {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.xy-myRingTypeResult__brandRankingShohinImageWrapper {
	font-size: 10px;
	line-height: 15px;
	background-color: #f8f8f8;
	border-radius: 12px;
	width: calc((106 / 375) * 100vw);
	height: calc((106 / 375) * 100vw);
}
.xy-myRingTypeResult__brandRankingShohinImage {
	border: 1px solid #ccc;
	border-radius: 12px;
	background-color: #f8f8f8;
	display: block;
	width: 100%;
	height: 100%;
}
.xy-myRingTypeResult__brandRankingShohinName {
	font-weight: 300;
	font-size: 12px;
	line-height: 18px;
	color: #595959;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.xy-myRingTypeResult__buttonArea {
	display: flex;
	gap: 16px;
	flex-direction: column;
}
.xy-myRingTypeResult__buttonWrapper {
	border-radius: 100px;
	background-color: #fff;
}

.xy-myRingTypeError__wrapper {
	justify-content: center;
}
.xy-myRingTypeError__content {
	gap: 40px;
}
.xy-myRingTypeError__description {
	font-size: 16px;
	line-height: 24px;
}
.xy-myRingTypeError__button {
	background-color: #fff;
	border-radius: 100px;
}
@media screen and (max-width: 374px) {
	.xy-myRingTypeButton.-han {
		min-width: calc((64 / 375) * 100vw);
		min-height: calc((30 / 375) * 100vw);
		padding: calc((8 / 375) * 100vw) calc((20 / 375) * 100vw);
		font-size: calc((12 / 375) * 100vw);
		line-height: calc((15 / 375) * 100vw);
	}
	.xy-myRingTypeTop__content {
		gap: 16px;
	}
	.xy-myRingTypeTop__titleEn {
		width: calc((178 / 375) * 100vw);
	}
	.xy-myRingTypeTop__titleJa {
		width: calc((228 / 375) * 100vw);
	}
	.xy-myRingTypeTop__button {
		width: calc((120 / 375) * 100vw);
		height: calc((120 / 375) * 100vw);
	}
	.xy-myRingTypeTop__buttonLabel {
		font-size: calc((22 / 375) * 100vw);
	}
	.xy-myRingTypeTop__buttonLabel::after {
		bottom: -20px;
		font-size: 12px;
	}
	.xy-myRingTypeErMr__button {
		gap: calc((8 / 375) * 100vw);
		width: calc((160 / 375) * 100vw);
		height: calc((160 / 375) * 100vw);
	}
	.xy-myRingTypeErMr__buttonLabel {
		gap: calc((8 / 375) * 100vw);
		font-size: calc((16 / 375) * 100vw);
	}
	.xy-myRingTypeErMr__buttonLabel::after {
		font-size: calc((16 / 375) * 100vw);
	}
	.xy-myRingTypeErMr__buttonImage {
		width: calc((68 / 375) * 100vw);
		height: calc((68 / 375) * 100vw);
	}
	.xy-myRingTypeErMr__ringTypeList {
		margin-top: 24px;
		width: calc((279 / 375) * 100vw);
		height: calc((320 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chart {
		width: calc((340 / 375) * 100vw);
		height: calc((340 / 375) * 100vw);
		padding: calc((30 / 375) * 100vw);
		background-size: calc((280 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chartLabelListItem.-indivisual {
		top: calc((70 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chartLabelListItem.-simple {
		top: calc((128 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chartLabel.-cuteCasual {
		width: calc((147 / 375) * 100vw);
		height: calc((22 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chartLabel.-indivisual {
		width: calc((22 / 375) * 100vw);
		height: calc((198 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chartLabel.-gorgeousElegant {
		width: calc((160 / 375) * 100vw);
		height: calc((22 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__chartLabel.-simple {
		width: calc((22 / 375) * 100vw);
		height: calc((80 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel::after {
		width: calc((56 / 375) * 100vw);
		height: calc((56 / 375) * 100vw);
		background-size: calc((38 / 375) * 100vw) calc((38 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-cuteCasual {
		top: calc((30 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-cuteCasualIndivisual {
		top: calc((63 / 375) * 100vw);
		right: calc((63 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-indivisual {
		top: calc((143 / 375) * 100vw);
		right: calc((28 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-indivisualGorgeousElegant {
		bottom: calc((60 / 375) * 100vw);
		right: calc((63 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-gorgeousElegant {
		bottom: calc((30 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-gorgeousElegantSimple {
		bottom: calc((60 / 375) * 100vw);
		left: calc((63 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-simple {
		top: calc((143 / 375) * 100vw);
		left: calc((28 / 375) * 100vw);
	}
	.xy-myRingTypeTaste__tasteInputRadioLabel.-simpleCuteCasual {
		top: calc((63 / 375) * 100vw);
		left: calc((63 / 375) * 100vw);
	}
	.xy-myRingTypeHan__map {
		width: calc((335 / 375) * 100vw);
		height: calc((289 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem {
		border-radius: calc((100 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-hokkaido {
		top: calc((12 / 375) * 100vw);
		right: calc((11 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-tohoku {
		top: calc((68 / 375) * 100vw);
		right: calc((17 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-kitakanto {
		top: calc((125 / 375) * 100vw);
		right: calc((-1 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-shutoken {
		bottom: calc((61 / 375) * 100vw);
		right: calc((11 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-tokai {
		bottom: calc((4 / 375) * 100vw);
		right: calc((17 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-chubu {
		top: calc((68 / 375) * 100vw);
		left: calc((78 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-kansai {
		bottom: calc((61 / 375) * 100vw);
		left: calc((120 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-chugoku {
		bottom: calc((118 / 375) * 100vw);
		left: calc((84 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-shikoku {
		bottom: calc((4 / 375) * 100vw);
		left: calc((120 / 375) * 100vw);
	}
	.xy-myRingTypeHan__mapItem.-kyushu {
		bottom: calc((31 / 375) * 100vw);
		left: calc((1 / 375) * 100vw);
	}
}
@media screen and (min-width: 430px) {
	.xy-myRingTypeTop__content {
		padding: calc((24 / 375) * 100vw) 0;
	}
	.xy-myRingTypeErMr__button {
		gap: calc(8px * 1.2);
		width: calc(160px * 1.2);
		height: calc(160px * 1.2);
	}
	.xy-myRingTypeErMr__buttonLabel {
		gap: calc(8px * 1.2);
		font-size: calc(16px * 1.2);
	}
	.xy-myRingTypeErMr__buttonLabel::after {
		font-size: calc(16px * 1.2);
	}
	.xy-myRingTypeErMr__buttonImage {
		width: calc(68px * 1.2);
		height: calc(68px * 1.2);
	}
	.xy-myRingTypeErMr__ringTypeList {
		width: calc(279px * 1.2);
		height: calc(320px * 1.2);
	}
	.xy-myRingTypeSelectImages__list {
		grid-template-columns: repeat(2, 163px);
	}
	.xy-myRingTypeSelectImages__listItem {
		width: 163px;
		height: 163px;
	}
	.xy-myRingTypeSelectImages__listItem:has(.xy-myRingTypeSelectImages__checkbox:checked)::before {
		width: 163px;
		height: 163px;
	}
	.xy-myRingTypeSelectImages__image {
		width: 163px;
		height: 163px;
	}
	.xy-myRingTypeResult__exampleRingImage {
		width: 111px;
		height: 111px;
	}
	.xy-myRingTypeResult__brandRankingShohinImageWrapper {
		width: 124px;
		height: 124px;
	}
}
@media (orientation: landscape) {
	.xy-myRingTypeTop__content {
		background-size: 100%;
	}
}
