@charset "utf-8";

/*
/////breakpoint/////
max-width:1420px - PC
max-width:1280px - Tab
max-width:750px - SP
*/

/* font */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Expletus+Sans:wght@500&display=swap');
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #333;
}
.notosans {
	font-family: 'Noto Sans JP', sans-serif;
}
.expletus {
	font-family: 'Expletus Sans', sans-serif;
}

@media screen and (max-width: 1280px) {
	body {
		font-size: 1.25vw;
	}
}

@media screen and (max-width: 750px) {
	body {
		font-size: 3.1vw;
	}
}


/* test delete */
#trial-banner {
	display: none!important;
}


/* common */
html, body {
	height: auto;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;/* ios font */
}
a {
	color: #333;
	opacity: 1;
	text-decoration: none !important;
	transition: 0.3s;
}
a:not(.__item a):hover {
	opacity: 0.7;
	text-decoration: none !important;
}
img {
	max-width: 100%;
	vertical-align: middle;
}
.pc {
	display: block !important;
}
.sp {
	display: none !important;
}

@media screen and (max-width: 750px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
}


/* ---------------------------------------------------------------- */
/* header */
/* ---------------------------------------------------------------- */

/* headerTopic */
.__limited-free-1 .headerTopic {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 40px;
	padding: 8px 5px;
	background-color: #6cb9d8;
}
.__limited-free-1 .headerTopic p {
	margin: 0;
	padding: 0;
	color: #fff;
}

.__limited-free-2 .headerTopic {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 40px;
	padding: 8px 5px;
	background-color: #6cb9d8;
}
.__limited-free-2 .headerTopic p {
	margin: 0;
	padding: 0;
	color: #fff;
}

.__limited-free-3 .headerTopic {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 40px;
	padding: 8px 5px;
	background-color: #6cb9d8;
}
.__limited-free-3 .headerTopic p {
	margin: 0;
	padding: 0;
	color: #fff;
}


/* headerNews */
.p-news-notifier > ul li.__item {
	background-color: #6cb9d8 !important;
}
.p-news-notifier > ul li.__item .__inner {
	max-width: 100%;
}
.p-news-notifier > ul li.__item .__inner p.__content {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0 10px;
	padding: 8px 40px 9px 16px;
}

.p-news-notifier > ul li.__item .__inner p.__content .__label {
	padding: 2px 8px;
	color: #333;
	background-color: #fff;
}

.p-news-notifier > ul li.__item .__inner p.__content a {
	font-size: 14px;
	color: #fff;
}
.p-news-notifier > ul li.__item .__inner span.__close {
	display: block;
	position: absolute;
	top: calc(50% - 12px);
	right: 6px;
	margin: 0;
	cursor: pointer;
}
.p-news-notifier > ul li.__item .__inner span.__close:before {
	display: block;
	content: "" !important;
	width: 24px;
	height: 24px;
	margin: 0;
	background-color: #fff;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_close.svg);
	background-repeat: no-repeat;
	background-size: 16px auto;
	background-position: center center;
	border-radius: 5px;
}


/* header navi */
/* -------------------- */
.header ul, .header li, .header p, .header span {
	margin: 0;
	padding: 0;
}
.header {
	z-index: 2;
	position: relative;
}
.headerPC {
	width: 100%;
	background-color: #fff;
}
.headerPCInner {
	z-index: 100;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 30px;
}
.headerPCInner.posFixed {
	position: fixed;
}
.headerPCInner .headerPCWrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 20px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.1);
}
.headerPCInner .headerPCWrapper.open,
.headerPCInner .headerPCWrapper.openSearch {
	border-radius: 10px 10px 0 0;
}

.headerPCInner .headerPCWrapper h1 {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
	margin: 0;
}
.headerPCInner .headerPCWrapper h1 a {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
}
.headerPCInner .headerPCWrapper h1 a > img {
	height: 48px;
}
.headerPCInner .headerPCWrapper h1 a > span {
	display: block;
	padding: 0 20px;
}
.headerPCInner .headerPCWrapper h1 a > span img {
	height: 28px;
}
.headerPCInner .headerPCWrapper h1 a > span > span {
	display: block;
	text-align: center;
	border-top: 1px solid #ccc;
}

.headerNavi {
	flex: 1;
	display: flex;
	justify-content: end;
	align-items: center;
}
.headerNavi ul li {
	list-style: none;
}
.headerNavi ul li a:link,
.headerNavi ul li a:visited,
.headerNavi ul li a:hover {
	text-decoration: none;
	user-select: none;
}

ul.headerButton02 {
	display: flex;
	justify-content: flex-end;
	gap: 0 20px;
	margin: 0;
	padding: 0 30px;
}
ul.headerButton02 a {
	position: relative;
	font-size: 16px;
	font-weight: 500;
}
ul.headerButton02 li.products a:after {
	display: inline-block;
	content: "";
	position: absolute;
	left: 0;
	bottom: -39px;
	width: 100%;
	height: 40px;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_arrow_down.svg);
	background-repeat: no-repeat;
	background-size: 16px;
	background-position: top 2px center;
}

ul.headerButton03 {
	display: flex;
	justify-content: flex-end;
	gap: 0 10px;
	margin: 0;
	padding: 0;
}
ul.headerButton03 a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 48px;
	padding: 0 12px;
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	background-color: #97A8B3;
	border-radius: 10px;
}
ul.headerButton03 li.search a,
ul.headerButton03 li.naviBtn a {
	background-color: #ECF0F2;
}
ul.headerButton03 img {
	width: 24px;
	height: 24px;
	vertical-align: bottom;
}
ul.headerButton03 .account {
	position: relative;
}
ul.headerButton03 .naviBtn {
	display: none;
}
ul.headerButton03 .search .naviIcon img:nth-of-type(1) {
	display: inline;
}
.headerPCInner .headerPCWrapper.openSearch ul.headerButton03 .search .naviIcon img:nth-of-type(1) {
	display: none;
}
ul.headerButton03 .search .naviIcon img:nth-of-type(2) {
	display: none;
}
.headerPCInner .headerPCWrapper.openSearch ul.headerButton03 .search .naviIcon img:nth-of-type(2) {
	display: inline;
}

.headerSPNavi {
	position: static;
}
.headerPopupNavi {
	display: flex;
	align-items: flex-start;
	gap: 0 40px;
	position: absolute;
	top: 90px;
	left: 0;
	width: 100%;
	padding: 30px;
	background-color: #ECF0F2;
	box-shadow: 0 10px 15px 0 rgba(0, 0, 0, 0.1);
	border-radius: 0 0 10px 10px;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease-in-out, visibility 0s linear 0.2s;
}
.headerPCInner .headerPCWrapper.open .headerPopupNavi {
	pointer-events: auto;
	opacity: 1;
	visibility: visible;
	transition: opacity 0.2s ease-in-out, visibility 0s linear 0s;
}
.headerPopupNavi a {
	font-size: 16px;
}
.headerPopupNavi .navi01 {
	flex: 0 0 160px;
	border-right: 1px solid #ccc;
}
.headerPopupNavi .navi01 ul {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 10px 0;
}
.headerPopupNavi .navi01 p {
	display: none;
}
.headerPopupNavi .navi02 {
	flex: 1;
}
.headerPopupNavi .navi02 > ul {
	display: none;
	flex-wrap: wrap;
	align-items: top;
	gap: 10px 30px;
}
.headerPopupNavi .navi02.open1 > ul:nth-of-type(1) {
	display: flex;
}
.headerPopupNavi .navi02.open2 > ul:nth-of-type(2) {
	display: flex;
}
.headerPopupNavi .navi02.open3 > ul:nth-of-type(3) {
	display: flex;
}
.headerPopupNavi .navi02.open4 > ul:nth-of-type(4) {
	display: flex;
}
.headerPopupNavi .navi02.open5 > ul:nth-of-type(5) {
	display: flex;
}
.headerPopupNavi .navi02.open6 > ul:nth-of-type(6) {
	display: flex;
}
.headerPopupNavi .navi02 > ul > li > a {
	font-size: 21px;
	font-weight: 400;
	color: #999;
}
.headerPopupNavi .navi02 > ul > li > ul {
	display: flex;
	flex-wrap: wrap;
	align-items: top;
	gap: 10px 30px;
	padding-top: 15px;
}

.accountSuvNavi {
	position: absolute;
	top: 48px;
	left: 0;
	width: 100%;
	padding: 20px 0 0;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease-in-out, visibility 0s linear 0.2s;
}
.accountSuvNavi.open {
	pointer-events: auto;
	opacity: 1;
	visibility: visible;
	transition: opacity 0.2s ease-in-out, visibility 0s linear 0s;
}
.accountSuvNavi ul {
	display: block;
	padding: 0;
	background-color: #ECF0F2;
	box-shadow: 0 10px 15px 0 rgba(0, 0, 0, 0.1);
	border-radius: 0 0 10px 10px;
}
.accountSuvNavi ul li {
	border-bottom: 1px solid #ccc;
}
.accountSuvNavi ul li a {
	font-size: 16px;
	font-weight: 400;
	color: #333;
	background-color: transparent;
}
body.__is-guest .accountSuvNavi ul.__is-member,
body.__is-member .accountSuvNavi ul.__is-guest {
	display: none;
}

.headerSearch {
	position: absolute;
	top: 90px;
	left: 0;
	width: 100%;
	padding: 20px;
	background-color: #ECF0F2;
	box-shadow: 0 10px 15px 0 rgba(0, 0, 0, 0.1);
	border-radius: 0 0 10px 10px;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease-in-out, visibility 0s linear 0.2s;
}
.headerSearch.open {
	pointer-events: auto;
	opacity: 1;
	visibility: visible;
	transition: opacity 0.2s ease-in-out, visibility 0s linear 0s;
}
.headerSearch form {
	display: flex;
	flex-wrap: nowrap;
	gap: 0 10px;
	width: 100%;
	padding: 0;
}
.headerSearch input[type="text"] {
	width: 100%;
	height: 48px;
	padding: 0 20px;
	font-size: 16px;
	color: #333;
	background-color: #fff;
	border: none;
	outline: none;
	box-shadow: none;
	border-radius: 10px;
	appearance: none;
}
.headerSearch input[type="text"]::placeholder {
	font-size: 14px;
	color: #999;
}
.headerSearch button {
	width: 48px;
	height: 48px;
	padding: 0;
	background-color: #97A8B3;
	border: none;
	outline: none;
	appearance: none;
	border-radius: 10px;
	opacity: 1;
	transition: opacity 0.3s;
}
.headerSearch .c-button:hover,
.headerSearch .c-button-submit:hover,
.headerSearch .c-button:focus,
.headerSearch .c-button-submit:focus {
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/search.svg);
	opacity: 0.7;
}
.headerSearch .c-button:active {
	box-shadow: none;
	border: none;
}
.headerSearch button span {
	color: #fff;
}

body:not(.body-home) .headerMV {
	display: none;
}

@media screen and (max-width: 1280px) {
	.headerPCInner {
		padding: 2.3vw;
	}
	.headerPCInner .headerPCWrapper {
		padding: 1.6vw;
		border-radius: 0.8vw;
		box-shadow: 0 1px 1.2vw 0 rgba(0, 0, 0, 0.1);
	}
	.headerPCInner .headerPCWrapper.open,
	.headerPCInner .headerPCWrapper.openSearch {
		border-radius: 0.8vw 0.8vw 0 0;
	}

	.headerPCInner .headerPCWrapper h1 {
		font-size: 1.2vw;
	}
	.headerPCInner .headerPCWrapper h1 a > img {
		height: 3.7vw;
	}
	.headerPCInner .headerPCWrapper h1 a > span {
		padding: 0 1.6vw;
	}
	.headerPCInner .headerPCWrapper h1 a > span img {
		height: 2.2vw;
	}

	ul.headerButton02 {
		gap: 0 1.6vw;
		padding: 0 2.2vw;
	}
	ul.headerButton02 a {
		font-size: 1.25vw;
	}
	ul.headerButton02 li.products a:after {
		bottom: -3.046vw;
		height: 3.13vw;
		background-size: 1.25vw;
		background-position: top 0.156vw center;
	}

	ul.headerButton03 {
		gap: 0 0.8vw;
	}
	ul.headerButton03 a {
		height: 3.75vw;
		padding: 0 0.9vw;
		font-size: 1.25vw;
		border-radius: 0.8vw;
	}
	ul.headerButton03 img {
		width: 1.8vw;
		height: 1.8vw;
	}

	.headerPopupNavi {
		gap: 0 3.13vw;
		top: 7vw;
		padding: 3.2vw;
		box-shadow: 0 0.8vw 1.2vw 0 rgba(0, 0, 0, 0.1);
		border-radius: 0 0 0.8vw 0.8vw;
	}
	.headerPopupNavi a {
		font-size: 1.25vw;
	}
	.headerPopupNavi .navi01 {
		flex: 0 0 12.5vw;
	}
	.headerPopupNavi .navi01 ul {
		gap: 0.8vw 0;
	}
	.headerPopupNavi .navi02 > ul {
		gap: 0.8vw 2.35vw;
	}
	.headerPopupNavi .navi02 > ul > li > a {
		font-size: 1.6vw;
	}
	.headerPopupNavi .navi02 > ul > li > ul {
		gap: 0.8vw 2.35vw;
		padding-top: 1.2vw;
	}

	.accountSuvNavi {
		top: 3.75vw;
		padding: 1.6vw 0 0;
	}
	.accountSuvNavi ul {
		box-shadow: 0 0.8vw 1.2vw 0 rgba(0, 0, 0, 0.1);
		border-radius: 0 0 0.8vw 0.8vw;
	}
	.accountSuvNavi ul li a {
		font-size: 1.25vw;
	}

	.headerSearch {
		top: 7vw;
		padding: 1.6vw;
		box-shadow: 0 0.8vw 1.2vw 0 rgba(0, 0, 0, 0.1);
		border-radius: 0 0 0.8vw 0.8vw;
	}
	.headerSearch form {
		gap: 0 0.8vw;
	}
	.headerSearch input[type="text"] {
		height: 3.75vw;
		padding: 0 1.6vw;
		font-size: 1.25vw;
		border-radius: 0.8vw;
	}
	.headerSearch input[type="text"]::placeholder {
		font-size: 1.1vw;
	}
	.headerSearch button {
		width: 3.75vw;
		height: 3.75vw;
		font-size: 1.25vw;
		border-radius: 0.8vw;
	}
}

@media screen and (max-width: 750px) {
	.headerPCInner {
		padding: 0;
	}
	.headerPCInner .headerPCWrapper {
		padding: 2.6vw;
		border-radius: 0;
		box-shadow: 0 1vw 2.6vw 0 rgba(0, 0, 0, 0.2);
	}
	.headerPCInner .headerPCWrapper.open,
	.headerPCInner .headerPCWrapper.openSearch {
		border-radius: 0;
	}

	.headerPCInner .headerPCWrapper h1 {
		font-size: 2vw;
	}
	.headerPCInner .headerPCWrapper h1 a > img {
		height: 8.3vw;
	}
	.headerPCInner .headerPCWrapper h1 a > span {
		padding: 0 2vw;
	}
	.headerPCInner .headerPCWrapper h1 a > span img {
		height: 4.6vw;
		padding: 0 0 0.6vw;
	}
	.headerPCInner .headerPCWrapper h1 a > span span {
		padding: 0.6vw 0 0;
	}

	ul.headerButton02 {
		justify-content: start;
		flex-wrap: wrap;
		gap: 0;
		padding: 6vw 0;
	}
	ul.headerButton02 li {
		width: 50%;
	}
	ul.headerButton02 a {
		display: inline-block;
		padding: 3vw 0;
		font-size: 4.6vw;
		font-weight: 400;
		color: #fff;
	}
	ul.headerButton02 li.products {
		display: none;
	}

	ul.headerButton03 {
		gap: 0 1.3vw;
	}
	ul.headerButton03 a {
		height: 10.4vw;
		width: 10.4vw;
		padding: 0;
		border-radius: 1.3vw;
	}
	ul.headerButton03 img {
		width: 5.2vw;
		height: 5.2vw;
	}
	ul.headerButton03 .naviText {
		display: none;
	}
	ul.headerButton03 .account {
		position: static;
	}
	ul.headerButton03 .naviBtn {
		display: list-item;
	}
	ul.headerButton03 .naviBtn .naviIcon img:nth-of-type(1) {
		display: inline;
	}
	.headerPCInner .headerPCWrapper.open ul.headerButton03 .naviBtn .naviIcon img:nth-of-type(1) {
		display: none;
	}
	ul.headerButton03 .naviBtn .naviIcon img:nth-of-type(2) {
		display: none;
	}
	.headerPCInner .headerPCWrapper.open ul.headerButton03 .naviBtn .naviIcon img:nth-of-type(2) {
		display: inline;
	}
	
	.headerSPNavi {
		display: block;
		position: absolute;
		top: 15.7vw;
		left: 0;
		padding: 7.8vw 7.8vw 15vw;
		width: 100%;
		height: calc(100vh - 15vw);
		background-color: #0D6FB8;
		box-shadow: 0 1vw 2.6vw 0 rgba(0, 0, 0, 0.2);
		border-radius: 0;
		overflow: scroll;
		pointer-events: none;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.2s ease-in-out, visibility 0s linear 0.2s;
	}
	.headerPCInner .headerPCWrapper.open .headerSPNavi {
		pointer-events: auto;
		opacity: 1;
		visibility: visible;
		transition: opacity 0.2s ease-in-out, visibility 0s linear 0s;
	}
	.headerPopupNavi {
		display: block;
		position: static;
		top: 0;
		left: 0;
		width: 100%;
		padding: 0;
		background-color: #0D6FB8;
		box-shadow: none;
		border-radius: 0;
		opacity: 1;
		visibility: visible;
		transition: none;
	}
	.headerPopupNavi a {
		font-size: 3.4vw;
		color: #fff;
	}
	.headerPopupNavi .navi01 {
		display: block;
		border: none;
	}
	.headerPopupNavi .navi01 ul {
		display: none;
	}
	.headerPopupNavi .navi01 p {
		display: block;
		font-size: 3vw;
		color: #ECF0F2;
		padding-bottom: 3vw;
	}
	.headerPopupNavi .navi02 {
		border-top: 1px solid #67A9DA;
	}
	.headerPopupNavi .navi02 > ul,
	.headerPopupNavi .navi02.open1 > ul:nth-of-type(1),
	.headerPopupNavi .navi02.open2 > ul:nth-of-type(2),
	.headerPopupNavi .navi02.open3 > ul:nth-of-type(3),
	.headerPopupNavi .navi02.open4 > ul:nth-of-type(4),
	.headerPopupNavi .navi02.open5 > ul:nth-of-type(5),
	.headerPopupNavi .navi02.open6 > ul:nth-of-type(6) {
		display: block;
	}
	.headerPopupNavi .navi02 > ul > li {
		max-height: 16.8vw;
		padding: 2.4vw 0;
		background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_plus.svg);
		background-repeat: no-repeat;
		background-size: 5.2vw;
		background-position: top 5.8vw right 3vw;
		border-bottom: 1px solid #67A9DA;
		overflow: hidden;
		transition: max-height 0.5s ease-in-out;
	}
	.headerPopupNavi .navi02 > ul > li.open {
		max-height: 2000px;
		background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_minus.svg);
	}
	.headerPopupNavi .navi02 > ul > li > a {
		display: block;
		padding: 2.4vw 0;
		font-size: 4.6vw;
		color: #fff;
		opacity: 1;
	}
	.headerPopupNavi .navi02 > ul > li > ul {
		display: block;
		margin: 2.6vw 2.4vw;
		padding: 2.4vw 2.6vw;
		background-color: #0A4F82;
	}
	.headerPopupNavi .navi02 > ul > li > ul > li a {
		display: block;
		padding: 2.4vw 0;
	}

	.accountSuvNavi {
		top: 15.7vw;
		padding: 7.8vw;
		background-color: #0D6FB8;
		box-shadow: 0 1vw 2.6vw 0 rgba(0, 0, 0, 0.2);
		border-radius: 0;
	}
	.accountSuvNavi ul {
		background-color: #0D6FB8;
		box-shadow: none;
		border-radius: 0;
		border-top: 1px solid #67A9DA;
	}
	.accountSuvNavi ul li {
		border-bottom: 1px solid #67A9DA;
	}
	.accountSuvNavi ul li a {
		display: block;
		width: 100%;
		height: auto;
		padding: 4.8vw 0;
		font-size: 4.6vw;
		color: #fff;
	}
	ul.headerButton03 .accountSuvNavi .naviText {
		display: inline;
	}

	.headerSearch {
		top: 15.7vw;
		padding: 7.8vw;
		background-color: #0D6FB8;
		box-shadow: 0 1vw 2.6vw 0 rgba(0, 0, 0, 0.2);
		border-radius: 0;
	}
	.headerSearch form {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		gap: 3.9vw;
	}
	.headerSearch input[type="text"] {
		height: 13vw;
		padding: 0 3.4vw;
		font-size: 3.4vw;
		border-radius: 2.6vw;
	}
	.headerSearch input[type="text"]::placeholder {
		font-size: 3.4vw;
	}
	.headerSearch button {
		width: 22vw;
		height: 13vw;
		font-size: 3.4vw;
		background-color: #0D6FB8;
		border: 1px solid #fff;
		border-radius: 2.6vw;
	}
	
	.headerMV {
		padding-top: 15.7vw;
	}
}


/* gnav-sp */
.gnav-sp {
	display: none !important;
}


/* default header */
.header .__banner .__wrap a.__logo {
	display: none;
}
section.__banner, nav.gnav-pc {
	display: none !important;
}




/* ---------------------------------------------------------------- */
/* wrapper */
/* ---------------------------------------------------------------- */
.wrapper {
	position: relative;
	height: 100%;
	padding: 60px 0 50px;
}
body.body-home .wrapper {
	padding: 0;
}
body:not(.body-home) .wrapper {
	padding: 0;
}
body:not(.body-home) .wrapper:before {
	content: "";
	display: block;
	height: 150px;
	margin-bottom: 30px;
	background: linear-gradient(to right, #0D6FB8, #7764CF, #D6000F);
}
.wrapper .__inner {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-direction: row-reverse;
	gap: 0 30px;
	width: 100%;
	max-width: 1360px;
	height: 100%;
	margin: 0 auto;
	padding: 0;
	background-color: #fff !important;
}
.wrapper--home .__inner {
	flex-direction: column;
	gap: 0;
	width: 100%;
	max-width: 100%;
}
.wrapper.wrapper--column-1 .__inner {
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-direction: row;
	background-color: #fff !important;
}
.wrapper .__inner:before,
.wrapper .__inner:after {
	display: none;
}

@media screen and (max-width: 1420px) {
	.wrapper .__inner {
		width: calc(100% - 60px);
		max-width: calc(100% - 60px);
	}
	.wrapper--home .__inner {
		width: 100%;
		max-width: 100%;
	}
}
@media screen and (max-width: 1280px) {
	body:not(.body-home) .wrapper:before {
		height: 11.7vw;
		margin-bottom: 2.3vw;
	}
	.wrapper .__inner {
		gap: 0 2.2vw;
	}
	.wrapper--home .__inner {
		gap: 0;
	}
}
@media screen and (max-width: 750px) {
	.wrapper {
		padding: 10vw 0;
	}
	body:not(.body-home) .wrapper:before {
		height: 16.1vw;
		margin-bottom: 7.8vw;
	}
	.wrapper .__inner {
		flex-direction: column;
		gap: 0;
		width: 100%;
		max-width: 100%;
	}
	.wrapper.wrapper--column-1 .__inner {
		flex-direction: column;
		gap: 0;
		width: 100%;
		max-width: 100%;
	}
}




/* ---------------------------------------------------------------- */
/* main */
/* ---------------------------------------------------------------- */

.wrapper.wrapper--column-2 .__inner .main {
	flex-grow: 1;
	float: none !important;
	position: static;
	width: width: calc(100% - 248px);
	height: auto;
	padding: 0 0 2em;
	background-color: #fff;
}
.wrapper.wrapper--column-2 .__inner .main.main--home {
	width: 100% !important;
	padding: 0;
}
.main section.__breadcrumb {
	padding: 0;
}
.main section.__article {
	padding: 0;
}

@media screen and (max-width: 1280px) {
	.wrapper.wrapper--column-2 .__inner .main {
		width: calc(100% - 19.4vw);
	}
	.wrapper.wrapper--column-2 .__inner .main.main--home {
		width: 100% !important;
	}
}

@media screen and (max-width: 750px) {
	.wrapper.wrapper--column-2 .__inner .main.main--news-detail {
		padding: 0;
	}
	.wrapper.wrapper--column-2 .__inner .main {
		width: 100% !important;
		padding-left: 3.9vw;
		padding-right: 3.9vw;
	}
	.wrapper.wrapper--column-2 .__inner .main.main--home {
		padding: 0;
	}
}


/* alert */
.__alert-top {
	position: static;
	width: 100%;
	margin: 0 !important;
}
.c-alert {
	text-align: center;
	color: #fff;
	background-color: #93C0D4 !important;
	border-radius: 0;
}

@media screen and (max-width: 750px) {
	.__alert-top {
		margin: 0 !important;
	}
}


/* block */
.main section.__block {
	position: relative;
	width: 100%;
	margin-bottom: 0 !important;
}
.main.main--home section.__block {
	width: 100%;
	padding-left: calc((100% - 1360px) / 2);
	padding-right: calc((100% - 1360px) / 2);
}
.main.main--home section.__block--free-1 {
	padding: 60px 0;
}
.main.main--home section.__block--free-2 {
	padding-top: 60px;
	padding-bottom: 30px;
	background-color: #ECF0F2;
}
.main.main--home section.__block--free-3 {
	padding-top: 60px;
	padding-bottom: 60px;
}

@media screen and (max-width: 1420px) {
	.main.main--home section.__block,
	.main.main--home section.__block.__block--free-1,
	.main.main--home section.__block.__block--free-2,
	.main.main--home section.__block.__block--free-3{
		padding-left: 30px;
		padding-right: 30px;
	}
}

@media screen and (max-width: 1280px) {
	.main.main--home section.__block.__block--free-1 {
		padding: 4.7vw 0;
	}
	.main.main--home section.__block.__block--free-2 {
		padding-top: 4.7vw;
		padding-bottom: 2.35vw;
		background-color: #ECF0F2;
	}
	.main.main--home section.__block.__block--free-3 {
		padding-top: 4.7vw;
		padding-bottom: 4.7vw;
	}
}

@media screen and (max-width: 750px) {
	.main.main--home section.__block,
	.main.main--home section.__block.__block--free-1,
	.main.main--home section.__block.__block--free-2,
	.main.main--home section.__block.__block--free-3 {
		padding-left: 3.9vw;
		padding-right: 3.9vw;
	}
}


/* breadcrumb */
.__breadcrumb {
	line-height: 1;
}
.__breadcrumb:after {
	display: inline-block;
	content: "";
	width: 100%;
	height: 2px;
	border-top: 1px solid #97A8B3;
}


/* heading */
.main section.__block h2.__heading,
.main section.parts h2.__heading,
.main section.__block h3.__heading {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 20px 0 20px 63px;
	font-family: 'Expletus Sans', serif;
	font-size: 42px;
	font-weight: 500;
	color: #666;
	background-color: transparent;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_ha.svg);
	background-repeat: no-repeat;
	background-size: auto 52px;
	background-position: top 21px left;
	border: none;
	border-top: 1px solid #97A8B3;
}
.main section.__block h2.__heading .miniText,
.main section.parts h2.__heading .miniText,
.main section.__block h3.__heading .miniText {
	position: relative;
	display: inline-block;
	padding: 16px 0 0 24px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	font-weight: 700;
	vertical-align: text-top;
	color: #0D6FB8;
}

@media screen and (max-width: 1280px) {
	.main section.__block h2.__heading,
	.main section.parts h2.__heading,
	.main section.__block h3.__heading {
		padding: 1.6vw 0 1.6vw 4.9vw;
		font-size: 3.3vw;
		background-size: auto 4vw;
		background-position: top 1.65vw left;
	}
	.main section.__block h2.__heading .miniText,
	.main section.parts h2.__heading .miniText,
	.main section.__block h3.__heading .miniText {
		padding: 1.6vw 0 0 1.87vw;
		font-size: 1.25vw;
	}
}

@media screen and (max-width: 750px) {
	.main section.__block h2.__heading,
	.main section.parts h2.__heading,
	.main section.__block h3.__heading {
		padding: 6.2vw 0 6.2vw 8vw;
		font-size: 5.5vw;
		background-size: auto 6.8vw;
		background-position: top 6.6vw left;
	}
	.main section.__block h2.__heading .miniText,
	.main section.parts h2.__heading .miniText,
	.main section.__block h3.__heading .miniText {
		padding: 1.6vw 0 0 2.4vw;
		font-size: 3.1vw;
	}
}


/* more button */
.c-more {
	margin: 0;
	padding: 0;
	text-align: center;
}
.c-more a {
	display: inline-block;
	position: relative;
	margin-top: 22px;
	padding: 19px 60px 21px 20px;
	font-size: 15px;
	font-weight: 500;
	text-align: left;
	line-height: 1;
	color: #333;
	background-color: #ECF0F2;
	border-radius: 10px;
	transition: 0.3s;
}
.c-more a:before {
	display: none;
}
.c-more a:after {
	display: inline-block;
	content: "";
	position: absolute;
	top: calc(50% - 15px);
	right: 0;
	width: 40px;
	height: 30px;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_button_arrow.svg);
	background-repeat: no-repeat;
	background-size: 16px auto;
	background-position: center left;
	transition: 0.3s;
}
.c-more a:hover:after {
	background-position: center left 10px;
}

@media screen and (max-width: 1280px) {
	.c-more a {
		margin-top: 2vw;
		padding: 1.5vw 4.7vw 1.65vw 1.6vw;
		font-size: 1.2vw;
		border-radius: 0.8vw;
	}
	.c-more a:after {
		top: calc(50% - 1.17vw);
		width: 3.13vw;
		height: 2.35vw;
		background-size: 1.25vw auto;
	}
	.c-more a:hover:after {
		background-position: center left 0.8vw;
	}
}

@media screen and (max-width: 750px) {
	.c-more a {
		margin-top: 5.2vw;
		padding: 3.2vw 9vw 3.4vw 2.2vw;
		font-size: 3.1vw;
		border-radius: 2.6vw;
	}
	.c-more a:after {
		top: calc(50% - 1.17vw);
		width: 6.2vw;
		height: 2.2vw;
		background-size: 3.1vw auto;
		background-position: center left 0;
	}
	.c-more a:hover:after {
		background-size: 3.1vw auto;
		background-position: center left 0;
	}
}


/* item text */
.p-product-block ul.__product li.__item a .__status ul li.__label {
	font-size: 12px;
	font-weight: 400 !important;
}
.p-product-block ul.__product li.__item a .__title {
	margin: 0;
	padding: 2px 0;
	font-size: 16px;
	font-weight: 400;
}
.p-product-block ul.__product li.__item a:hover .__title {
	text-decoration: none;
}
.p-product-block ul.__product li.__item a .__description {
	margin: 0;
	padding: 2px 0;
	font-size: 13px;
	text-align: left;
}
.p-product-block ul.__product li.__item a .__description dl.__price {
	margin: 0;
	padding: 0;
	font-size: 13px;
	text-align: left;
}

@media screen and (max-width: 1280px) {
	.p-product-block ul.__product li.__item a .__status ul li.__label {
		font-size: 0.9vw;
	}
	.p-product-block ul.__product li.__item a .__title {
		padding: 0.16vw 0;
		font-size: 1.25vw;
	}
	.p-product-block ul.__product li.__item a .__description {
		padding: 0.16vw 0;
		font-size: 1vw;
	}
	.p-product-block ul.__product li.__item a .__description dl.__price {
		font-size: 1vw;
	}
}

@media screen and (max-width: 750px) {
	.p-product-block ul.__product li.__item a .__status ul li.__label {
		font-size: 2.4vw;
	}
	.p-product-block ul.__product li.__item a .__title {
		padding: 2vw 0;
		font-size: 2.7vw;
	}
	.p-product-block ul.__product li.__item a .__description {
		padding: 2vw 0;
		font-size: 2.3vw;
	}
	.p-product-block ul.__product li.__item a .__description dl.__price {
		font-size: 2.3vw;
	}
}


/* body */
.main.main--home section.__block .__body {
	width: 100%;
}


/* shipping banner */
.main .shippingBanner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 16px;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 13px 20px;
	border: 3px solid #93C0D4;
	border-radius: 20px;
}
.main .shippingBanner p.text01 {
	font-size: 18px;
	font-weight: 500;
}
.main .shippingBanner p.text01 span {
	font-weight: 700;
}
.main .shippingBanner p.text01 span span {
	font-size: 26px;
}
.main .shippingBanner p.text02 {
	margin: 0;
	padding: 10px 24px 12px;
	font-size:26px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background-color: #0D6FB8;
	border-radius: 100px;
}
.main .shippingBanner p.text03 {
	font-size:14px;
	color: #666;
}

@media screen and (max-width: 1280px) {
	.main .shippingBanner {
		gap: 1.25vw;
		max-width: 75vw;
		padding: 1vw 1.6vw;
		border: 0.2vw solid #93C0D4;
		border-radius: 1.6vw;
	}
	.main .shippingBanner p.text01 {
		font-size: 1.4vw;
	}
	.main .shippingBanner p.text01 span span {
		font-size: 2vw;
	}
	.main .shippingBanner p.text02 {
		padding: 0.8vw 1.87vw 0.9vw;
		font-size:2vw;
		border-radius: 7.8vw;
	}
	.main .shippingBanner p.text03 {
		font-size:1.1vw;
	}
}

@media screen and (max-width: 750px) {
	.main .main.main--home section.__block.__block--free-1{
		padding-bottom: 10.4vw;
	}
	.main .shippingBanner {
		flex-direction: column;
		gap: 1.5vw 0;
		width: 92.2vw;
		margin: 0 auto 0 !important;
		border: 0.65vw solid #93C0D4;
		border-radius: 2.6vw;
	}
	.main .shippingBanner p.text01 {
		margin: 0;
		font-size: 3.1vw;
	}
	.main .shippingBanner p.text01 span span {
		font-size: 5.5vw;
	}
	.main .shippingBanner p.text02 {
		padding: 3.6vw 9.1vw 3.8vw;
		font-size: 6.25vw;
		border-radius: 7.8vw;
	}
	.main .shippingBanner p.text03 {
		margin: 1.2vw 0;
		font-size:2.3vw;
	}
	.main .shippingBanner p.text03 br {
		display: none;
	}
	.main .shippingBanner p.text03 span {
		padding-left: 1em;
	}
}


/* Recommend */
.main.main--home section.__block.__block--pro-recommend {
	width: 100%;
	padding-top: 0;
	padding-bottom: 30px;
}
.main.main--home section.__block.__block--pro-recommend h2.__heading,
.main.main--home section.__block.__block--pro-recommend .__body {
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
}
.main.main--home section.__block.__block--pro-recommend .__body {
	position: relative;
	padding: 30px 0;
}
.main.main--home section.__block.__block--pro-recommend .__body ul {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 30px;
	margin: 0;
	padding: 0;
}
.main.main--home section.__block.__block--pro-recommend .__body ul li {
	width: calc(25% - 23px);
	margin: 0;
	padding: 0;
	border-radius: 10px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease-in-out;
}
.main.main--home section.__block.__block--pro-recommend .__body ul li:hover {
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
}
.main.main--home section.__block.__block--pro-recommend .__body ul li a {
	height: 100%;
	margin: 0;
	padding: 0 0 24px;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__photo {
	position: relative;
	width: 100%;
	height: auto;
	opacity: 1;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__photo:before {
	content: "";
	display: block;
	padding-top: 100%;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__is-noimage:before {
	display: none;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__photo img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-height: 100%;
	margin: auto;
	object-fit: cover;
	border-radius: 10px 10px 0 0;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__photo .__noimage .__wrap {
	border-radius: 10px 10px 0 0;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__status {
	padding: 6px 20px 0;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__title {
	padding: 10px 20px 0;
}
.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__description {
	padding: 10px 20px 0;
	text-align: left;
}

.main.main--home section.__block.__block--pro-recommend .c-more {
	display: none;
}
.main.main--home section.__block.__block--pro-recommend .c-more.heading-more {
	display: block;
	position: absolute;
	top: 0;
	right: calc((100% - 1360px) / 2);
}

@media screen and (max-width: 1420px) {
	.main.main--home section.__block.__block--pro-recommend .c-more.heading-more {
		right: 30px;
	}
}

@media screen and (max-width: 1280px) {
	.main.main--home section.__block.__block--pro-recommend {
		padding-bottom: 2.35vw;
	}
	.main.main--home section.__block.__block--pro-recommend .__body {
		padding: 2.35vw 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul {
		gap: 2.35vw;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul li {
		width: calc(25% - 1.8vw);
		border-radius: 0.8vw;
		box-shadow: 0 0 1.6vw 0 rgba(0, 0, 0, 0.1);
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul li:hover {
		box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.2);
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul li a {
		padding: 0 0 1.87vw;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__photo img {
		border-radius: 0.8vw 0.8vw 0 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__status {
		padding: 0.4vw 1.6vw 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__title {
		padding: 0.8vw 1.6vw 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__description {
		padding: 0.8vw 1.6vw 0;
	}
}

@media screen and (max-width: 750px) {
	.main.main--home section.__block.__block--pro-recommend {
		padding-bottom: 10.4vw;
	}
	.main.main--home section.__block.__block--pro-recommend .__body {
		padding: 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul {
		gap: 3.9vw;
		overflow: visible;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul li {
		width: calc(50% - 2vw);
		border-radius: 2.6vw;
		box-shadow: 0 0.4vw 2vw 0 rgba(0, 0, 0, 0.15);
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul li:hover {
		box-shadow: 0 0.4vw 2vw 0 rgba(0, 0, 0, 0.15);
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul li a {
		padding: 0 0 3.5vw;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__photo img {
		border-radius: 2.6vw 2.6vw 0 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__status {
		padding: 0 2.6vw 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__title {
		padding: 1.5vw 2.6vw 0;
	}
	.main.main--home section.__block.__block--pro-recommend .__body ul.__product li.__item a .__description {
		padding: 1.5vw 2.6vw 0;
	}
	.main.main--home section.__block.__block--pro-recommend .c-more.heading-more {
		right: 3.9vw;
	}
}


/* Products */
.main.main--home section.__block.__block--free-2 {
	width: 100%;
	padding-top: 60px;
	padding-bottom: 30px;
}
.main.main--home section.__block.__block--free .products h2.__heading,
.main.main--home section.__block.__block--free .products .__body {
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
}
.main.main--home section.__block.__block--free .products .__body {
	position: relative;
	padding: 30px 0;
}
.main.main--home section.__block.__block--free .products .__body ul {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 30px;
	margin: 0;
	padding: 0;
}
.main.main--home section.__block.__block--free .products .__body ul li {
	width: calc(20% - 24px);
	margin: 0;
	padding: 0;
	border-radius: 10px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease-in-out;
}
.main.main--home section.__block.__block--free .products .__body ul li:hover {
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);
}
.main.main--home section.__block.__block--free .products .__body ul li a {
	height: 100%;
	margin: 0;
	padding: 0;
}
.main.main--home section.__block.__block--free .products .__body ul.__product li.__item a .__photo {
	margin: 0;
	padding: 0;
	opacity: 1;
}
.main.main--home section.__block.__block--free .products .__body ul.__product li.__item a .__photo:before {
	content: "";
	display: block;
	padding-top: 100%;
}
.main.main--home section.__block.__block--free .products .__body ul.__product li.__item a .__photo img {
	width: 100%;
	height: 100%;
	border-radius: 10px;
}

@media screen and (max-width: 1280px) {
	.main.main--home section.__block.__block--free-2 {
		padding-top: 4.7vw;
		padding-bottom: 2.35vw;
	}
	.main.main--home section.__block.__block--free .products .__body {
		padding: 2.35vw 0;
	}
	.main.main--home section.__block.__block--free .products .__body ul {
		gap: 2.35vw;
	}
	.main.main--home section.__block.__block--free .products .__body ul li {
		width: calc(20% - 1.9vw);
		border-radius: 0.8vw;
		box-shadow: 0 0 1.6vw 0 rgba(0, 0, 0, 0.2);
	}
	.main.main--home section.__block.__block--free .products .__body ul li:hover {
		box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.3);
	}
	.main.main--home section.__block.__block--free .products .__body ul.__product li.__item a .__photo img {
		border-radius: 0.8vw;
	}
}

@media screen and (max-width: 750px) {
	.main.main--home section.__block.__block--free-2 {
		padding-top: 10.4vw;
		padding-bottom: 10.4vw;
	}
	.main.main--home section.__block.__block--free .products .__body {
		padding: 0;
	}
	.main.main--home section.__block.__block--free .products .__body ul {
		gap: 3.9vw;
		overflow: visible;
	}
	.main.main--home section.__block.__block--free .products .__body ul li {
		width: calc(50% - 2vw);
		border-radius: 2.6vw;
		box-shadow: 0 0.4vw 2vw 0 rgba(0, 0, 0, 0.15);
	}
	.main.main--home section.__block.__block--free .products .__body ul li:hover {
		box-shadow: 0 0.4vw 2vw 0 rgba(0, 0, 0, 0.15);
	}
	.main.main--home section.__block.__block--free .products .__body ul.__product li.__item a .__photo img {
		border-radius: 2.6vw;
	}
}


/* Category */
.main.main--home section.__block.__block--free-3 {
	width: 100%;
	padding-top: 60px;
	padding-bottom: 30px;
}
.main.main--home section.__block.__block--free .category h2.__heading,
.main.main--home section.__block.__block--free .category .__body {
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
}
.main.main--home section.__block.__block--free .category .__body {
	position: relative;
	padding: 30px 0;
}
.main.main--home section.__block.__block--free .category .__body ul {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 20px;
	margin: 0;
	padding: 0;
}
.main.main--home section.__block.__block--free .category .__body ul li {
	display: inline-block;
	width: calc(16.6% - 16px);
	margin: 0;
	padding: 0;
	border-radius: 10px;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease-in-out;
}
.main.main--home section.__block.__block--free .category .__body ul li:hover {
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
}
.main.main--home section.__block.__block--free .category .__body ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100px;
	margin: 0;
	padding: 0;
	font-size:20px;
	font-weight: 500;
	color: #0D6FB8;
	border: 3px solid #93C0D4;
	border-radius: 10px;
}
.main.main--home section.__block.__block--free .category .__body ul li a:hover {
	border: 3px solid #0D6FB8;
	opacity: 1;
}

@media screen and (max-width: 1280px) {
	.main.main--home section.__block.__block--free-3 {
		padding-top: 4.7vw;
		padding-bottom: 2.35vw;
	}
	.main.main--home section.__block.__block--free .category .__body {
		padding: 2.35vw 0;
	}
	.main.main--home section.__block.__block--free .category .__body ul {
		gap: 1.6vw;
	}
	.main.main--home section.__block.__block--free .category .__body ul li {
		width: calc(16.6% - 1.3vw);
		border-radius: 0.8vw;
		box-shadow: 0 0 0.8vw 0 rgba(0, 0, 0, 0.2);
	}
	.main.main--home section.__block.__block--free .category .__body ul li a {
		height: 8vw;
		font-size:1.6vw;
		border: 0.23vw solid #93C0D4;
		border-radius: 0.8vw;
	}
	.main.main--home section.__block.__block--free .category .__body ul li a:hover {
		border: 0.23vw solid #0D6FB8;
	}
}

@media screen and (max-width: 750px) {
	.main.main--home section.__block.__block--free-3 {
		padding-top: 10.4vw;
		padding-bottom: 10.4vw;
	}
	.main.main--home section.__block.__block--free .category .__body {
		padding: 0;
	}
	.main.main--home section.__block.__block--free .category .__body ul {
		gap: 2.6vw;
	}
	.main.main--home section.__block.__block--free .category .__body ul li {
		width: calc(33.3% - 1.75vw);
		border-radius: 2.6vw;
		box-shadow: 0 0.4vw 1.5vw 0 rgba(0, 0, 0, 0.15);
	}
	.main.main--home section.__block.__block--free .category .__body ul li:hover {
		box-shadow: 0 0.4vw 1.5vw 0 rgba(0, 0, 0, 0.15);
	}
	.main.main--home section.__block.__block--free .category .__body ul li a {
		height: 28vw;
		font-size: 3.4vw;
		border: 0.65vw solid #93C0D4;
		border-radius: 2.6vw;
	}
	.main.main--home section.__block.__block--free .category .__body ul li a:hover {
		border: 0.65vw solid #93C0D4;
	}
}


/* news */
.main.main--home section.__block.__block--news {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	padding-top: 60px;
	padding-bottom: 60px;
}
.main.main--home section.__block.__block--news .__heading {
	flex: 0.3;
	width: 100%;
}
.main.main--home section.__block.__block--news .__body {
	flex: 0.7;
	width: 100%;
}
.main.main--home section.__block.__block--news .__body ul li,
.main.main--news section.__news ul li {
	display: block;
	border-bottom: 1px solid #ccc !important;
}
.main.main--home section.__block.__block--news .__body ul li:first-child,
.main.main--news section.__news ul li:first-child {
	border-top: 1px solid #97A8B3;
}
.main.main--home section.__block.__block--news .__body ul li > a,
.main.main--home section.__block.__block--news .__body ul li > span,
.main.main--news section.__news ul li > a,
.main.main--news section.__news ul li > span {
	display: flex;
	flex-wrap: nowrap;
	gap: 0 20px;
	position: relative;
	padding: 20px 20px 20px 140px;
}
.main.main--home section.__block.__block--news .__body ul li > a span.__date,
.main.main--home section.__block.__block--news .__body ul li > span span.__date,
.main.main--news section.__news ul li > a span.__date,
.main.main--news section.__news ul li > span span.__date {
	width: 82px;
	padding: 0;
	font-size: 16px;
	vertical-align: text-top;
	line-height: 1.8;
	text-decoration: none !important;
	color: #0D6FB8 !important;
	border-bottom: none;
}
.main.main--home section.__block.__block--news .__body ul li > a span.__title,
.main.main--home section.__block.__block--news .__body ul li > span span.__title,
.main.main--news section.__news ul li > a span.__title,
.main.main--news section.__news ul li > span span.__title {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0 24px;
	width: calc(100% - 106px);
	padding: 0;
	vertical-align: text-top;
	text-decoration: none !important;
	border-bottom: none;
}
.main.main--home section.__block.__block--news .__body ul li > a span.__title span.c-news-label,
.main.main--home section.__block.__block--news .__body ul li > span span.__title span.c-news-label,
.main.main--news section.__news ul li > a span.__title span.c-news-label,
.main.main--news section.__news ul li > span span.__title span.c-news-label {
	position: absolute;
	top: 20px;
	left: 20px;
	width: 100px;
	padding: 2px 8px 3px 8px;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	border-radius: 0;
}
.c-news-label.c-news-label--color-1 {
	color: #fff !important;
	background-color: #D6000F;
	border: none;
}
.c-news-label.c-news-label--color-2 {
	color: #fff !important;
	background-color: #97A7B3;
	border: none;
}
.c-news-label.c-news-label--color-3 {
	color: #666 !important;
	background-color: #ECF0F2;
	border: none;
}
.main.main--home section.__block.__block--news .__body ul li > a span.__title span.__subject,
.main.main--home section.__block.__block--news .__body ul li > span span.__title span.__subject,
.main.main--news section.__news ul li > a span.__title span.__subject,
.main.main--news section.__news ul li > span span.__title span.__subject {
	flex: calc(100% - 100px);
	display: inline-block;
	font-size: 16px;
	line-height: 1.8;
	color: #333 !important;
}
.main.main--home section.__block.__block--news .c-more.heading-more {
	position: absolute;
	top: 150px;
	left: calc((100% - 1360px) / 2);
}
figure {
	margin: 1em 0;
}

@media screen and (max-width: 1420px) {
	.main.main--home section.__block.__block--news .c-more.heading-more {
		left: 30px;
	}
}

@media screen and (max-width: 1280px) {
	.main.main--home section.__block.__block--news {
		padding-top: 4.7vw;
		padding-bottom: 4.7vw;
	}
	.main.main--home section.__block.__block--news .__body ul li > a,
	.main.main--home section.__block.__block--news .__body ul li > span,
	.main.main--news section.__news ul li > a,
	.main.main--news section.__news ul li > span {
		gap: 0 1.6vw;
		padding: 1.6vw 1.6vw 1.6vw 11vw;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__date,
	.main.main--home section.__block.__block--news .__body ul li > span span.__date,
	.main.main--news section.__news ul li > a span.__date,
	.main.main--news section.__news ul li > span span.__date {
		width: 6.4vw;
		font-size: 1.25vw;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__title,
	.main.main--home section.__block.__block--news .__body ul li > span span.__title,
	.main.main--news section.__news ul li > a span.__title,
	.main.main--news section.__news ul li > span span.__title {
		gap: 0 1.87vw;
		width: calc(100% - 8.28vw);
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__title span.c-news-label,
	.main.main--home section.__block.__block--news .__body ul li > span span.__title span.c-news-label,
	.main.main--news section.__news ul li > a span.__title span.c-news-label,
	.main.main--news section.__news ul li > span span.__title span.c-news-label {
		top: 1.6vw;
		left: 1.6vw;
		width: 8vw;
		padding: 0.15vw 0.6vw 0.23vw 0.6vw;
		font-size: 1.1vw;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__title span.__subject,
	.main.main--home section.__block.__block--news .__body ul li > span span.__title span.__subject,
	.main.main--news section.__news ul li > a span.__title span.__subject,
	.main.main--news section.__news ul li > span span.__title span.__subject {
		flex: calc(100% - 8vw);
		font-size: 1.25vw;
	}
	.main.main--home section.__block.__block--news .c-more.heading-more {
		top: 11vw;
	}
}

@media screen and (max-width: 750px) {
	.main.main--home section.__block.__block--news {
		display: block;
		padding-top: 0;
		padding-bottom: 10.4vw;
	}
	.main.main--home section.__block.__block--news .__body {
		position: relative;
	}
	.main.main--home section.__block.__block--news .__body ul li,
	.main.main--news section.__news ul li {
		padding: 3.9vw 0;
	}
	.main.main--home section.__block.__block--news .__body ul li:first-child,
	.main.main--news section.__news ul li:first-child {
		border-top: none;
	}
	.main.main--home section.__block.__block--news .__body ul li > a,
	.main.main--home section.__block.__block--news .__body ul li > span,
	.main.main--news section.__news ul li > a,
	.main.main--news section.__news ul li > span {
		display: block;
		padding: 0 1.6vw 0 0;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__date,
	.main.main--home section.__block.__block--news .__body ul li > span span.__date,
	.main.main--news section.__news ul li > a span.__date,
	.main.main--news section.__news ul li > span span.__date {
		width: 100%;
		padding: 0 0 1vw 15.5vw;
		font-size: 2.7vw;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__title,
	.main.main--home section.__block.__block--news .__body ul li > span span.__title,
	.main.main--news section.__news ul li > a span.__title,
	.main.main--news section.__news ul li > span span.__title {
		display: block;
		width: 100%;
		vertical-align: baseline;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__title span.c-news-label,
	.main.main--home section.__block.__block--news .__body ul li > span span.__title span.c-news-label,
	.main.main--news section.__news ul li > a span.__title span.c-news-label,
	.main.main--news section.__news ul li > span span.__title span.c-news-label {
		top: 0.5vw;
		left: 0;
		width: 13vw;
		padding: 0.3vw 0.6vw 0.4vw 0.6vw;
		font-size: 1.8vw;
	}
	.main.main--home section.__block.__block--news .__body ul li > a span.__title span.__subject,
	.main.main--home section.__block.__block--news .__body ul li > span span.__title span.__subject,
	.main.main--news section.__news ul li > a span.__title span.__subject,
	.main.main--news section.__news ul li > span span.__title span.__subject {
		display: inline;
		font-size: 2.7vw;
	}
	.main.main--home section.__block.__block--news .c-more.heading-more {
		top: 0;
		left: auto;
		right: 3.9vw;
	}
}




/* ---------------------------------------------------------------- */
/* aside */
/* ---------------------------------------------------------------- */

.wrapper.wrapper--column-2 .__inner .aside {
	flex-basis: 248px;
	float: none !important;
	position: relative;
	width: 248px;
	height: auto;
	padding: 0;
}
body.body-home .wrapper.wrapper--column-2 .__inner .aside {
	flex-basis: 100%;
	width: 100%;
	background-color: #ECF0F2 !important;
}

@media screen and (max-width: 1280px) {
	.wrapper.wrapper--column-2 .__inner .aside {
		flex-basis: 19.4vw;
		width: 19.4vw;
	}
}

@media screen and (max-width: 750px) {
	.wrapper.wrapper--column-2 .__inner .aside {
		flex-basis: auto;
		width: 100%;
	}
}


/* block */
.aside section.__block {
	padding: 0;
}
.aside section.__block:not(:last-child) {
	margin-bottom: 30px;
}
.aside section.__block.__block--free {
	margin-bottom: 0;
	background-color: transparent;
	border-radius: 0;
}
body.body-home .aside section.__block {
	width: 100%;
	padding-bottom: 0;
	padding-left: calc((100% - 1360px) / 2);
	padding-right: calc((100% - 1360px) / 2);
}

@media screen and (max-width: 1420px) {
	body.body-home .aside section.__block {
		padding-left: 30px;
		padding-right: 30px;
	}
}
@media screen and (max-width: 750px) {
	body.body-home .aside section.__block {
		padding-left: 3.9vw;
		padding-right: 3.9vw;
	}
}


/* heading */
/* --- lower page --- */
.aside section.__block .__heading.__heading--default,
.aside section.__block .__heading.__heading--custom {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 20px 0 20px 29px;
	font-family: 'Expletus Sans', serif;
	font-size: 24px;
	font-weight: 500;
	color: #666;
	background-color: transparent;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_ha.svg);
	background-repeat: no-repeat;
	background-size: auto 24px;
	background-position: center left;
	border: none;
	border-top: 1px solid #97A8B3;
}
.aside section.__block .__heading.__heading--default .miniText,
.aside section.__block .__heading.__heading--custom .miniText {
	position: relative;
	display: inline-block;
	padding: 10px 0 0 7px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 12px;
	font-weight: 700;
	vertical-align: text-top;
	color: #0D6FB8;
}

/* heading */
/* --- top page --- */
body.body-home .aside section.__block .__heading.__heading--default,
body.body-home .aside section.__block .__heading.__heading--custom {
	padding: 20px 0 20px 63px;
	font-size: 42px;
	background-size: auto 52px;
	background-position: top 21px left;
}
body.body-home .aside section.__block .__heading.__heading--default .miniText,
body.body-home .aside section.__block .__heading.__heading--custom .miniText {
	padding: 16px 0 0 24px;
	font-size: 16px;
}
body.body-home .aside section.__block .__heading.__heading--custom.headingCategory {
	display: none;
}

@media screen and (max-width: 1280px) {
	.aside section.__block .__heading.__heading--default,
	.aside section.__block .__heading.__heading--custom {
		padding: 1.6vw 0 1.6vw 2.3vw;
		font-size: 1.9vw;
		background-size: auto 1.9vw;
	}
	.aside section.__block .__heading.__heading--default .miniText,
	.aside section.__block .__heading.__heading--custom .miniText {
		padding: 0.8vw 0 0 0.5vw;
		font-size: 0.9vw;
	}
	
	body.body-home .aside section.__block .__heading.__heading--default,
	body.body-home .aside section.__block .__heading.__heading--custom {
		padding: 1.6vw 0 1.6vw 4.9vw;
		font-size: 3.3vw;
		background-size: auto 4vw;
		background-position: top 1.65vw left;
	}
	body.body-home .aside section.__block .__heading.__heading--default .miniText,
	body.body-home .aside section.__block .__heading.__heading--custom .miniText {
		padding: 1.6vw 0 0 1.87vw;
		font-size: 1.25vw;
	}
}

@media screen and (max-width: 750px) {
	.aside section.__block .__heading.__heading--default,
	.aside section.__block .__heading.__heading--custom {
		padding: 6.2vw 0 6.2vw 8vw;
		font-size: 5.5vw;
		background-size: auto 6.8vw;
		background-position: top 6.6vw left;
	}
	.aside section.__block .__heading.__heading--default .miniText,
	.aside section.__block .__heading.__heading--custom .miniText {
		padding: 1.6vw 0 0 2.4vw;
		font-size: 3.1vw;
	}
	
	body.body-home .aside section.__block .__heading.__heading--default,
	body.body-home .aside section.__block .__heading.__heading--custom {
		padding: 6.2vw 0 6.2vw 8vw;
		font-size: 5.5vw;
		background-size: auto 6.8vw;
		background-position: top 6.6vw left;
	}
	body.body-home .aside section.__block .__heading.__heading--default .miniText,
	body.body-home .aside section.__block .__heading.__heading--custom .miniText {
		padding: 1.6vw 0 0 2.4vw;
		font-size: 3.1vw;
	}
	
	body:not(.body-home) .aside section.__block .__heading.__heading--custom.headingCategory {
		position: relative;
		padding: 6.2vw 0 6.2vw 11.9vw;
		background-color: #fff !important;
		background-position: top 6.6vw left 3.9vw;
		border: none;
	}
	body:not(.body-home) .aside section.__block .__heading.__heading--custom.headingCategory:before {
		display: inline-block;
		content: "";
		position: absolute;
		top: 0;
		left: 3.9vw;
		width: 92.2vw;
		border-bottom: 1px solid #97A8B3;
	}
	
	body:not(.body-home) .aside section.__block .__heading.__heading--custom.headingCalendar {
		position: relative;
		padding: 16.6vw 0 6.2vw 11.9vw;
		background-color: #ECF0F2 !important;
		background-position: top 17vw left 3.9vw;
		border: none;
	}
	body:not(.body-home) .aside section.__block .__heading.__heading--custom.headingCalendar:before {
		display: inline-block;
		content: "";
		position: absolute;
		top: 10.4vw;
		left: 3.9vw;
		width: 92.2vw;
		border-bottom: 1px solid #97A8B3;
	}
}


/* shipping banner */
.aside .shippingBanner {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: 100%;
	max-width: 960px;
	margin: 0 auto 30px;
	padding: 0;
	border: 3px solid #93C0D4;
	border-radius: 20px;
}
.aside .shippingBanner p.text01 {
	font-size: 16px;
	font-weight: 500;
}
.aside .shippingBanner p.text01 span {
	font-weight: 700;
}
.aside .shippingBanner p.text01 span span {
	font-size: 24px;
}
.aside .shippingBanner p.text02 {
	margin: 0;
	padding: 10px 50px 12px;
	font-size: 26px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background-color: #0D6FB8;
	border-radius: 100px;
}
.aside .shippingBanner p.text03 {
	font-size: 14px;
	text-align: center;
	color: #666;
}
	body.body-home .aside .shippingBanner {
	display: none;
}

@media screen and (max-width: 1280px) {
	.aside .shippingBanner {
		max-width: 100%;
		margin: 0 auto 2.3vw;
		border: 0.2vw solid #93C0D4;
		border-radius: 1.6vw;
	}
	.aside .shippingBanner p.text01 {
		font-size: 1.25vw;
	}
	.aside .shippingBanner p.text01 span span {
		font-size: 1.9vw;
	}
	.aside .shippingBanner p.text02 {
		padding: 0.8vw 3.9vw 1vw;
		font-size: 2vw;
		border-radius: 50vw;
	}
	.aside .shippingBanner p.text03 {
		font-size: 1.1vw;
	}
}

@media screen and (max-width: 750px) {
	.aside .main.main--home section.__block.__block--free-1{
		padding-bottom: 10.4vw;
	}
	.aside .shippingBanner {
		flex-direction: column;
		gap: 2vw 0;
		width: auto;
		margin: 0 3.9vw 7.8vw !important;
		padding: 1vw;
		border: 0.8vw solid #93C0D4;
		border-radius: 2.6vw;
	}
	.aside .shippingBanner p.text01 {
		margin: 0;
		font-size: 3.1vw;
	}
	.aside .shippingBanner p.text01 span span {
		font-size: 5.5vw;
	}
	.aside .shippingBanner p.text02 {
		padding: 3.6vw 9.1vw 3.8vw;
		font-size: 6.25vw;
		border-radius: 7.8vw;
	}
	.aside .shippingBanner p.text03 {
		margin: 1.2vw 0;
		font-size:2.3vw;
	}
	.aside .shippingBanner p.text03 br {
		display: none;
	}
	.aside .shippingBanner p.text03 span {
		padding-left: 1em;
	}
}


/* login - guest */
.aside section.__block.__block--login {
	margin-bottom: 30px;
}
body.body-home .aside section.__block.__block--login {
	display: none;
}
.aside section.__block.__block--login.__is-guest {
	display: block;
	position: relative;
	background-color: transparent;
	width: 100%;
	margin: 0 auto 30px !important;
	padding: 20px;
	background-color: #ECF0F2;
	border-radius: 10px;
}
.aside section.__block.__block--login h3 {
	display: none;
}
.aside section.__block.__block--login.__is-guest .__body {
	padding: 0;
}
.aside section.__block.__block--login.__is-guest .__body .__login-link {
	display: none;
}
.aside section.__block.__block--login.__is-guest .__body ul.__menu {
	margin: 0;
}
.aside section.__block.__block--login.__is-guest .__body ul.__menu li {
	padding: 0;
}
.aside section.__block.__block--login.__is-guest .__body ul.__menu li a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 5px;
	width: 100%;
	height: 60px;
	margin: 0 auto;
	padding: 0 0 2px;
	background-color: #0D6FB8;
	border-radius: 10px;
}
.aside section.__block.__block--login.__is-guest .__body ul.__menu li a:before {
	display: inline-block;
	content: "";
	width: 32px;
	height: 32px;
	margin: 0;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_account2.svg);
	background-repeat: no-repeat;
	background-size: 32px auto;
	background-position: center center;
}
.aside section.__block.__block--login.__is-guest .__body ul.__menu li a span {
	display: inline;
	color: #fff;
	font-size: 18px;
}

@media screen and (max-width: 1280px) {
	.aside section.__block.__block--login {
		margin-bottom: 2.3vw;
	}
	.aside section.__block.__block--login.__is-guest {
		margin: 0 auto 2.3vw !important;
		padding: 1.6vw;
		border-radius: 0.8vw;
	}
	.aside section.__block.__block--login.__is-guest .__body ul.__menu li a {
		gap: 0 0.4vw;
		height: 4.7vw;
		padding: 0 0 0.2vw;
		border-radius: 0.8vw;
	}
	.aside section.__block.__block--login.__is-guest .__body ul.__menu li a:before {
		width: 2.5vw;
		height: 2.5vw;
		background-size: 2.5vw auto;
	}
	.aside section.__block.__block--login.__is-guest .__body ul.__menu li a span {
		font-size: 1.4vw;
	}
}

@media screen and (max-width: 750px) {
	.aside section.__block.__block--login {
		margin-bottom: 10.4vw;
	}
	.aside section.__block.__block--login.__is-guest {
		margin: 0 auto !important;
		padding: 0;
		background-color: transparent;
	}
	.aside section.__block.__block--login.__is-guest .__body {
		padding: 0 3.9vw 7.8vw;
	}
	.aside section.__block.__block--login.__is-guest .__body ul.__menu li a {
		width: 100%;
		height: 18vw;
		border-radius: 2.6vw;
	}
	.aside section.__block.__block--login.__is-guest .__body ul.__menu li a:before {
		width: 7.3vw;
		height: 7.3vw;
		background-size: 7.3vw auto;
	}
	.aside section.__block.__block--login.__is-guest .__body ul.__menu li a span {
		font-size: 5vw;
	}
}


/* logout - member */
.aside section.__block.__block--login.__is-member {
	width: 100%;
	margin: 0;
	padding: 0;
}
.aside section.__block.__block--login h3 {
	display: none;
}
.aside section.__block.__block--login.__is-member .__body {
	display: block;
	position: relative;
	background-color: transparent;
	width: 100%;
	margin: 0 auto 30px;
	padding: 20px;
	background-color: #ECF0F2;
	border-radius: 10px;
}
.aside section.__block.__block--login.__is-member .__body .__name {
	display: block;
	margin: 0;
	font-size: 14px;
	line-height: 1.2;
	text-align: left;
	font-weight: 700;
	color: #666;
}
.aside section.__block.__block--login.__is-member .__body .__name span {
	font-size: 14px;
	line-height: 1.2;
}
.aside section.__block.__block--login.__is-member .__body .__point {
	font-size: 14px;
	line-height: 1.2;
}
.aside section.__block.__block--login.__is-member ul.__menu {
	display: flex;
	justify-content: center;
	gap: 0 2%;
	width: 100%;
	margin: 0 auto;
	padding: 16px 0 0;
}
.aside section.__block.__block--login.__is-member ul.__menu li {
	width: 48%;
	border: none;
}
.aside section.__block.__block--login.__is-member ul.__menu li a {
	display: block;
	width: 100%;
	padding: 8px 0;
	font-size: 14px;
	line-height: 1.6;
	text-align: center;
	text-decoration: none;
	background-color: #97A8B3;
	border-radius: 10px;
}
.aside section.__block.__block--login.__is-member ul.__menu li a:before {
	display: none;
}
.aside section.__block.__block--login.__is-member ul.__menu li a span {
	color: #fff;
}

@media screen and (max-width: 1280px) {
	.aside section.__block.__block--login.__is-member .__body {
		margin: 0 auto 2.3vw;
		padding: 1.6vw;
		border-radius: 0.8vw;
	}
	.aside section.__block.__block--login.__is-member .__body .__name {
		font-size: 1.1vw;
	}
	.aside section.__block.__block--login.__is-member .__body .__name span {
		font-size: 1.1vw;
	}
	.aside section.__block.__block--login.__is-member .__body .__point {
		font-size: 1.1vw;
	}
	.aside section.__block.__block--login.__is-member ul.__menu {
		padding: 1.25vw 0 0;
	}
	.aside section.__block.__block--login.__is-member ul.__menu li a {
		padding: 0.6vw 0;
		font-size: 1.1vw;
		border-radius: 0.8vw;
	}
}

@media screen and (max-width: 750px) {
	.aside section.__block.__block--login.__is-member {
		margin: 0;
		padding: 0 3.9vw 7.8vw;
	}
	.aside section.__block.__block--login.__is-member .__body {
		margin: 0;
		padding: 3.9vw;
		border-radius: 2.6vw
	}
	.aside section.__block.__block--login.__is-member .__body .__name,
	.aside section.__block.__block--login.__is-member .__body .__name span {
		font-size: 4.2vw;
	}
	.aside section.__block.__block--login.__is-member .__body .__point {
		font-size: 4.2vw;
	}
	.aside section.__block.__block--login.__is-member ul.__menu {
		padding: 6vw 0 0;
	}
	.aside section.__block.__block--login.__is-member ul.__menu li {
		padding: 0 0 4vw;
	}
	.aside section.__block.__block--login.__is-member ul.__menu li a {
		padding: 4vw 2vw;
		font-size: 4.8vw;
		letter-spacing: 0.4vw;
		border-radius: 2.6vw
	}
}


/* cart */
.aside section.__block.__block--cart {
	border: solid 3px #ECF0F2;
	border-radius: 10px;
}
body.body-home .aside section.__block.__block--cart {
	display: none;
}
.aside section.__block.__block--cart h3.__heading {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 14px 16px;
	background-color: #ECF0F2;
	background-image: none;
	border: none;
}
.aside section.__block.__block--cart h3.__heading span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	color: #333;
}
.aside section.__block.__block--cart h3.__heading:before {
	display: inline-block;
	content: "";
	width: 32px;
	height: 32px;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_cart2.svg);
	background-repeat: no-repeat;
	background-size: 32px auto;
	background-position: top center;
}
.aside section.__block.__block--cart .__body span {
	font-size: 16px;
}

@media screen and (max-width: 1280px) {
	.aside section.__block.__block--cart {
		border: solid 0.2vw #ECF0F2;
		border-radius: 0.8vw;
	}
	.aside section.__block.__block--cart h3.__heading {
		padding: 1.1vw 1.25vw;
	}
	.aside section.__block.__block--cart h3.__heading span {
		font-size: 1.25vw;
	}
	.aside section.__block.__block--cart h3.__heading:before {
		width: 2.5vw;
		height: 2.5vw;
		background-size: 2.5vw auto;
	}
	.aside section.__block.__block--cart .__body span {
		font-size: 1.25vw;
	}
}

@media screen and (max-width: 750px) {
	.aside section.__block.__block--cart {
		margin: 0 3.9vw 10.4vw;
		border: solid 0.8vw #ECF0F2;
		border-radius: 2.6vw;
	}
	.aside section.__block.__block--cart h3.__heading {
		padding: 3.9vw;
	}
	.aside section.__block.__block--cart h3.__heading span {
		font-size: 4vw;
	}
	.aside section.__block.__block--cart h3.__heading:before {
		width: 8.4vw;
		height: 8.4vw;
		background-size: 8.4vw auto;
	}
	.aside section.__block.__block--cart .__body span {
		font-size: 3.4vw;
	}
}


/* category */
.aside section.__block.__block--free .__body--category {
	margin-bottom: 30px;
}
.aside section.__block.__block--free .__body--category ul {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 20px;
	margin: 0;
	padding: 0;
}
.aside section.__block.__block--free .__body--category ul li {
	display: inline-block;
	width: 100%;
	margin: 0;
	padding: 0;
	border-radius: 10px;
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease-in-out;
}
.aside section.__block.__block--free .__body--category ul li:hover {
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
}
.aside section.__block.__block--free .__body--category ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 60px;
	margin: 0;
	padding: 0;
	font-size:20px;
	font-weight: 500;
	color: #0D6FB8;
	border: 3px solid #93C0D4;
	border-radius: 10px;
}
body.body-home .aside section.__block.__block--free .__body--category {
	display: none;
}

@media screen and (max-width: 1280px) {
	.aside section.__block.__block--free .__body--category {
		margin-bottom: 2.3vw;
	}
	.aside section.__block.__block--free .__body--category ul {
		gap: 1.6vw;
	}
	.aside section.__block.__block--free .__body--category ul li {
		border-radius: 0.8vw;
		box-shadow: 0 0 0.4vw 0 rgba(0, 0, 0, 0.2);
	}
	.aside section.__block.__block--free .__body--category ul li a {
		height: 4.7vw;
		font-size:1.6vw;
		border: 0.3vw solid #93C0D4;
		border-radius: 0.8vw;
	}
	.main.main--home section.__block.__block--free .category .__body ul li a:hover {
		border: 0.3vw solid #0D6FB8;
	}
	
	.aside section.__block.__block--free .__body--category {
		margin-bottom: 2.3vw;
	}
}

@media screen and (max-width: 750px) {
	.aside section.__block.__block--free .__body--category {
		margin-bottom: 10.4vw;
		padding: 0 3.9vw;
	}
	.aside section.__block.__block--free .__body--category ul {
		flex-direction: row;
		gap: 2.6vw;
	}
	.aside section.__block.__block--free .__body--category ul li {
		width: calc(33.3% - 1.75vw);
		border-radius: 2.6vw;
		box-shadow: 0 0.4vw 1.5vw 0 rgba(0, 0, 0, 0.15);
	}
	.aside section.__block.__block--free .__body--category ul li:hover {
		box-shadow: 0 0.4vw 1.5vw 0 rgba(0, 0, 0, 0.15);
	}
	.aside section.__block.__block--free .__body--category ul li a {
		height: 28vw;
		font-size: 3.4vw;
		border: 0.65vw solid #93C0D4;
		border-radius: 2.6vw;
	}
	.aside section.__block.__block--free .__body--category ul li a:hover {
		border: 0.65vw solid #93C0D4;
	}
}


/* calendar */
/* ---lower page--- */
.aside section.__block.__block--calendar {
	margin: 0;
	padding: 0;
}
.aside section.__block.__block--calendar ul {
	margin: 0;
	padding: 0;
}
.aside section.__block.__block--calendar ul:before,
.aside section.__block.__block--calendar ul:after {
	display: none;
}
.aside section.__block.__block--calendar ul li {
	float: none;
	width: 100%;
	margin: 5px auto 15px;
	padding: 0;
	background-color: #fff;
	border-radius: 0;
}

.aside section.__block.__block--calendar ul li table.cal {
	width: 100%;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 4px;
}
.aside section.__block.__block--calendar ul li table.cal thead th {
	padding: 0 0 10px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
}
.aside section.__block.__block--calendar ul li table.cal tbody th,
.aside section.__block.__block--calendar ul li table.cal tbody td {
	width: auto;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	background-color: transparent !important;
	border: none;
	border-radius: 5px;
}
.aside section.__block.__block--calendar ul li table.cal tbody th {
	padding: 10px 0;
	background-color: #ECF0F2 !important;
}
.aside section.__block.__block--calendar ul li table.cal tbody th:first-child {
	color: #a43854 !important;
}
.aside section.__block.__block--calendar ul li table.cal tbody th:last-child {
	color: #3183B1 !important;
}
.aside section.__block.__block--calendar ul li table.cal tbody td span {
	padding: 10px 0;
	border-radius: 5px;
}
.aside section.__block.__block--calendar ul li table.cal tbody td span strong {
	font-weight: 500;
	color: #333;
}
.aside section.__block.__block--calendar ul li table.cal tbody td span.cal-week-close strong {
	font-weight: 500;
	color: #fff;
}

.aside section.__block.__block--free p.calendarInfo {
	margin: 0;
	padding: 0 0 30px;
	font-size: 14px;
	text-align: right;
}
.aside section.__block.__block--free p.calendarInfo span {
	color: #D6000F;
}

/* ---top page--- */
body.body-home .aside section.__block h3.headingCalendar {
	margin-top: 60px;
}

body.body-home .aside section.__block.__block--calendar {
	margin-top: -75px;
	padding-top: 0;
	padding-bottom: 0;
}
body.body-home .aside section.__block.__block--calendar ul {
	display: flex;
	align-items: stretch;
	flex-wrap: nowrap;
	gap: 30px;
	width: 900px;
	margin: 0 0 0 auto;
	padding: 0;
}
body.body-home .aside section.__block.__block--calendar ul:before,
body.body-home .aside section.__block.__block--calendar ul:after {
	display: none;
}
body.body-home .aside section.__block.__block--calendar ul li {
	width: 100%;
	margin: 0 auto;
	padding: 25px 0;
	border-radius: 10px;
}

body.body-home .aside section.__block.__block--calendar ul li table.cal {
	width: 80%;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 4px;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal thead th {
	padding: 0 0 10px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th,
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td {
	width: 44px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	background-color: transparent !important;
	border: none;
	border-radius: 10px;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th {
	padding: 16px 0;
	background-color: #ECF0F2 !important;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th:first-child {
	color: #a43854 !important;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th:last-child {
	color: #3183B1 !important;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td span {
	padding: 16px 0;
	border-radius: 10px;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td span strong {
	font-weight: 500;
	color: #333;
}
body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td span.cal-week-close strong {
	font-weight: 500;
	color: #fff;
}

body.body-home .aside section.__block.__block--free p.calendarInfo {
	margin: 0;
	padding: 20px 0 30px;
	font-size: 14px;
	text-align: right;
}
body.body-home .aside section.__block.__block--free p.calendarInfo span {
	color: #D6000F;
}

@media screen and (max-width: 1420px) {
	body.body-home .aside section.__block h3.headingCalendar {
		margin-top: 4.2vw;
	}
	body.body-home .aside section.__block.__block--calendar {
		margin-top: -5.3vw;
	}
	body.body-home .aside section.__block.__block--calendar ul {
		gap: 2.1vw;
		width: 58vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li {
		margin: 0;
		padding: 1.5vw 0;
		border-radius: 0.7vw;
	}
	
	body.body-home .aside section.__block.__block--calendar ul li table.cal {
		width: 86%;
		border-spacing: 0.3vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal thead th {
		padding: 0 0 0.7vw;
		font-size: 1vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th,
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td {
		width: 3.1vw;
		font-size: 0.9vw;
		border-radius: 0.7vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th {
		padding: 1.1vw 0;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td span {
		padding: 1.1vw 0;
		border-radius: 0.7vw;
	}
	
	body.body-home .aside section.__block.__block--free p.calendarInfo {
		padding: 1.4vw 0 2.1vw;
		font-size: 1vw;
	}
}

@media screen and (max-width: 1280px) {
	body:not(.body-home) .aside section.__block.__block--calendar ul li {
		margin: 0.4vw auto 1.2vw;
	}

	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal {
		border-spacing: 0.3vw;
	}
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal thead th {
		padding: 0 0 0.8vw;
		font-size: 1.1vw;
	}
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody th,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody td {
		font-size: 1vw;
		border-radius: 0.4vw;
	}
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody th {
		padding: 0.8vw 0;
	}
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody td span {
		padding: 0.8vw 0;
		border-radius: 0.4vw;
	}
	body:not(.body-home) .aside section.__block.__block--free p.calendarInfo {
		padding: 0 0 2.3vw;
		font-size: 1.1vw;
	}
}

@media screen and (max-width: 750px) {
	body.body-home .aside section.__block h3.headingCalendar {
		margin-top: 10.4vw;
	}
	body.body-home .aside section.__block.__block--calendar,
	body:not(.body-home) .aside section.__block.__block--calendar{
		margin-top: 0;
		padding: 0 3.9vw;
		background-color: #ECF0F2 !important;
	}
	body.body-home .aside section.__block.__block--calendar ul,
	body:not(.body-home) .aside section.__block.__block--calendar ul {
		display: flex;
		align-items: stretch;
		flex-wrap: nowrap;
		gap: 3.6vw;
		width: 100%;
		margin: 0 0 0 auto;
		padding: 0;
	}
	body.body-home .aside section.__block.__block--calendar ul li,
	body:not(.body-home) .aside section.__block.__block--calendar ul li {
		margin: 1.4vw auto;
		padding: 2vw 0;
		border-radius: 2.6vw;
	}
	
	body.body-home .aside section.__block.__block--calendar ul li table.cal,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal {
		width: 86%;
		border-spacing: 0.52vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal thead th,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal thead th {
		padding: 0 0 2vw;
		font-size: 2.7vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th,
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody th,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody td {
		width: 3.1vw;
		font-size: 2.7vw;
		border-radius: 0.8vw;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody th,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody th {
		padding: 1.1vw 0;
	}
	body.body-home .aside section.__block.__block--calendar ul li table.cal tbody td span,
	body:not(.body-home) .aside section.__block.__block--calendar ul li table.cal tbody td span {
		padding: 1.1vw 0;
		border-radius: 0.8vw;
	}
	
	body.body-home .aside section.__block.__block--free p.calendarInfo,
	body:not(.body-home) .aside section.__block.__block--free p.calendarInfo {
		padding: 1.4vw 3.9vw 10.4vw;
		font-size: 2.4vw;
		background-color: #ECF0F2 !important;
	}
}


/* credit */
.aside section.__block.__block--b-credit {
	padding: 20px 0;
}




/* ---------------------------------------------------------------- */
/* footer */
/* ---------------------------------------------------------------- */

.footer {
	width: 100%;
	padding-top: 0;
	padding-bottom: 80px;
	padding-left: calc((100% - 1360px) / 2);
	padding-right: calc((100% - 1360px) / 2);
	background-color: #97A7B3 !important;
}

.footer .button {
	padding: 60px 0;
}
.footer .button ul {
	display: flex;
	align-items: stretch;
	flex-wrap: nowrap;
	gap: 60px;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}
.footer .button li {
	width: 100%;
}
.footer .button a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	width: 100%;
	height: 96px;
	padding: 0;
	font-size: 18px;
	font-weight: 500;
	color: #333;
	background-color: #fff;
	border-radius: 10px;
}
.footer .button a p {
	margin: 0;
	padding: 0 0 1px;
}
.footer .button a img {
	width: 32px;
	height: 32px;
	vertical-align: bottom;
}

.footer nav.nav01 a,
.footer nav.nav02 a {
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	color: #fff;
	text-decoration: none;
}

.footer nav.nav01 {
	padding-bottom: 30px;
}
.footer nav.nav01 p {
	margin: 0;
	padding: 5px 0 15px;
	font-size: 16px;
	font-weight: 400;
	color: #fff;
}
.footer nav.nav01 .navList {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 30px;
	margin: 0;
	padding: 0;
	border-top: solid 1px #DFE7EC;
}
.footer nav.nav01 .navList ul {
	list-style: none;
}
.footer nav.nav01 .navList > ul li {
	padding: 0.4em 0;
}
.footer nav.nav01 .navList > ul {
	width: calc(25% - 23px);
	padding: 0;
}
.footer nav.nav01 .navList > ul > li {
	padding-bottom: 2em;
}
.footer nav.nav01 .navList > ul > li > ul {
	padding: 0.4em 0 0 1em;
}
.footer nav.nav01 .navList > ul > li > a {
	font-size: 15px;
	font-weight: 500;
}

.footer nav.nav02 p {
	margin: 0;
	padding: 0;
}
.footer nav.nav02 p img {
	width: 260px;
}
.footer nav.nav02 .navList {
	padding: 20px 0;
}
.footer nav.nav02 .navList ul {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0 30px;
	margin: 0;
	padding: 0.3em 0;
	list-style: none;
}
.footer nav.nav02 .navList ul li {
	padding: 0;
}

.footer .copyright {
	width: 100%;
	max-width: 100% !important;
	margin: 0;
	padding: 0;
	font-size: 12px;
	text-align: right;
	color: #DFE7EC;
}

@media screen and (max-width: 1420px) {
	.footer {
		padding-left: 30px;
		padding-right: 30px;
	}
}

@media screen and (max-width: 1280px) {
	.footer {
		padding-bottom: 6.25vw;
	}
	.footer .button {
		padding: 4.7vw 0;
	}
	.footer .button ul {
		gap: 4.7vw;
	}
	.footer .button a {
		gap: 0.6vw;
		height: 7.5vw;
		font-size: 1.4vw;
		border-radius: 0.8vw;
	}
	.footer .button a img {
		width: 2.5vw;
		height: 2.5vw;
	}
	
	.footer nav.nav01 a,
	.footer nav.nav02 a {
		font-size: 1.1vw;
	}

	.footer nav.nav01 {
		padding-bottom: 2.35vw;
	}
	.footer nav.nav01 p {
		padding: 0.4vw 0 1.2vw;
		font-size: 1.25vw;
	}
	.footer nav.nav01 .navList {
		gap: 2.35vw;
	}
	.footer nav.nav01 .navList > ul {
		width: calc(25% - 1.8vw);
	}
	.footer nav.nav01 .navList > ul > li > a {
		font-size: 1.2vw;
	}
	
	.footer nav.nav02 p img {
		width: 20vw;
	}
	.footer nav.nav02 .navList {
		padding: 1.6vw 0;
	}
	.footer nav.nav02 .navList ul {
		gap: 0 2.35vw;
	}
	
	.footer .copyright {
		font-size: 0.9vw;
	}
}

@media screen and (max-width: 750px) {
	.footer {
		padding-left: 3.9vw;
		padding-right: 3.9vw;
		padding-bottom: 10.4vw;
	}
	.footer .button {
		padding: 10.4vw 0;
	}
	.footer .button ul {
		gap: 3.9vw;
	}
	.footer .button a {
		gap: 0 1.2vw;
		height: 15.6vw;
		font-size: 3.1vw;
		border-radius: 2.6vw;
	}
	.footer .button a img {
		width: 5.2vw;
		height: 5.2vw;
	}
	
	.footer nav.nav01 a,
	.footer nav.nav02 a {
		font-size: 3.1vw;
	}
	
	.footer nav.nav01 {
		padding-bottom: 2.35vw;
	}
	.footer nav.nav01 p {
		padding: 0 0 2vw;
		font-size: 3.1vw;
	}
	.footer nav.nav01 .navList {
		gap: 0 3.9vw;
		padding-top: 5.4vw;
	}
	.footer nav.nav01 .navList > ul {
		width: calc(50% - 2vw);
		margin: 0;
	}
	.footer nav.nav01 .navList > ul > li {
		padding-bottom: 9.2vw;
	}
	.footer nav.nav01 .navList > ul > li > ul {
		padding: 2vw 0 0 2vw;
	}
	.footer nav.nav01 .navList > ul > li > a {
		font-size: 4.2vw;
		font-weight: 400;
	}
	
	.footer nav.nav02 p {
		text-align: center;
	}
	.footer nav.nav02 p img {
		width: 52vw;
	}
	.footer nav.nav02 .navList {
		padding: 6.4vw 0;
	}
	.footer nav.nav02 .navList ul {
		gap: 3vw 6vw;
		justify-content: center;
		padding: 5.2vw 0;
		border-top: solid 1px #DFE7EC;
	}
	.footer nav.nav02 .navList ul:last-child {
		border-bottom: solid 1px #DFE7EC;
	}
	
	.footer .copyright {
		font-size: 2.4vw;
		text-align: center;
	}
}


/* go to top */
.c-pagetop {
	display: none;
}




/* ---------------------------------------------------------------- */
/* page - howto */
/* ---------------------------------------------------------------- */

/* step */
.main.main--howto .__step h2,
.main.main--howto .__content-bottom h2 {
	margin-top: 3em;
}
.main.main--howto .__step .__body ul.__list li.__item {
	position: relative;
	padding-left: 0;
}
.main.main--howto .__step .__body ul.__list li.__item:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	display: inline-block;
	height: 80px;
	width: 80px;
	background-repeat: no-repeat;
	background-size: 80px auto;
	background-position: center center;
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(1):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step01.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(2):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step02.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(3):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step03.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(4):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step04.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(5):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step05.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(6):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step06.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(7):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step07.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(8):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step08.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(9):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step09.png);
}
.main.main--howto .__step .__body ul.__list li.__item:nth-of-type(10):before {
	background-image: url(https://files.bcart.jp/dentalead/uploads/step/step10.png);
}
.main.main--howto .__step .__body ul.__list li.__item .__description {
	padding-bottom: 2em;
	border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 750px) {
	.main.main--howto .__step .__body ul.__list li.__item {
		margin-top: 3em;
		padding-top: 0;
	}
}




/* ---------------------------------------------------------------- */
/* page - product */
/* ---------------------------------------------------------------- */
.main.main--product-list section.__breadcrumb,
.main.main--product-list section.__heading,
.main.main--product-list section.__child,
.main.main--product-list section.__content-top,
.main.main--product-list section.__pagination,
.main.main--product-list section.__information,
.main.main--product-list section.__content-bottom,
.main.main--product-detail section.__breadcrumb,
.main.main--product-detail section.__heading,
.main.main--product-detail section.__child,
.main.main--product-detail section.__content-top,
.main.main--product-detail section.__pagination,
.main.main--product-detail section.__information,
.main.main--product-detail section.__content-bottom {
	padding-left: 0;
	padding-right: 0;
}

.c-h1 {
	margin: 0;
	padding: 10px 0 10px 50px !important;
	font-size: 28px;
	font-weight: 500;
	color: #666;
	background-image: url(https://files.bcart.jp/dentalead/uploads/icon/icon_ha.svg);
	background-repeat: no-repeat;
	background-size: auto 48px;
	background-position: center left;
}

.main.main--product-list section.__list {
	padding: 40px 0;
}
.main.main--product-list section.__control {
	background-color: #ECF0F2;
}
.main.main--product-list section.__control .__item-count {
	padding: 0 20px 0 10px;
}
.main.main--product-list section.__control .__sort-control {
	padding: 0 20px 0 0;
}
.__sort-control .__title,
.__view-control .__title {
	padding-right: 5px;
}
.__view-control .c-button {
	display: inline flex;
	justify-content: center;
	align-items: center;
	width: 42px;
	height: 42px;
	background-color: #fff;
	border: 1px solid #97A8B3;
	border-radius: 0;
}
.__view-control .c-button-active {
	box-shadow: none;
	background-color: #93C0D4;
	border: 1px solid #93C0D4;
}
.__view-control .c-button:before {
	color: #333;
}

.p-product-block ul.__product {
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 20px;
	margin: 0;
	padding: 0;
}
.p-product-block ul.__product li.__item {
	width: calc(25% - 15px);
	margin: 0;
	padding: 0;
	border-radius: 10px;
	box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease-in-out;
}
.p-product-block ul.__product li.__item:hover {
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
}
.p-product-block ul.__product li.__item a {
	height: 100%;
	margin: 0;
	padding: 0 0 24px;
	opacity: 1 !important;
}
.p-product-block ul.__product li.__item a .__photo {
	position: relative;
	width: 100%;
	height: auto;
	opacity: 1;
}
.p-product-block ul.__product li.__item a .__photo:before {
	content: "";
	display: block;
	padding-top: 100%;
}
.p-product-block ul.__product li.__item a .__is-noimage:before {
	display: none;
}
.p-product-block ul.__product li.__item a .__photo img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-height: 100%;
	margin: auto;
	object-fit: cover;
	border-radius: 10px 10px 0 0;
}
.p-product-block ul.__product li.__item a .__photo .__noimage .__wrap {
	border-radius: 10px 10px 0 0;
}
.p-product-block ul.__product li.__item a .__photo .__noimage .__wrap span {
	font-size: 16px;
}
.p-product-block ul.__product li.__item a .__status {
	padding: 8px 20px 0;
}
.p-product-block ul.__product li.__item a .__title {
	padding: 10px 20px 0;
}
.p-product-block ul.__product li.__item a .__description {
	padding: 10px 20px 0;
	text-align: left;
}
.__list--block ul.__product {
	gap: 20px;
}
.__list--block ul.__product > li {
	padding: 0;
}

.p-pagination {
	width: 100%;
	margin: 0 auto;
	padding-bottom: 1.5em !important;
}
.p-pagination .__information {
	font-size: 16px;
}
.p-pagination .__link {
	padding-top: 1em;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
}
.p-pagination .__link ul.__page {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
}
.p-pagination .__link ul.__page li {
	font-size: 14px;
}

.p-pagination .__link .__prev a,
.p-pagination .__link .__next a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 40px;
	margin: 0 auto;
	padding: 0;
	border: 1px solid #ECF0F2;
	line-height: 1;
	font-weight: bold;
	font-size: 14px;
}
.p-pagination .__link .__prev a:hover,
.p-pagination .__link .__next a:hover {
	text-decoration: none;
	background: transparent;
}
.p-pagination .__link ul.__page li.__active span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	padding: 0;
	font-weight: 400;
	color: #fff;
	background: #93C0D4;
	border: 1px solid #93C0D4;
}
.p-pagination .__link ul.__page li.__link a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	padding: 0;
	font-weight: 400;
	border: 1px solid #ECF0F2;
}
.p-pagination .__link ul.__page li.__link:hover {
	opacity: 0.7;
}
.p-pagination .__link ul.__page li.__link a:hover {
	background: transparent;
}

.p-pagination .__link .__prev a:before {
	display: block;
	content: "";
	width: 8px;
	height: 8px;
	padding: 0;
	border-top: solid 1px #666;
	border-right: solid 1px #666;
	transform: rotate(-135deg);
}
.p-pagination .__link .__next a:after {
	display: block;
	content: "";
	width: 8px;
	height: 8px;
	padding: 0;
	border-top: solid 1px #666;
	border-right: solid 1px #666;
	transform: rotate(45deg);
}
.p-pagination .__link .__prev a span,
.p-pagination .__link .__next a span {
	display: block;
	width: 8px;
}

section.__block.__block--recommend .c-more {
	display: none;
}
section.__block.__block--recommend .c-more.heading-more {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
}

@media screen and (max-width: 1420px) {
	.main.main--product-list section.__list {
		padding: 2.8vw 0;
	}
	
	.p-product-block ul.__product {
		gap: 1.4vw;
	}
	.p-product-block ul.__product li.__item {
		width: calc(25% - 1.1vw);
		border-radius: 0.7vw;
		box-shadow: 0 0 1.1vw 0 rgba(0, 0, 0, 0.1);
	}
	.p-product-block ul.__product li.__item:hover {
		box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.2);
	}
	.p-product-block ul.__product li.__item a {
		padding: 0 0 1.7vw;
	}
	.p-product-block ul.__product li.__item a .__photo img {
		border-radius: 0.8vw 0.8vw 0 0;
	}
	.p-product-block ul.__product li.__item a .__photo .__noimage .__wrap span {
		font-size: 1.1vw;
	}
	.p-product-block ul.__product li.__item a .__status {
		padding: 0.3vw 1.4vw 0;
	}
	.p-product-block ul.__product li.__item a .__title {
		padding: 0.6vw 1.4vw 0;
	}
	.p-product-block ul.__product li.__item a .__description {
		padding: 0.6vw 1.4vw 0;
	}
}

@media screen and (max-width: 1280px) {
	.c-h1 {
		padding: 0.8vw 0 0.8vw 3.9vw !important;
		font-size: 2.2vw;
		background-size: auto 3.75vw;
	}
	
	.c-form select, .c-form textarea {
		font-size: 1.25vw;
	}
	.__view-control .c-button {
		width: 3.3vw;
		height: 3.3vw;
	}
	
	.p-pagination .__information {
		font-size: 1.25vw;
	}
	.p-pagination .__link {
		gap: 0.4vw;
	}
	.p-pagination .__link ul.__page {
		gap: 0.4vw;
	}
	.p-pagination .__link ul.__page li {
		font-size: 1.1vw;
	}

	.p-pagination .__link .__prev a,
	.p-pagination .__link .__next a {
		width: 6.25vw;
		height: 3.13vw;
		font-size: 1.1vw;
	}
	.p-pagination .__link ul.__page li.__active span {
		width: 3.13vw;
		height: 3.13vw;
	}
	.p-pagination .__link ul.__page li.__link a {
		width: 3.13vw;
		height: 3.13vw;
	}
	.p-pagination .__link .__prev a:before {
		width: 0.625vw;
		height: 0.625vw;
	}
	.p-pagination .__link .__next a:after {
		width: 0.625vw;
		height: 0.625vw;
	}
	.p-pagination .__link .__prev a span,
	.p-pagination .__link .__next a span {
		width: 0.625vw;
	}
}

@media screen and (max-width: 750px) {
	.main.main--product-list section.__breadcrumb,
	.main.main--product-list section.__heading,
	.main.main--product-list section.__child,
	.main.main--product-list section.__content-top,
	.main.main--product-list section.__pagination,
	.main.main--product-list section.__information,
	.main.main--product-list section.__content-bottom,
	.main.main--product-detail section.__breadcrumb,
	.main.main--product-detail section.__heading,
	.main.main--product-detail section.__child,
	.main.main--product-detail section.__content-top,
	.main.main--product-detail section.__pagination,
	.main.main--product-detail section.__information,
	.main.main--product-detail section.__content-bottom {
		padding-left: 0;
		padding-right: 0;
	}
	
	.c-h1 {
		padding: 2vw 0 2vw 8vw !important;
		font-size: 5.5vw;
		background-size: auto 6.8vw;
	}
	
	.c-form select, .c-form textarea {
		font-size: 3.1vw;
	}
	.__view-control .c-button {
		width: 11vw;
		height: 11vw;
	}
	
	.main.main--product-list section.__list {
		padding-top: 5vw;
	}
	.main.main--product-list section.__control .__item-count,
	.main.main--product-list section.__control .__sort-control,
	.main.main--product-list section.__control .__view-control {
		width: 100%;
		padding: 1.5vw;
	}
	
	.p-product-block ul.__product {
		gap: 3.9vw;
		padding: 0 0 6.5vw;
		overflow: visible;
	}
	.p-product-block ul.__product li.__item {
		width: calc(50% - 2vw);
		border-radius: 2.6vw;
		box-shadow: 0 0.4vw 2vw 0 rgba(0, 0, 0, 0.15);
	}
	.p-product-block ul.__product li.__item:hover {
		box-shadow: 0 0.4vw 2vw 0 rgba(0, 0, 0, 0.15);
	}
	.p-product-block ul.__product li.__item a .__photo img {
		border-radius: 2.6vw 2.6vw 0 0;
	}
	.p-product-block ul.__product li.__item a .__photo .__noimage .__wrap span {
		font-size: 2.7vw;
	}
	.p-product-block ul.__product li.__item a .__status {
		padding: 0 2.6vw 0;
	}
	.p-product-block ul.__product li.__item a .__title {
		padding: 1.5vw 2.6vw 0;
	}
	.p-product-block ul.__product li.__item a .__description {
		padding: 1.5vw 2.6vw 0;
	}
	
	.main.main--product-list section.__list.__list--row ul.__product {
		background-color: #fff;
		border-top: 1px solid #ddd;
	}
	.main.main--product-list section.__list.__list--row ul.__product > li.__item {
		margin-bottom: 0;
		border-top: none;
	}
	
	.p-pagination .__information {
		font-size: 3.1vw;
	}
	.p-pagination .__link {
		gap: 0;
	}
	.p-pagination .__link ul.__page {
		gap: 1vw;
	}
	.p-pagination .__link ul.__page li {
		font-size: 3.1vw;
	}
	
	.p-pagination .__link .__prev a,
	.p-pagination .__link .__next a {
		width: 100%;
		height: 11.5vw;
		font-size: 3.1vw;
	}
	.p-pagination .__link ul.__page li.__active span {
		width: 11.5vw;
		height: 11.5vw;
	}
	.p-pagination .__link ul.__page li.__link a {
		width: 11.5vw;
		height: 11.5vw;
	}
	.p-pagination .__link .__prev a:before {
		width: 1.6vw;
		height: 1.6vw;
	}
	.p-pagination .__link .__next a:after {
		width: 1.6vw;
		height: 1.6vw;
	}
	.p-pagination .__link .__prev a span,
	.p-pagination .__link .__next a span {
		width: 2vw;
	}
}




/* ---------------------------------------------------------------- */
/* page - news */
/* ---------------------------------------------------------------- */
.wrapper--news .main--news section.__breadcrumb {
	padding: 0 2em !important;
}
.wrapper--news .main--news section.__article .__title,
.wrapper--news .main--news section.__article .__date,
.wrapper--news .main--news section.__to-list {
	padding: 0 2em !important;
}
.wrapper--news .main--news section.__article .__content figure {
	text-align: center;
}
@media screen and (max-width: 750px) {
	.wrapper--news .main--news-detail {
		padding: 3.2vw 0 !important;
	}
	.wrapper--news .main--news section.__heading {
		padding-left: 0;
		padding-right: 0;
	}
	.wrapper--news .main--news section.__breadcrumb {
		padding: 0 1em !important;
	}
	.wrapper--news .main--news section.__article .__title,
	.wrapper--news .main--news section.__article .__date,
	.wrapper--news .main--news section.__to-list {
		padding: 0 1em !important;
	}
}




/* ---------------------------------------------------------------- */
/* page - other */
/* ---------------------------------------------------------------- */
.main.main--order section.__block h2.__heading {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8em;
}
.main.main--corporate .__open .__title {
	padding-left: 0;
	padding-right: 0;
	font-weight: 400;
}

@media screen and (max-width: 960px) {
	.main.main--mypage > .__heading {
		margin: 1em 0 0 1rem;
	}
	.main.main--order section.__block h2.__heading,
	.main.main--order section.__block > .__body > .__description {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen and (max-width: 750px) {
	.main.main--order section.__block h2.__heading,
	.main.main--order section.__block > .__body > .__description {
		padding: 0 1rem;
	}
	.main.main--order section.__block--order h2.__heading {
		padding-left: 0;
		padding-right: 0;
	}
	
	.main.main--login section.__heading,
	.main.main--login section.__content-top, .main.main--login section.__submit,
	.main.main--regist section.__heading,
	.main.main--order section.__heading,
	.main.main--contact section.__heading,
	.main.main--contact-form section.__content-top,
	.main.main--contact-form section.__content-bottom,
	.main.main--contact-form section.__submit,
	.main.main--contact-finish section.__content-top,
	.main.main--contact-finish section.__content-bottom,
	.main.main--contact-finish section.__submit,
	.main.main--cart section.__heading,
	.main.main--password-form section.__heading {
		padding-left: 3.9vw;
		padding-right: 3.9vw;
	}
	.main.main--corporate section.__heading {
		padding-left: 0;
		padding-right: 0;
	}
	.main.main--contact-form section.__submit,
	.main.main--contact-finish section.__submit {
		margin-top: 2em;
	}
	.main.main--corporate .__open .__title {
		padding-left: 0;
		padding-right: 0;
	}
	.main.main--regist-form .__submit, .main.main--regist-confirm .__submit {
		margin-top: 2em;
		padding-left: 5%;
		padding-right: 5%;
	}
	.p-form-flow {
		width: 90%;
	}
}

.popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.popup-content {
  background: white;
  max-width:90%;
  padding: 30px;
  border-radius: 10px;
  text-align: center;
  font-size: 18px;
}

#confirmBtn{
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}


#confirmBtn {
  margin-top: 20px;
  padding: 20px 60px;
  font-size: 18px;
  background-color: #436180;
  color: white;
  font-weight:bold;
  border-radius: 10px;
}

.main--product-list-category .categories{
    display: flex;
    gap: 1em;
}

.main--product-list-category .categories a{
    width: calc(50% / 3);
}

@media screen and (max-width: 960px) {
    .main--product-list-category .categories a{
        width: calc(90% / 3);
    }
}

#popup {
    display: none;
}

.pswp__caption__center {
  font-size: 30px !important;
  padding: 50px !important;
  line-height: 1.2 !important;
}


/* 坂本追加分カートポジション */
.__submit.c-button-submit.__js-add-cart {
  position: fixed !important;
  bottom: 40px;
  right: 75px;
  z-index: 9999;
  background-color: #007bff !important;
  color: #fff !important;
  border: none !important;
  padding: 18px 32px !important; /* サイズ*/
  border-radius: 10px;
  font-size: 20px !important; /* テキスト */
  font-weight: 700 !important;
  box-shadow: 0 5px 12px rgba(0,0,0,0.25);
  cursor: pointer;
  transition: all 0.3s ease;
}

/* ホバー */
.__submit.c-button-submit.__js-add-cart:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 14px rgba(0,0,0,0.3);
}

/* スマホ */
@media (max-width: 768px) {
  .__submit.c-button-submit.__js-add-cart {
    bottom: 45px;
    right: 0px;
    font-size: 18px !important;
    padding: 14px 24px !important;
  }
}

/* 固定解除 */
.__submit.c-button-submit.__js-add-cart.is-bottom {
  position: static !important;
  box-shadow: none !important;
}


/* セットID 2861 非表示 するやつ*/
tr.__item--2861 {
    display: none !important;
}

/* セットID 2862 非表示するやつ */
tr.__item--2862 {
    display: none !important;
}

/* セットID 2863 非表示するやつ */
tr.__item--2863 {
    display: none !important;
}

/* セットID 2867 非表示するやつ */
tr.__item--2867 {
    display: none !important;
}

/* セットID 2868 非表示するやつ */
tr.__item--2868 {
    display: none !important;
}

/* セットID 2869 非表示するやつ */
tr.__item--2869 {
    display: none !important;
}

/* セットID 2872 非表示するやつ */
tr.__item--2872 {
    display: none !important;
}

/* セットID 2875 非表示するやつ */
tr.__item--2875 {
    display: none !important;
}

/* セットID 2873 非表示するやつ */
tr.__item--2873 {
    display: none !important;
}

/* ご利用画面アイコン消すやつ */
.main.main--howto .__step .__body ul.__list li.__item:before {
    display: none !important;
    content: none !important;  
    background-image: none !important;
}

.main.main--howto .__step h2.__heading {
display: none;
}