@charset "UTF-8";
html {
	scroll-behavior: smooth;
}

body {
	--container: 1130px;
	color: var(--color-body-1);
	font-family: var(--font-family);
	line-height: calc(32 / 16);
}

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

a {
	color: var(--color-body-1);
	text-decoration: none;
}

:where(a, button):hover {
	opacity: .7;
}

@media (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}


@media(max-width: 767px) {
	body {
		--fs: 15;
	}
}

.container {
	padding-right: var(--padding);
	padding-left: var(--padding);
	max-width: calc(var(--container) + var(--padding) + var(--padding));
}

.container-slim {
	--container: 935px;
}

/*      買取専門ベルちゃん      */
.bellchan {
    --container: 1130px;
    --container-lg: 1300px;
    font-family: var(--m-plus);
    line-height: calc(28 / 16);
    letter-spacing: 0.05em;
}

.bellchan-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    max-width: 1305px;
    width: calc(100% - var(--padding) * 2 );
    min-height: 76px;
    background: #FFF;
    border-radius: 60px;
    position: absolute;
    top: 45px;
    left: 50%;
    transform: translateX(-50%);
    padding: 5px 35px;
    box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, .15);
    z-index: 500;
}

.bellchan-header-left {
	position: relative;
	z-index: 999;
}

.bellchan-header-logo {
	margin: 0 15px;
	z-index: 999;
}

.bellchan-header-logo a {
	display: flex;
}

.bellchan-header-right {
	display: flex;
    align-items: center;
	gap: 30px;
}

.bellchan-header-instagram a {
    display: flex;
}

.bellchan-menu-list {
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: space-between;
	--fs: 15;
	list-style: none;
	padding: 0;	
	margin-bottom: 0;
}

.bellchan-menu-list a {
	display: block;
	--fs: 15;
	padding: 5px 10px;
}

.bellchan-global-nav-button {
	position: relative;
    width: 50px;
    height: 80px;
    background: transparent;
    border: none;
    outline: none;
    padding: 0;
	z-index: 999;
}

.bellchan-global-nav-button span {
	width: 35px;
    height: 2px;
    background: #000;
    position: absolute;
    top: 50%;
    left: 50%;
    transition: .3s;
}

.bellchan-global-nav-button span:nth-child(1) {
	transform: translate(-50%,calc(-50% + 10px));
}

.bellchan-global-nav-button span:nth-child(2) {
	transform: translate(-50%,-50%);
}

.bellchan-global-nav-button span:nth-child(3) {
	transform: translate(-50%,calc(-50% - 10px));
}

body.noscroll .bellchan-global-nav-button span:nth-child(1) {
	transform: translate(-50%,-50%) rotate(-45deg);
}

body.noscroll .bellchan-global-nav-button span:nth-child(2) {
	transform: translate(-50%,-50%) rotate(45deg);
}

body.noscroll .bellchan-global-nav-button span:nth-child(3) {
	opacity: 0;
	visibility: hidden;
}


body.noscroll {
	overflow: hidden;
	touch-action: pinch-zoom;
}

body.noscroll .header-nav-toggle::before {
    background-color: rgba(0, 0, 0, .2);
	bottom: 0;
	content: '';
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	cursor: default;
	z-index: -2;
}

@media(max-width: 1199px) {
    .bellchan-header-logo {
        margin: 0;
    }
    .bellchan-header-right {
        gap: 20px;
    }
    .bellchan-menu-list {
        gap: 5px;
    }
}

@media(max-width: 991px) {
    .bellchan-header {
        top: 20px;
        min-height: 65px;
    }
    .bellchan-header-logo img {
        width: 140px;
    }
    .bellchan-header-right {
        gap: 20px;
    }
    .bellchan-global-nav-button {
        height: 65px;
    }
	.bellchan-menu {
		opacity: 0;
		visibility: hidden;
		background-color: #fff;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		position: absolute;
		top: -20px;
		right: calc(var(--padding) * -1);
		left: calc(var(--padding) * -1);;
		padding: 150px var(--padding) 100px;
		z-index: -1;
		overflow: auto;
		height: 100vh;
		max-height: 100vh;
		z-index: 555;
		transition: 0.5s;
	}
	body.noscroll .bellchan-menu {
		visibility: visible;
		opacity: 1;
	}
	.bellchan-menu-list {
		max-width: 500px;
		width: 100%;
		flex-direction: column;
		gap: 0;
		padding: 0;
		margin-inline: auto;
	}
	.bellchan-menu-item {
		width: 100%;
		max-width: 250px;
	}
	.bellchan-menu-list a {
		--fs: 16;
		width: 100%;
		display: block;
		padding: 15px 10px;
	}
	.bellchan-menu-item {
		text-align: center;
		border-bottom: 1px solid var(--color-theme-1);
	}
}

@media(max-width: 767px) {
	.bellchan-header-logo img {
		width: 130px;
	}
    .bellchan-header-right {
        gap: 15px;
    }
	.bellchan-global-nav-button {
		height: 60px;
	}
}

@media(max-width: 575px) {
    .bellchan-header {
        padding: 5px 25px;
    }
	.bellchan-header-logo img {
		width: 110px;
	}
    .bellchan-header-instagram img {
        width: 25px;
    }
	.bellchan-global-nav-button {
        width: 40px;
		height: 55px;
	}
	.bellchan-global-nav-button span {
		width: 30px;
	}
	.bellchan-global-nav-button span:nth-child(1) {
		transform: translate(-50%,calc(-50% + 8px));
	}
	.bellchan-global-nav-button span:nth-child(3) {
		transform: translate(-50%,calc(-50% - 8px));
	}
	.bellchan-menu {
		padding: 100px var(--padding);
	}
}

/*		ベルちゃんフッター		*/
.page-top {
	display: grid;
	--fs: 12;
	font-weight: 500;
	max-inline-size: max-content;
	margin-inline: auto;
	margin-bottom: 15px;
}

.page-top::before {
	content: "";
	width: 12px;
	aspect-ratio: 12 / 14;
	background: url(img/bellchan/bellchan-pagetop.svg) center / cover;
	margin-inline: auto;
}

.bellchan-footer {
	background: #FFF4CA;
	padding-top: 20px;
	padding-bottom: 30px;
}

.bellchan-footer-logo {
	margin-bottom: 60px;
}

.bellchan-footer-menu {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 25px 90px;
	list-style: none;
	padding: 0;
	margin-bottom: 0;
}

.bellchan-footer-menu a {
	--fs: 15;
	font-weight: 500;
}

.bellchan-footer-instagram a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 76px;
	height: 76px;
	background: #FFF;
	border: 2px solid #000;
	border-radius: 50%;
	box-shadow: 4px 4px 0 0 #000;
}

.bellchan-pop {
	position: relative;
	width: 370px;
	background: #FFF;
	border: 2px solid #000;
	border-radius: 20px;
	box-shadow: 4px 4px 0 0 #000;
	padding: 0 15px 15px;
	z-index: 5;
}

.bellchan-footer .bellchan-pop::before {
	content: "";
	width: 61%;
	aspect-ratio: 1 / 1;
	background: url(img/bellchan/bellchan.gif) top center / cover;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-47%,-100%);
	z-index: -1;
}

.bellchan-pop h2 {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 46px;
	--fs: 28;
	font-size: var(--font-size);
	font-family: var(--mochiy);
	line-height: 1;
	text-align: center;
	max-inline-size: max-content;
	color: #FFF;
	background: var(--bellchan-theme-1);
	border-radius: 50px;
	padding: 3px 40px;
	margin-top: calc(46px / -2);
	margin-inline: auto;
	margin-bottom: 15px;
}

.bellchan-pop h2::before {
	content: "";
	width: 21px;
	aspect-ratio: 21 / 20;
	background: url(img/bellchan/bell.png) center / cover;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-45%);
}

.bellchan-pop h2::after {
	content: "";
	width: 21px;
	aspect-ratio: 21 / 20;
	background: url(img/bellchan/bell.png) center / cover;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-45%);
}

.bellchan-pop a {
	display: block;
	--fs: 43;
	line-height: 1.4;
	font-family: "Urbanist", sans-serif;
	font-weight: 900;
	letter-spacing: 0;
	text-align: center;
	max-inline-size: max-content;
	color: var(--bellchan-theme-1);
	margin-inline: auto;
}

.bellchan-pop address {
	--fs: 15;
	font-weight: 500;
	line-height: 2.2;
	max-inline-size: max-content;
	margin-inline: auto;
	margin-bottom: 0;
}

.bellchan-pop address span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100px;
	height: 22px;
	--fs: 14;
	color: #FFF;
	letter-spacing: 0.01em;
	background: var(--bellchan-theme-1);
	border-radius: 30px;
	margin-right: 10px;
}

.copyright {
	--fs: 12;
	text-align: end;
	margin-bottom: 0;
}

@media(max-width: 767px) {
	.bellchan-footer-logo {
		margin-bottom: 0;
	}
	.bellchan-footer-instagram a {
		width: 50px;
		height: 50px;
        box-shadow: 2px 2px 0 0 #000;
	}
	.bellchan-footer-instagram a img {
		width: 25px;
	}
	.bellchan-footer .bellchan-pop {
		margin-top: 230px;
	}
	.bellchan-footer .bellchan-pop::before {
		max-width: 230px;
	}
	.copyright {
		text-align: center;
	}
}

@media(max-width: 575px) {
	.bellchan-footer {
		padding-bottom: 30px;
	}
	.bellchan-footer .bellchan-pop {
		margin-top: 155px;
	}
	.bellchan-footer .bellchan-pop::before {
		max-width: 155px;
	}
	.page-top {
		opacity: 0;
		visibility: hidden;
		align-items: center;
		background: #FFF;
		min-width: 50px;
		height: 50px;
		border: 2px solid #000;
		border-radius: 15px;
		position: fixed;
		right: 10px;
		bottom: 10px;
		padding: 5px;
		margin: 0;
		z-index: 50;
		transition: .5s;
	}
	.page-top.show {
		opacity: 1;
  		visibility: visible;
	}
}

.bellchan-mv {
	--container: 1340px;
    position: relative;
    min-height: 400px;
    background: #FFF4CA;
    overflow: hidden;
    padding-top: 175px;
    padding-bottom: 28%;
}

.bellchan-mv::before {
    content: "";
    width: 200%;
    height: 200%;
    background: url(img/bellchan/bellchan-mv-bg.png) center / auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-25deg);
}

.bellchan-mv-content {
	position: relative;
}

.bellchan-mv-title {
    position: relative;
    max-inline-size: max-content;
    margin-inline: auto;
    z-index: 5;
}

.bellchan-mv-title h2 {
    display: flex;
    align-items: flex-start;
    flex-direction: row-reverse;
    gap: 10px;
}

.bellchan-mv-title h2 span:nth-child(2) {
    margin-top: 110px;
}

.bellchan-mv-deco01 {
    position: absolute;
    top: -10px;
    left: -155px;
}

.bellchan-mv-deco02 {
    position: absolute;
    top: 80px;
    right: -140px;
}

.bellchan-mv-deco03 {
    position: absolute;
    top: 185px;
    left: -160px;
}

.bellchan-mv-deco04 {
    position: absolute;
    bottom: 0;
    right: -60px;
}

.bellchan-mv-deco05 {
    position: absolute;
    bottom: 0;
    left: -120px;
}

.bellchan-mv-image {
	position: absolute;
	left: 0;
	bottom: -30%;
	z-index: 10;
}

.bellchan-mv-image p {
	position: relative;
	--fs: 25;
	font-family: var(--mochiy);
	line-height: calc( 30 / 25 );
	letter-spacing: 0.05em;
	color: #503606;
	padding-left: 40px;
	padding-right: 30px;
	max-inline-size: max-content;
	margin-inline: auto;
}

.bellchan-mv-image p::before,
.bellchan-mv-image p::after {
	content: "";
    width: 23px;
    aspect-ratio: 23 / 36;
    background: url(img/bellchan/bellchan-mv-arrow.svg) center / cover;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-30%) scale(-1, 1);
}

.bellchan-mv-image p::after {
	left: auto;
	right: 0;
	transform: translateY(-30%);
}

.bellchan-mv-pop {
	position: absolute;
	right: 0;
	bottom: -20%;
}

.bellchan-mv-pop p {
	font-weight: 500;
	max-inline-size: max-content;
	margin-inline: auto;
	margin-bottom: 40px;
}

.bellchan-circle01 {
    position: relative;
    aspect-ratio: 1440 / 410;
    overflow: hidden;
    margin-top: -25%;
}

.bellchan-circle-content {
    width: 200vw;
    max-width: 200vw;
    min-width: 1250px;
    position: relative;
    left: 50%;
    background: #FFF;
    border-radius: 50%;
    padding: 3%;
    transform: translateX(-50%);
    animation: spin 80s linear infinite;
}

@keyframes spin {
    from {
      transform: translateX(-50%) rotate(360deg);
    }
    to {
      transform: translateX(-50%) rotate(0deg);
    }
}

@media(max-width: 991px) {
    .bellchan-mv {
        padding-top: 120px;
        padding-bottom: 45%;
    }
    .bellchan-mv-image {
        left: 5%;
        bottom: -40%;
    }
    .bellchan-mv-pop {
        bottom: -30%;
        transform: scale(0.9);
    }
    .bellchan-mv-deco02 {
        top: 40px;
        right: -200px;
    }
    .bellchan-mv-deco03 {
        top: 100px;
        left: -210px;
    }
    .bellchan-mv-deco04 {
        bottom: 200px;
        right: -80px;
    }
    .bellchan-mv-deco05 {
        bottom: 175px;
        left: -100px;
    }
    .bellchan-mv-image img {
        width: 230px;
    }
}

@media(max-width: 767px) {
    .bellchan-mv {
        padding-top: 125px;
        padding-bottom: 35%;
    }
    .bellchan-mv-title h2 {
        gap: 0;
    }
    .bellchan-mv-title h2 span:nth-child(1) img {
        width: 105px;
    }
    .bellchan-mv-title h2 span:nth-child(2) {
        margin-top: 80px;
    }
    .bellchan-mv-title h2 span:nth-child(2) img {
        width: 96px;
    }
    .bellchan-mv-deco01 {
        top: -10px;
        left: -135px;
    }
    .bellchan-mv-deco01 img {
        width: 110px;
    }
    .bellchan-mv-deco02 {
        top: 50px;
        right: -125px;
    }
    .bellchan-mv-deco02 img {
        width: 91px;
    }
    .bellchan-mv-deco03 {
        top: 100px;
        left: -170px;
    }
    .bellchan-mv-deco03 img {
        width: 109px;
    }
    .bellchan-mv-deco04 {
        bottom: 20px;
        right: -75px;
    }
    .bellchan-mv-deco04 img {
        width: 82px;
    }
    .bellchan-mv-deco05 {
        bottom: 15px;
        left: -80px;
    }
    .bellchan-mv-deco05 img {
        width: 72px;
    }
    .bellchan-mv-image {
        max-width: 45%;
        bottom: 0;
        left: 50%;
        transform: translate(-47%, -20%);
        z-index: 5;
    }
    .bellchan-mv-pop {
        position: relative;
        bottom: auto;
        margin-top: 250px;
        z-index: 10;
    }
    .bellchan-pop {
        width: 100%;
        max-width: 100%;
    }
}

@media(max-width: 575px) {
    .bellchan-mv {
        padding-top: 100px;
    }
    .bellchan-mv::before {
        background-size: 450px;
    }
    .bellchan-mv-title h2 span:nth-child(1) img {
        width: 79px;
    }
    .bellchan-mv-title h2 span:nth-child(2) {
        margin-top: 60px;
    }
    .bellchan-mv-title h2 span:nth-child(2) img {
        width: 72px;
    }
	.bellchan-mv-image img {
		width: 155px;
	}
    .bellchan-pop h2 {
        --fs: 22;
        min-height: 35px;
        margin-bottom: 8px;
    }
    .bellchan-pop {
        padding: 0 15px 10px;
    }
	.bellchan-mv-pop {
		margin-top: 160px;
	}
    .bellchan-mv-pop p {
        --fs: 15;
    }
    .bellchan-pop a {
        --fs: 40;
        line-height: 1;
    }
    .bellchan-mv-deco01 {
        top: 5px;
        left: -90px;
    }
    .bellchan-mv-deco01 img {
        width: 80px;
    }
    .bellchan-mv-deco02 {
        right: -90px;
    }
    .bellchan-mv-deco02 img {
        width: 65px;
    }
    .bellchan-mv-deco03 {
        left: -100px;
    }
    .bellchan-mv-deco03 img {
        width: 80px;
    }
    .bellchan-mv-deco04 img {
        width: 60px;
    }
    .bellchan-mv-deco05 {
        left: -80px;
    }
    .bellchan-mv-deco05 img {
        width: 60px;
    }
}

.bellchan-intro {
    position: relative;
    margin-top: -13%;
	margin-bottom: 135px;
	overflow-x: clip;
    z-index: 5;
}

.bellchan-intro h2 {
    --fs: 18;
    font-size: var(--font-size);
    font-family: var(--mochiy);
    letter-spacing: 0.05em;
    color: var(--bellchan-theme-1);
    margin-bottom: 20px;
}

.bellchan-intro h3 {
    --fs: 30;
    font-size: var(--font-size);
    font-family: var(--mochiy);
    line-height: calc(40 / 30);
    letter-spacing: 0.05em;
    margin-bottom: 25px;
}

.bellchan-intro h4 {
    --fs: 18;
    font-size: var(--font-size);
    font-family: var(--mochiy);
    margin-bottom: 35px;
}

.bellchan-content > p {
    max-width: 600px;
    margin-inline: auto;
}

.bellchan-image {
	position: relative;
	max-width: 1440px;
	width: 100vw;
	margin-top: 70px;
	margin-bottom: 90px;
	margin-left: calc((1440px - 100%) / -2);
	z-index: -1;
}

.bellchan-image01,
.bellchan-image03,
.bellchan-image04,
.bellchan-image05 {
	position: absolute;
}

.bellchan-image01 {
	max-width: 19%;
	top: 0;
	left: 0;
	transform: translate(30%,-45%);
}

.bellchan-image02 {
	max-width: 38%;
	margin-inline: auto;
}

.bellchan-image03 {
	max-width: 27%;
	top: 0;
	right: 0;
	transform: translate(7%,-25%);
}

.bellchan-image04 {
	max-width: 13%;
	bottom: 0;
	left: 0;
	transform: translate(115%, 30%);
}

.bellchan-image05 {
	max-width: 19%;
	bottom: 0;
	right: 0;
	transform: translate(-45%,80%);
}

.bellchan-image-deco01 {
	position: absolute;
	max-width: 3.5%;
	top: -55%;
	left: 15%;
}

.bellchan-image-deco02 {
	position: absolute;
	max-width: 3%;
	top: -40%;
	right: 18%;
}

.bellchan-image-deco03 {
	position: absolute;
	max-width: 3%;
	bottom: -35%;
    left: 15%;
    transform: scale(-1, -1);
}

.bellchan-image-deco04 {
	position: absolute;
	max-width: 3.5%;
	bottom: 15%;
    right: 25%;
}

.bellchan-intro-caution {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 35px;
    max-width: 770px;
    margin-inline: auto;
}

.bellchan-intro-caution-item {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 160px;
    background: #FFF;
    border: 2px solid var(--color-body-1);
    border-radius: 30px;
    padding: 20px;
    box-shadow: 4px 4px 0 0 #000;
}

.bellchan-intro-caution-item p {
    max-width: 275px;
}

@media(max-width: 1439px) {
	.bellchan-image {
		margin-left: calc((100vw - 100%) / -2);
	}
}

@media(max-width: 991px) {
	.bellchan-image01 {
		transform: translate(5%,-40%);
	}
	.bellchan-image04 {
		transform: translate(115%, 30%);
	}
	.bellchan-image-deco01 {
		top: -50%;
		left: 4%;
	}
	.bellchan-image-deco02 {
		right: 5%;
	}
}

@media(max-width: 767px) {
	.bellchan-intro {
		margin-top: -5%;
		margin-bottom: 50px;
	}
	.bellchan-intro h2 {
		--fs: 16;
		margin-bottom: 15px;
	}
	.bellchan-intro h3 {
		--fs: 22;
	}
	.bellchan-intro-caution {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.bellchan-intro-caution-item {
		min-height: 125px;
	}
	.bellchan-intro-caution-item p {
		max-width: 100%;
	}
	.bellchan-image {
		margin-top: 30px;
		margin-bottom: 50px;
	}
	.bellchan-image01,
	.bellchan-image03,
	.bellchan-image04,
	.bellchan-image05 {
		display: none;
	}
	.bellchan-image02 {
		max-width: 500px;
		width: calc(100% - var(--padding) * 2);
	}
	.bellchan-image-deco01 {
		max-width: 9%;
		top: 0%;
		left: 2%;
	}
	.bellchan-image-deco02 {
		top: 8%;
		max-width: 8%;
	}
	.bellchan-image-deco03 {
		max-width: 8%;
		bottom: -5%;
		left: 10%;
	}
	.bellchan-image-deco04 {
		max-width: 9.5%;
		bottom: -9%;
		right: 5%;
	}
}

.bellchan-section-title {
	display: grid;
	justify-content: center;
	gap: 10px;
	--fs: 35;
	font-size: var(--font-size);
	font-family: var(--mochiy);
	opacity: 0;
	margin-bottom: 50px;
	transition: 1s;
}

.bellchan-section-title.show {
	opacity: 1;
}

.bellchan-section-title::before {
	content: "";
	width: 48px;
	aspect-ratio: 48 / 46;
	background: url(img/bellchan/bell.png) center / cover;
	margin-inline: auto;
}

.bellchan-section-title.show::before {
	animation: bell 1s ease-out;
	animation-delay: 0.5s
}

@keyframes bell {
	20% {
        -webkit-transform: rotate(20deg);
        transform: rotate(20deg)
    }

    40% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg)
    }

    60% {
        -webkit-transform: rotate(10deg);
        transform: rotate(10deg)
    }

    80% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}


.bellchan-link a {
	position: relative;
	display: grid;
	align-items: center;
	justify-content: center;
	min-width: 240px;
	min-height: 65px;
	max-inline-size: max-content;
	--fs: 20;
	font-weight: 500;
	color: #FFF;
	background: var(--bellchan-theme-1);
	border-radius: 60px;
	padding: 10px 55px 10px 20px;
	margin-inline: auto;
}

.bellchan-link a::before {
	content: "";
	width: 25px;
    height: 25px;
    background: #FFF;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.bellchan-link a::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid var(--bellchan-theme-1);
    border-right: 2px solid var(--bellchan-theme-1);
    transform: translateY(-50%) rotate(45deg);
    position: absolute;
    top: 50%;
    right: 30px;
}

@media(max-width: 767px) {
	.bellchan-section-title {
		--fs: 30;
		gap: 5px;
		margin-bottom: 30px;
	}
	.bellchan-section-title::before {
		width: 35px;
	}
	.bellchan-link a {
		--fs: 17;
		min-width: 200px;
		min-height: 55px;
		padding: 10px 45px 10px 20px;
	}
	.bellchan-link a::before {
		width: 20px;
		height: 20px;
		right: 15px;
	}
	.bellchan-link a::after {
		width: 6px;
		height: 6px;
		right: 23px;
	}
}

/*		出張買取・店舗買取		*/
.bellchan-come,
.bellchan-shop {
	position: relative;
	background: var(--bellchan-theme-1);
	border-radius: 100px 100px 0 0;
	padding-top: 60px;
	padding-bottom: 210px;
	z-index: 1;
	overflow: hidden;
}

.bellchan-shop {
	background: var(--bellchan-theme-2);
	margin-top: -100px;
}

.bellchan-come::before,
.bellchan-shop::before {
	content: "";
	width: 97px;
	aspect-ratio: 97 / 958;
	background: url(img/bellchan/bellchan.svg) center / cover;
	mix-blend-mode: overlay;
	opacity: 0.6;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.bellchan-shop::before {
	opacity: 0.25;
	right: 0;
	left: auto;
}

.bellchan-come::after,
.bellchan-shop::after {
	content: "";
	width: 780px;
	aspect-ratio: 780 / 784;
	background: url(img/bellchan/bell-bg.png) center / cover;
	position: absolute;
	opacity: 0.6;
	mix-blend-mode: overlay;
	z-index: -1;
}

.bellchan-come::after {
	top: 2%;
    right: -8%;
	transform: rotate(25deg);
}

.bellchan-shop::after {
	top: 2%;
	left: -8%;
	transform: rotate(-25deg);
	opacity: 0.25;
}

.bellchan-come .bellchan-section-title {
	color: #FFF;
}

.come-merit,
.shop-merit {
	position: relative;
	display: grid;
	grid-template-columns: 35% 1fr;
	align-items: center;
	gap: 75px;
	margin-bottom: 95px;
}

.come-merit-image img,
.shop-merit-image img {
	border-radius: 50px;
}

.come-merit-text h3,
.shop-merit-text h3 {
	display: flex;
	align-items: center;
	gap: 15px;
	--fs: 20;
	font-size: var(--font-size);
	font-family: var(--mochiy);
	line-height: calc(25 / 20);
	
	margin-bottom: 30px;
}

.come-merit-text h3 {
	color: #FFF;
}

.come-merit-item,
.shop-merit-item {
	display: grid;
	grid-template-columns: 90px 1fr;
	align-items: center;
	background: #FFF;
	border-radius: 20px;
	padding: 15px;
	padding-left: 0;
}

.come-merit-item:not(:last-child),
.shop-merit-item:not(:last-child) {
	margin-bottom: 10px;
}

.come-merit-item img,
.shop-merit-item img {
	padding: 0 10px;
	margin-inline: auto;
}

.come-merit-item p,
.shop-merit-item p {
	height: 100%;
	border-left: 1px dashed #8F8F8F;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-left: 20px;
	margin-bottom: 0;
}

.come-flow h3,
.shop-flow h3 {
	--fs: 23;
	font-size: var(--font-size);
	font-family: var(--mochiy);
	position: relative;
	max-inline-size: max-content;
	padding-right: 35px;
	padding-left: 35px;
	margin-bottom: 85px;
	margin-inline: auto;
}

.come-flow h3 {
	color: #FFF;
}

.come-flow h3::before,
.shop-flow h3::before {
	content: "";
	width: 23px;
	aspect-ratio: 23 / 36;
	background: url(img/bellchan/come-flow.svg) center / cover;
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(-1,1);
}

.shop-flow h3::before {
	background: url(img/bellchan/shop-flow.svg) center / cover;
}

.come-flow h3::after,
.shop-flow h3::after {
	content: "";
	width: 23px;
	aspect-ratio: 23 / 36;
	background: url(img/bellchan/come-flow.svg) center / cover;
	position: absolute;
	top: 0;
	right: 0;
}

.shop-flow h3::after {
	background: url(img/bellchan/shop-flow.svg) center / cover;
}

.come-flow-content,
.shop-flow-content {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 25px;
	z-index: 5;
}

.come-flow-item,
.shop-flow-item {
	position: relative;
	background: #FFF;
	border-radius: 30px;
	padding: 20px 20px 45px;
}

.come-flow-item:not(:last-child)::before,
.shop-flow-item:not(:last-child)::before {
	content: "";
	width: 55px;
	aspect-ratio: 1 / 1;
	background: url(img/bellchan/bellchan-arrow.svg) center / cover;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(calc(50% + (25px / 2)),-50%);
	z-index: 1;
}

.come-flow-item-num,
.shop-flow-item-num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40%;
	max-width: 104px;
	aspect-ratio: 1 / 1;
	background: #FFF;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -45%);
	padding-bottom: 30px;
	z-index: -1;
}

.come-flow-item h4,
.shop-flow-item h4 {
	display: grid;
	justify-content: center;
	gap: 15px;
	--fs: 20;
	font-size: var(--font-size);
	font-family: var(--mochiy);
	color: var(--bellchan-theme-1);
	margin-bottom: 15px;
}

.shop-flow-item h4 {
	color: var(--bellchan-theme-2);	
}

.come-flow-item h4::after,
.shop-flow-item h4::after {
	content: "";
	width: 34px;
	height: 3px;
	background: var(--bellchan-theme-1);
	margin-inline: auto;
}

.shop-flow-item h4::after {
	background: var(--bellchan-theme-2);
}

.come-flow-item p,
.shop-flow-item p {
	line-height: calc(25 / 16);
	margin-bottom: 0;
}

@media(max-width: 991px) {
	.come-merit,
	.shop-merit {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.come-merit-image,
	.shop-merit-image {
		max-width: 500px;
		margin-inline: auto;
	}
	.come-flow-content,
	.shop-flow-content {
		grid-template-columns: 1fr;
		gap: 70px;
	}
	.come-flow-item:not(:last-child)::before,
	.shop-flow-item:not(:last-child)::before {
		display: none;
	}
}

@media(max-width: 767px) {
	.bellchan-come,
	.bellchan-shop {
		border-radius: 50px 50px 0 0;
		padding-top: 50px;
		padding-bottom: 120px;
	}
	.bellchan-come::before,
	.bellchan-shop::before {
		bottom: 0;
		transform: translateY(-10%);
	}
	.bellchan-shop {
		margin-top: -50px;
	}
	.come-merit,
	.shop-merit {
		margin-bottom: 70px;
	}
	.come-merit-image img,
	.shop-merit-image img {
		border-radius: 30px;
	}
	.come-merit-text h3,
	.shop-merit-text h3 {
		--fs: 18;
		flex-wrap: wrap;
	}
	.come-merit-text h3 img {
		width: 180px;
	}
	.come-merit-item,
	.shop-merit-item {
		grid-template-columns: 70px 1fr;
		padding: 10px;
		padding-left: 0;
	}
	.come-flow h3,
	.shop-flow h3 {
		--fs: 18;
		margin-bottom: 70px;
	}
	.come-flow h3::before,
	.shop-flow h3::before {
		width: 18px;
	}
	.come-flow h3::after,
	.shop-flow h3::after {
		width: 18px;
	}
}

@media(max-width: 575px) {
	.come-flow-content,
	.shop-flow-content {
		gap: 60px;
	}
	.come-flow-item,
	.shop-flow-item {
		padding-bottom: 30px;
	}
	.come-flow-item-num,
	.shop-flow-item-num {
		max-width: 86px;
	}
}

/*		買取できるもの		*/
.bellchan-item {
	position: relative;
	background: #F7F5EF;
	border-radius: 100px 100px 0 0;
	padding-top: 60px;
	padding-bottom: 170px;
	margin-top: -100px;
	margin-bottom: 70px;
	z-index: 5;
}

.bellchan-item .bellchan-section-title {
	color: var(--bellchan-theme-1);
}

.bellchan-item-wrapper {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 50px 25px;
	margin-top: 60px;
	margin-bottom: 60px;
}

.bellchan-item-image {
	margin-bottom: 20px;
}

.bellchan-item-image img {
	border-radius: 11%;
}

.bellchan-item-content p {
	--fs: 18;
	font-weight: 500;
	text-align: center;
	margin-bottom: 0;
}

.bellchan-item-other {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 15px 25px;
}

.bellchan-item-other p {
	display: flex;
	justify-content: center;
	align-items: center;
	--fs: 18;
	font-weight: 500;
	min-height: 86px;
	background: #FFF;
	border-radius: 30px;
	padding: 10px 15px;
	margin-bottom: 0;
}

@media(max-width: 991px) {
	.bellchan-item-wrapper {
		gap: 30px 15px;
	}
	.bellchan-item-content p {
		--fs: 16;
	}
	.bellchan-item-other {
		grid-template-columns: repeat(3,1fr);
		gap: 15px 15px;
	}
	.bellchan-item-other p {
		--fs: 16;
	}
}

@media(max-width: 767px) {
	.bellchan-item {
		border-radius: 50px 50px 0 0;
		padding-top: 50px;
		padding-bottom: 50px;
		margin-top: -50px;
		margin-bottom: 30px;
	}
	.bellchan-item-wrapper {
		grid-template-columns: repeat(2,1fr);
	}
}

@media(max-width: 575px) {
	.bellchan-item-wrapper {
		gap: 20px 15px;
		margin-top: 50px;
		margin-bottom: 50px;
	}
	.bellchan-item-image {
		margin-bottom: 10px;
	}
	.bellchan-item-other {
		grid-template-columns: repeat(2,1fr);
	}
	.bellchan-item-other p {
		min-height: 60px;
		border-radius: 15px;
	}
}

/*		お知らせ		*/
.bellchan-news {
	padding-top: 50px;
	margin-bottom: 170px;
}

.bellchan-news-content {
	display: grid;
	grid-template-columns: 70px 1fr auto;
	gap: 50px;
	padding-right: 70px;
}

.bellchan-news-en {
	grid-row: 1 / 3;
}

.bellchan-news .bellchan-section-title {
	grid-column: 2 / 3;
	grid-template-columns: auto 1fr;
	align-items: center;
	color: var(--bellchan-theme-1);
	margin-bottom: 0;
}

.bellchan-news-list {
	grid-column: 2 / 4;
	list-style: none;
	display: grid;
	gap: 15px;
	padding-left: 0;
	margin-bottom: 0;
}

.bellchan-news-item a {
	position: relative;
	display: grid;
	grid-template-columns: 230px 1fr;
	gap: 15px;
	align-items: center;
	min-height: 100px;
	background: #F5F5F5;
	border-radius: 20px;
	padding: 15px 100px 15px 40px;
}

.bellchan-news-item a::before {
	content: "";
	width: 25px;
	height: 25px;
	background: var(--bellchan-theme-1);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 45px;
	transform: translateY(-50%);
}

.bellchan-news-item a::after {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	transform: translateY(-50%) rotate(45deg);
	position: absolute;
	top: 50%;
	right: 55px;
}

.bellchan-news-item-info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 5px;
}

.bellchan-news-item-info time {
	font-weight: 500;
}

.bellchan-news-category {
	display: grid;
	align-items: center;
	justify-content: center;
	min-width: 110px;
	min-height: 27px;
	--fs: 14;
	font-weight: 500;
	line-height: 1.2;
	background: #FFF;
	border: 1px solid #000;
	border-radius: 40px;
	padding: 2px 5px;
}

.bellchan-news-item p {
	letter-spacing: 0;
	margin-bottom: 0;
}

.bellchan-news .bellchan-link {
	grid-column: 3 / 4;
	grid-row: 1 / 2;
}

@media(max-width: 991px) {
	.bellchan-news-content {
		grid-template-columns: 1fr;
		gap: 0;
		padding-right: 0;
	}
	.bellchan-news .bellchan-section-title {
		grid-column: auto;
		margin-bottom: 50px;
	}
	.bellchan-news-en {
		grid-column: auto;
		grid-row: auto;
		margin-bottom: 10px;
		order: -1;
	}
	.bellchan-news .bellchan-news-list {
		grid-column: auto;
		margin-bottom: 50px;
	}
	.bellchan-news .bellchan-link {
		grid-column: auto;
		grid-row: auto;
	}
}

@media(max-width: 767px) {
	.bellchan-news {
		padding-top: 20px;
		margin-bottom: 100px;
	}
	.bellchan-news .bellchan-section-title {
		margin-bottom: 30px;
	}
	.bellchan-news-en img {
		width: 175px;
	}
	.bellchan-news .bellchan-news-list {
		margin-bottom: 30px;
	}
	.bellchan-news-item a {
		grid-template-columns: 1fr;
		gap: 5px;
		min-height: 80px;
		border-radius: 15px;
		padding: 15px 60px 15px 20px;
	}
	.bellchan-news-item a::before {
		right: 20px;
	}
	.bellchan-news-item a::after {
		right: 30px;
	}
	.bellchan-news-item-info {
		justify-content: flex-start;
		gap: 15px;
	}
}

@media(max-width: 575px) {
	.bellchan-news-item a {
		gap: 5px;
		border-radius: 10px;
		padding: 15px 40px 15px 15px;
	}
	.bellchan-news-item a::before {
		width: 20px;
		height: 20px;
		right: 10px;
	}
	.bellchan-news-item a::after {
		width: 6px;
		height: 6px;
		right: 18px;
	}
	.bellchan-news-item-info {
		gap: 10px;
	}
	.bellchan-news-item-info time {
		--fs: 15;
	}
	.bellchan-news-category {
		min-width: 90px;
		min-height: 24px;
		--fs: 13;
		line-height: 1;
		padding: 3px 5px;
	}
}

/*		店舗案内		*/
.bellchan-guide {
	margin-bottom: 50px;
}

.bellchan-guide-inner {
	background: #F5F5F5;
	border-radius: 100px;
	padding: 40px 30px 90px;
}

.bellchan-guide-inner > * {
	max-width: 940px;
	margin-inline: auto;
}

.bellchan-guide h2 {
	color: var(--bellchan-theme-1);
	margin-bottom: 0;
}

.bellchan-guide-instagram {
	margin-top: -35px;
	margin-bottom: 30px;
}

.bellchan-guide-instagram a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 76px;
	aspect-ratio: 1 / 1;
	background: #FFF;
	border: 2px solid #000;
	border-radius: 50%;
	box-shadow: 4px 4px 0 0 #000;
	margin-left: auto;
}

.bellchan-guide-content {
	display: grid;
	grid-template-columns: 52% 1fr;
	gap: 60px;
	align-items: flex-start;
}

.bellchan-guide-content table {
	width: 100%;
}

.bellchan-guide-content table :where(th,td) {
	font-weight: 400;
	border-bottom: 1px solid #8F8F8F;
	vertical-align: baseline;
	padding: 25px 10px;
}

.bellchan-guide-content table tr:first-child :where(th,td) {
	padding-top: 0;
}

.bellchan-map iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
}

@media(max-width: 991px) {
	.bellchan-guide-content {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	.bellchan-map iframe {
		aspect-ratio: 2 / 1;
	}
}

@media(max-width: 767px) {
	.bellchan-guide-inner {
		border-radius: 50px;
		padding: 40px 20px;
	}
	.bellchan-guide-instagram {
		margin-top: -20px;
		margin-bottom: 15px;
	}
	.bellchan-guide-instagram a {
		width: 50px;
		box-shadow: 2px 2px 0 0 #000;
	}
	.bellchan-guide-instagram a img {
		width: 25px;
	}
	.bellchan-guide-content table :where(th,td) {
		--fs: 14;
		letter-spacing: 0;
		padding: 15px 5px;
	}
}

@media(max-width: 575px) {
	.bellchan-guide-inner {
		border-radius: 20px;
		padding: 30px 15px;
	}
}

/*		よくある質問		*/
.bellchan-faq {
	--container: 935px;
	padding-top: 50px;
}

.bellchan-faq h2 {
	--fs: 35;
	font-size: var(--font-size);
	font-family: var(--mochiy);
	color: var(--bellchan-theme-1);
	margin-bottom: 40px;
}

.bellcha-faq-item {
	border-bottom: 1px solid #8F8F8F;
}

.bellcha-faq-item:first-child {
	border-top: 1px solid #8F8F8F;
}

.bellcha-faq-header {
	margin-bottom: 0;
}

.bellcha-faq-button {
	position: relative;
	width: 100%;
	--fs: 20;
	font-size: var(--font-size);
	font-weight: 500;
	text-align: start;
	color: var(--color-body-1);
	background: transparent;
	border: none;
	padding: 35px 5px;
	padding-right: 60px;
}

.bellcha-faq-button::after {
	content: "";
	width: 12px;
	height: 12px;
	border-right: 2px solid var(--bellchan-theme-1);
	border-bottom: 2px solid var(--bellchan-theme-1);
	position: absolute;
	top: 50%;
	right: 45px;
	transform: translateY(-50%) rotate(225deg);
	transition: 0.3s;
}

.bellcha-faq-button.collapsed::after {
	transform: translateY(-50%) rotate(45deg);
}

.bellcha-faq-body {
	letter-spacing: 0;
	padding: 0 5px;
	padding-right: 60px;
	margin-bottom: 30px;
}

.bellchan-circle02 {
    position: relative;
    aspect-ratio: 1440 / 410;
	background: #FFF4CA;
    overflow: hidden;
    margin-top: -5%;
	z-index: -1;
}

.bellchan-circle02 .bellchan-circle-content {
	position: absolute;
	padding: 5%;
	bottom: 0;
}

@media(max-width: 991px) {
	.bellchan-faq {
		margin-bottom: 50px;
	}
}

@media(max-width: 767px) {
	.bellchan-faq {
		padding-top: 20px;
	}
	.bellchan-faq h2 {
		--fs: 30;
		margin-bottom: 30px;
	}
	.bellcha-faq-button {
		--fs: 16;
		line-height: 1.5;
		padding: 20px 0;
		padding-right: 30px;
	}
	.bellcha-faq-button::after {
		width: 11px;
		height: 11px;
		right: 10px;
	}
	.bellcha-faq-body {
		--fs: 14;
		padding-right: 30px;
		padding-left: 0;
		margin-bottom: 20px;
	}
}

/*		ベルちゃんのお知らせ		*/

.bellchan_news,
.bellchan-404 {
	padding-top: 180px;
	padding-bottom: 100px;
}

.bellchan-news-title {
	display: grid;
	gap: 10px;
}

.bellchan_news .bellchan-section-title {
	grid-template-columns: auto 1fr;
	justify-content: flex-start;
}

.bellchan-news-title-en {
	order: -1;
}

.bellchan_news .pagination {
	justify-content: center;
	margin-top: 50px;
}

.bellchan_news .nav-links {
	display: flex;
	justify-content: center;
	gap: 10px;
}

.bellchan_news .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	width: 36px;
	height: 36px;
	border: 2px solid #000;
	border-radius: 50%;
}

.bellchan_news .page-numbers.current {
	background: #fff200;
}

.single-bellchan {
	--container: 950px;
}

.bellchan-single-info {
	display: grid;
	grid-template-columns: auto auto;
	justify-content: flex-start;
	gap: 15px;
	margin-bottom: 15px;
}

.bellchan-single-title {
	--fs: 28;
	font-size: var(--font-size);
	border-bottom: 2px solid var(--bellchan-theme-1);
	padding-bottom: 15px;
	margin-bottom: 30px;
}

.bellchan-single-content {
	margin-bottom: 80px;
}

@media(max-width: 767px) {
	.bellchan_news,
	.bellchan-404 {
		padding-top: 150px;
		padding-bottom: 50px;
	}
	.bellchan-news-title-en img {
		width: 175px;
	}
	.bellchan-single-title {
		--fs: 22;
		margin-bottom: 20px;
	}
	.bellchan-single-content {
		margin-bottom: 50px;
	}
}

.wow[class*="animate__"]:not(.animate__animated) {
	animation-name: none;
	visibility: hidden;
}