body.page-detail {
	background-color: #e8deda;
}

body.page-detail .p-header {
	height: 0;
}

.column-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -0.9rem 3.2rem;
}

.column-list>li {
	flex: 0 50%;
	max-width: 50%;
	padding: 0 .9rem;
}

.column-list>li:nth-child(n+3) {
	margin-top: 1.8rem;
}

.column-item {
	display: block;
}

.column-item__img {
	margin-bottom: 1rem;
}

.column-item__img img {
	border-radius: .5rem;
	width: 100%;
}

.column-item__ttl {
	font-size: 1.45rem;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: .4rem;
}

.column-item__sub {
	color: #a21432;
	font-size: 1.1rem;
	line-height: 1.36;
	margin-bottom: .9rem;
}

.column-item__date {
	font-size: 1.1rem;
	line-height: 1.36;
}

.column-detail-head {
	background-position: center;
	background-size: cover;
	display: flex;
	align-items: flex-end;
	height: 34.7rem;
	margin-bottom: 2.7rem;
	position: relative;
	padding-bottom: 2.3rem;
}

.column-detail-head .__ttl span {
	background-color: #fff;
	display: inline-block;
	font-size: 2.6rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .1em;
	margin-bottom: .8rem;
	padding: 0 1.1rem;
}

.column-detail-head .__sub {
	background-color: #fff;
	color: #a21432;
	display: inline-block;
	font-size: 1.2rem;
	font-weight: 600;
	padding: .2rem .6rem;
}

.p-detail {
	background-color: #fff;
	border-radius: 1.5rem;
	padding: 2rem 2.2rem 3.4rem;
}

.p-detail__article:not(:last-child) {
	border-bottom: .1rem solid #707070;
	margin-bottom: 2.4rem;
	padding-bottom: 2.8rem;
}

.p-detail__article sup {
	font-size: .6em;
}

.p-detail__ttl {
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .1em;
	margin-bottom: 1.6rem;
}

.p-detail__feature {
	margin-bottom: 1.8rem;
}

.p-detail__img {
	margin-bottom: 1.8rem;
}

.p-detail__img.p-detail__img--chart {
	margin-bottom: 3rem;
}

.p-detail__img.p-detail__img--bt {
	margin: 1.8rem 0 0;
}

.p-detail h3:not(.product-item__ttl) {
	border-left: 2px solid #a21432;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .05em;
	margin: 2.9rem 0 2.3rem;
	padding: .4rem 0 .4rem 1.1rem;
}

.p-detail p {
	margin-bottom: 1.8rem;
}

.p-detail p:last-child {
	margin-bottom: 0;
}

.p-detail img {
	display: block;
	border-radius: .5rem;
	margin: 0 auto;
}

.p-detail .note {
	font-size: .8rem;
	letter-spacing: .05em;
}

.p-detail .detail-box {
	background-color: #ebebeb;
	border-radius: .5rem;
	margin-bottom: 2.4rem;
	padding: 2.3rem 2.2rem;
}

.p-detail .detail-box__ttl {
	display: flex;
	align-items: center;
	font-size: 1.4rem;
	font-weight: 600;
	letter-spacing: .05em;
	margin-bottom: 1.5rem;
}

.p-detail .detail-box__ttl::before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .45rem 0 .45rem 1.1rem;
	border-color: rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) #a21432;
	margin-right: .7rem;
}

.p-detail .detail-box__txt {
	font-size: 1.25rem;
	line-height: 1.84;
	letter-spacing: 0;
}

.p-detail .product-item {
	margin-bottom: 3.3rem;
}

.p-detail .product-item__brand {
	font-size: 1.2rem;
}

.p-detail .product-item__ttl {
	font-size: 2rem;
}

.p-detail .product-item__sub {
	font-size: 1.1rem;
}

.p-detail .product-item__txt {
	font-size: 1.3rem;
}

.p-detail .product-item__txt sup {
	margin-left: -0.5rem;
}

.p-detail .product-item__txt2 {
	font-size: 1.1rem;
}

.p-detail .product-item__media {
	font-size: 1.1rem;
	letter-spacing: -0.04em;
}

.p-detail .product-item__btn {
	margin-top: 1.6rem;
}

.p-detail .product-item__btn .btn:not(:last-child) {
	margin-bottom: 1.4rem;
}

.p-detail .product-item__btn .btn-black--2 {
	font-size: 1.5rem;
}

.number-list {
	counter-reset: numberList;
	margin-bottom: 2.4rem;
}

.number-list li {
	background-color: #ebebeb;
	border-radius: .5rem;
	display: flex;
	align-items: center;
	font-size: 1.35rem;
	line-height: 1.48;
	margin-bottom: 1.46rem;
	padding: .3rem 1.3rem .2rem .7rem;
}

.number-list li.large {
	padding: 1rem 1.3rem 1rem .7rem;
}

.number-list li::before {
	content: counter(numberList);
	counter-increment: numberList;
	color: #a21432;
	font-family: "DM Sans",sans-serif;
	font-size: 3.5rem;
	font-weight: 500;
	flex-shrink: 0;
	text-align: center;
	width: 4.8rem;
}

.number-list li:last-child {
	margin-bottom: 0;
}

.check-list li {
	background-color: #ebebeb;
	border-radius: .5rem;
	display: flex;
	align-items: center;
	font-size: 1.3rem;
	line-height: 1.9;
	letter-spacing: -0.08em;
	margin-bottom: 1.1rem;
	padding: .7rem .7rem .7rem 1rem;
}

.check-list li::before {
	content: "";
	background: url("../images/common/icon_tick.svg") no-repeat center/contain;
	height: 1.4rem;
	width: 1.4rem;
	margin-right: 1.2rem;
	flex-shrink: 0;
}

.check-list li:last-child {
	margin-bottom: 0;
}

.p-toc {
	border-bottom: .1rem solid #707070;
	counter-reset: toc;
	margin-bottom: 2.4rem;
	padding-bottom: 2.8rem;
}

.p-toc li {
	line-height: 2;
}

.p-toc li::before {
	content: counter(toc) ".";
	counter-increment: toc;
	margin-right: .5rem;
}

.news-head {
	border: 1px solid #707070;
	border-radius: .5rem;
	margin-bottom: 4.6rem;
	padding: 2.6rem 1.9rem;
}

.news-head__ttl {
	font-size: 1.45rem;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: 1.9rem;
}

.news-head__list li {
	margin-bottom: 3rem;
}

.news-head__list li:last-child {
	margin-bottom: 0;
}

.news-head__date {
	font-size: 1.1rem;
}

.news-head__txt {
	font-size: 1.2rem;
	line-height: 2;
	text-decoration: underline;
	text-underline-offset: .3rem;
	overflow: hidden;
}

.news-head .text-quote {
	display: inline-flex;
	position: relative;
}

.news-head .text-quote::before {
	content: "【";
	position: relative;
	left: -0.8rem;
	top: 0;
	margin-right: -0.8rem;
}

.news-head .text-quote::after {
	content: "】";
}

.news-list {
	margin-bottom: 3rem;
}

.news-list>li {
	margin-bottom: 4.2rem;
}

.news-list>li:last-child {
	margin-bottom: 0;
}

.p-detail-doctor {
	background-color: #fff;
	border-radius: 1.5rem;
	margin-top: 2.7rem;
	padding: 3.9rem 3.7rem 4.1rem;
}

.p-detail-doctor__ttl {
	border-bottom: 1px solid #8f1028;
	color: #a21432;
	font-size: 1.9rem;
	font-weight: 300;
	line-height: 1.3;
	margin-bottom: 2.4rem;
	padding-bottom: 3.1rem;
	text-align: center;
}

.p-detail-doctor__info {
	display: flex;
	align-items: center;
	margin-bottom: 1.4rem;
}

.p-detail-doctor__img {
	flex-shrink: 0;
	margin-right: 1.9rem;
	width: 11.8rem;
}

.p-detail-doctor__pos {
	color: #a21432;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: .075em;
	margin-bottom: .8rem;
}

.p-detail-doctor__name {
	font-size: 3.5rem;
	font-weight: 300;
	line-height: 1.2;
	letter-spacing: .045em;
}

.p-detail-doctor__sub {
	font-size: 1.1rem;
	font-weight: 300;
	margin-top: .3rem;
	padding-left: 1rem;
}

.p-detail-doctor__bold {
	font-size: 1.1rem;
	font-weight: 600;
	margin-bottom: 1.2rem;
}

.p-detail-doctor__txt {
	font-size: 1rem;
	margin-bottom: 2.4rem;
}

.p-detail-doctor .btn-radius {
	width: 15.9rem;
}

.news-detail-head {
	margin-bottom: 1.25rem;
}

.news-detail-head .info {
	display: flex;
	align-items: center;
	margin-bottom: 1.2rem;
}

.news-detail-head .info .date {
	font-size: 1.45rem;
	margin-right: 1.1rem;
}

.news-detail-head .info .cate {
	border: .1rem solid #a21432;
	border-radius: 3.5rem;
	color: #a21432;
	font-size: 1rem;
	font-weight: 400;
	padding: .35rem 1.5rem;
}

.news-detail-head .info .cate--spec {
	border-color: #f78065;
	color: #f78065;
}

.news-detail-head .title {
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: .1em;
}

.news-detail-head .sub {
	color: #a21432;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.6666666667;
	margin-top: 1.1rem;
}

.news-feature {
	margin: 0 -2.5rem 2.2rem;
}

.news-feature img {
	width: 100%;
}

.news-detail-body {
	line-height: 1.724;
}

.news-detail-body p {
	margin-bottom: 2.8rem;
}

.news-detail-body p:last-child {
	margin-bottom: 0;
}

.news-detail-body h2 {
	display: flex;
	align-items: center;
	font-size: 2rem;
	font-weight: 500;
	min-height: 5.5rem;
	line-height: 1.67;
	letter-spacing: .1em;
	margin: 0 0 2.3rem;
	padding-left: 2rem;
	position: relative;
}

.news-detail-body h2::before {
	content: "";
	background-color: #a21432;
	width: 4px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
}

.news-detail-body h2 span {
	font-size: 1rem;
}

.news-detail-body h3 {
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.6;
	margin-bottom: 3rem;
}

.news-detail-body h4 {
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: 1.3rem;
}

.news-detail-body .tbl-dl dt {
	margin-bottom: 1.6rem;
}

.news-detail-body .tbl-dl dt span {
	background-color: #a21432;
	color: #fff;
	display: inline-block;
	font-size: 1.45rem;
	letter-spacing: -0.02em;
	padding: .1rem 1rem;
}

.news-detail-body .tbl-dl dd {
	font-size: 1.65rem;
	font-weight: 500;
	margin: 0 0 3.6rem;
}

.news-detail-body .tbl-dl dd:last-child {
	margin-bottom: 0;
}

.news-detail-body .tbl-dl .tbl-note__ttl {
	font-size: 1.65rem;
	font-weight: 500;
	line-height: 1.5151515152;
	margin-bottom: 1.8rem;
}

.news-detail-body .tbl-dl .tbl-note__item:not(:last-child) {
	margin-bottom: 2.75rem;
}

.news-detail-body .tbl-dl .tbl-note__row {
	display: flex;
	margin: 1.1rem -0.6rem 0;
}

.news-detail-body .tbl-dl .tbl-note__col {
	padding: .6rem;
}

.news-detail-body .tbl-dl .tbl-note-txt {
	font-size: .9rem;
	font-weight: 300;
	letter-spacing: -0.01em;
	margin-top: 2.05rem;
}

.news-detail-body .tbl-dl .box {
	background-color: #ebebeb;
	border-radius: .5rem;
	padding: 1.9rem 1.67rem 1.48rem 2.9rem;
}

.news-detail-body .tbl-dl .box-wrap {
	display: flex;
	align-items: center;
	margin: 0 -1.5rem;
}

.news-detail-body .tbl-dl .box-col {
	flex: 1 1;
	padding: 0 1.5rem;
}

.news-detail-body .tbl-dl .box-num {
	flex: 0 0 9.194rem;
	position: relative;
}

.news-detail-body .tbl-dl .box-num::after {
	background-color: #a21432;
	content: "";
	width: .2rem;
	height: 5.292rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	bottom: 0;
}

.news-detail-body .tbl-dl .box-num__wrap {
	display: flex;
	align-items: center;
}

.news-detail-body .tbl-dl .box-num__wrap div {
	margin-left: .6rem;
}

.news-detail-body .tbl-dl .box-num .num {
	color: #a21432;
	font-size: 4rem;
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1;
}

.news-detail-body .tbl-dl .box-num .per {
	color: #a21432;
	display: block;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1;
	margin-bottom: .5rem;
}

.news-detail-body .tbl-dl .box-num .txt {
	color: #a21432;
	display: block;
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1;
}

.news-detail-body .tbl-dl .box-txt .txt {
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: -0.05em;
	margin-bottom: .5rem;
}

.news-detail-body .tbl-dl .box-txt .ttl {
	font-size: 1.6rem;
	font-family: "Montserrat",sans-serif;
	font-weight: 600;
	letter-spacing: .025em;
	line-height: 1;
}

.news-detail-body .tbl-dl .box-txt .ttl span {
	color: #a21432;
	font-size: 1.9rem;
	font-family: "Noto Sans JP",sans-serif;
	letter-spacing: -0.06em;
}

.news-detail-body .tbl-dl .box--small {
	padding: 1.1rem .8rem .7rem 1.4rem;
}

.news-detail-body .tbl-dl .box--small .box-wrap {
	margin: 0 -0.7rem;
}

.news-detail-body .tbl-dl .box--small .box-col {
	padding: 0 .7rem;
}

.news-detail-body .tbl-dl .box--small .box-num {
	flex: 0 0 4.432rem;
}

.news-detail-body .tbl-dl .box--small .box-num::after {
	height: 2.552rem;
}

.news-detail-body .tbl-dl .box--small .box-num__wrap div {
	margin-left: .3rem;
}

.news-detail-body .tbl-dl .box--small .box-num .num {
	font-size: 2rem;
}

.news-detail-body .tbl-dl .box--small .box-num .per {
	font-size: .9rem;
	margin-bottom: .2rem;
}

.news-detail-body .tbl-dl .box--small .box-num .txt {
	font-size: .6rem;
}

.news-detail-body .tbl-dl .box--small .box-txt .txt {
	font-size: .55rem;
	letter-spacing: -0.05em;
	white-space: nowrap;
	margin-bottom: 0;
}

.news-detail-body .tbl-dl .box--small .box-txt .ttl {
	font-size: .7rem;
}

.news-detail-body .tbl-dl .box--small .box-txt .ttl span {
	font-size: .9rem;
}

.p-product {
	background-color: #fff;
	border-radius: 1.5rem;
	margin-top: 5rem;
	padding: 3.6rem 2.1rem;
}

.p-product__logo {
	margin-bottom: .9rem;
	text-align: center;
}

.p-product__logo img {
	width: 20.6rem;
}

.p-product__txt {
	color: #a21432;
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: .108em;
	margin-bottom: 3rem;
	text-align: center;
}

.p-product__list {
	margin-bottom: 2.8rem;
}

.p-product__list>li {
	margin-bottom: 1.95rem;
}

.p-product__list>li:last-child {
	margin-bottom: 0;
}

.p-product__list .item {
	background: #e6e6e6 url("../images/common/icon_arrow_thin.svg") no-repeat right 2.4rem center;
	background-size: .8rem 1.4rem;
	border-radius: .5rem;
	display: flex;
	align-items: center;
	height: 100%;
	padding: 0 0 0 1.9rem;
}

.p-product__list .item__img {
	flex-shrink: 0;
	margin-right: 1.2rem;
	width: 7.5rem;
}

.p-product__list .item__ttl {
	font-size: 1.2rem;
	font-weight: 400;
	letter-spacing: .05em;
}

.modal .common-desc {
	font-size: 2.1rem;
}

.modal .hline01 {
	font-size: 2.1rem;
	margin-bottom: 1.4rem;
}

.modal .p-doctor__img {
	margin: 2rem 0 .5rem;
}

.modal .p-doctor__txt {
	font-size: 1.25rem;
	margin-bottom: 2.3rem;
	padding-bottom: 2.3rem;
}

.modal .p-doctor__info .pos {
	font-size: 1.2rem;
}

.modal .p-doctor__info .name {
	font-size: 2.5rem;
	margin-bottom: 0;
}

.modal .p-doctor__info .sub {
	font-size: .8rem;
}

.modal .p-doctor__row {
	font-size: 1rem;
	letter-spacing: .041em;
}

.modal .p-doctor__row:last-child {
	background: none;
	margin-bottom: 0;
}

.store-txt {
	margin-bottom: 3.4rem;
}

.store-list {
	margin-bottom: 4rem;
}

.store-list:last-child {
	margin-bottom: 0;
}

.store-list li {
	margin-bottom: 1.8rem;
}

.store-list li:last-child {
	margin-bottom: 0;
}

.store-list li a {
	background: #000 url("../images/common/icon_link02.svg") no-repeat right .5rem top .4rem;
	background-size: .6rem;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.45rem;
	font-weight: 400;
	letter-spacing: .05em;
	height: 5.5rem;
}

.news-detail-biography {
	font-size: 1rem;
	font-weight: 300;
	letter-spacing: .041em;
	line-height: 1.7;
	padding: 2.3rem 0 2.44rem;
	position: relative;
}

.news-detail-biography::before,
.news-detail-biography::after {
	content: "";
	background: url("../images/common/icon_dot.webp") repeat-x center;
	background-size: auto 100%;
	height: .5rem;
	position: absolute;
	left: 0;
	right: 0;
}

.news-detail-biography::before {
	top: 0;
}

.news-detail-biography::after {
	bottom: 0;
}

.news-detail-box {
	background-color: #e8deda;
	border-radius: 5px;
	padding: 2.5rem 2.7rem 2.77rem;
	margin: 3.5rem 0 5.5rem;
}

.news-detail-box__ttl {
	text-align: center;
	margin-bottom: 1.9rem;
}

.news-detail-box__ttl span {
	color: #a21432;
	font-size: 1.4rem;
	font-weight: 600;
	letter-spacing: .05em;
	line-height: 1.7142857143;
	border-bottom: 1px solid #a21432;
	padding-bottom: .5rem;
}

.news-detail-box__txt {
	color: #3c3c3c;
	font-size: 1.45rem;
	font-weight: 300;
	letter-spacing: -0.02em;
	line-height: 1.724137931;
}

.product {
	margin-top: 7.15rem;
}

.product-ttl {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.67;
	letter-spacing: .1em;
	margin: 0 0 5.34rem;
	padding-left: 2rem;
	position: relative;
}

.product-ttl::before {
	content: "";
	background-color: #a21432;
	width: 4px;
	height: 5.525rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	bottom: 0;
	left: 0;
}

.product-ttl.product-ttl--small {
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: .05em;
	margin-bottom: 2.3rem;
	padding-left: 1.2rem;
}

.product-ttl.product-ttl--small::before {
	top: -0.2rem;
	bottom: -0.4rem;
	height: auto;
	transform: none;
}

.product-ttl span {
	font-size: 1rem;
}

.product-item:not(:last-child) {
	margin-bottom: 4.8rem;
}

.product-item__brand {
	font-size: 1.4rem;
	font-family: "Montserrat",sans-serif;
	font-weight: 700;
	letter-spacing: .025em;
	line-height: 1.7857142857;
	text-align: center;
}

.product-item__ttl {
	font-size: 2.3rem;
	font-family: "Montserrat",sans-serif;
	font-weight: 600;
	letter-spacing: .025em;
	line-height: 1.0869565217;
	text-align: center;
	white-space: nowrap;
	margin-top: .2rem;
}

.product-item__sub {
	font-size: 1.3rem;
	font-weight: 300;
	letter-spacing: -0.031em;
	line-height: 1.6923076923;
	text-align: center;
	margin-top: .4rem;
}

.product-item__media {
	margin: 1.6rem auto 2rem;
}

.product-item__txt {
	color: #a21432;
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: .005em;
	line-height: 1.5625;
}

.product-item__txt2 {
	font-size: 1.2rem;
	font-weight: 300;
	letter-spacing: -0.04em;
	line-height: 2.25;
	margin-top: .9rem;
}

.product-item__btn {
	margin-top: 1.95rem;
}

.product-item__btn .btn:not(:last-child) {
	margin-bottom: 1.7rem;
}

.product-item__features {
	background-color: #ebebeb;
	border-radius: .5rem;
	padding: 2.77rem 2.55rem 5.1rem 2.7rem;
	margin-top: 4.8rem;
}

.product-item__features .features-ttl {
	text-align: center;
	margin-bottom: 2.35rem;
}

.product-item__features .features-ttl span {
	font-size: 1.45rem;
	font-weight: 300;
	letter-spacing: -0.02em;
	line-height: 1.724137931;
	border-bottom: 1px solid #000;
}

.product-item__features .features-item:not(:last-child) {
	margin-bottom: 3.45rem;
}

.product-item__features .features-item__point {
	background-color: #a21432;
	color: #fff;
	font-size: .7rem;
	font-family: "Montserrat",sans-serif;
	font-weight: 600;
	letter-spacing: .05em;
	line-height: 1.1428571429;
	min-width: 4.2rem;
	padding: .4rem .3rem .3rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.product-item__features .features-item__ttl {
	color: #a21432;
	font-size: 1.55rem;
	font-weight: 700;
	letter-spacing: -0.005em;
	line-height: 1.6774193548;
	margin-top: 1rem;
}

.product-item__features .features-item__txt {
	font-size: 1.25rem;
	font-weight: 300;
	letter-spacing: -0.075em;
	line-height: 1.84;
	margin-top: 1.2rem;
}

.product-item__features .features-item__small {
	font-size: .8rem;
	font-weight: 300;
	letter-spacing: -0.04em;
	line-height: 1.5;
}

