@charset "UTF-8";
@font-face {
	font-family: "Noto Sans JP";
	font-style: normal;
	font-weight: 700;
	src: url("../font/Noto Sans JP Bold.woff") format("woff");
	font-display: swap;
}
@font-face {
	font-family: "Noto Sans JP";
	font-style: normal;
	font-weight: 400;
	src: url("../font/Noto Sans JP Regular.woff") format("woff");
	font-display: swap;
}
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
html {
	font-size: 62.5%;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.8;
	letter-spacing: 0;
	box-sizing: border-box;
	color: var(--Text);
	--Text: #393939;
	--Text_blue: #1a0dab;
	--Main: #3bbbc7;
	--Sub: #4473c7;
	--Accent: #a71616;
	--Back: #f66c21;
	--Grey: #707f89;
	--CTA:#CC2E23;
	--yellow: #fef8d0;

}

body {
	font-size: 1rem;
	box-sizing: border-box;
	line-height: 1.8;
	background-color: #fff;
	word-break: break-all;
	overflow-x: hidden;
	position: relative;
	font-feature-settings: "palt";
}
img{
	width: 100%;
	height: auto;
}
.accent{
	color: #CC2E23;
	font-weight: bold;
}
.yellow{
	color: var(--yellow);
	font-weight: bold;
}

.forPC {
	display: inline-block;
}
.forSP {
	display: none;
}
.adTxt {
	text-align: right;
	max-width: 1000px; /* 横幅 LPに合わせて調整 */
	padding: 0;
	margin: 0 auto;
}
#area .adTxt{
	margin: 0 auto 6px;
}
.adTxt span {
	font-size: 18px;
	font-weight: bold;
	border: 1px solid var(--Text); /* 枠色 変数名がTextでない場合は変更 */
	padding: 2px 14px;
	background-color: #fff;
}

.txt--clinicfor {
	font-size: 16px;
	text-align: right;
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	margin-top: -4px;
}
#area .txt--clinicfor{
	display: none;
}
/* ========================================================
20240606 header ロゴ追加
=========================================================*/
.header__logo{
	height: 35px;
	width: 100%;
	background-color: #fff;
}
.header__logo::before{
	position: absolute;
	content: "";
	background: url(https://revive-cure.com/aga/assets/img/Revive_Cure_header.svg)no-repeat center;
	background-size: 100%;
	top: 0;
	left: 0;
	width: 194px;
	height: 35px;
	background-color: #fff;
	z-index: 100;
}

.marker {
    background: linear-gradient(transparent 70%, var(--yellow) 70%);
}
/* ------------------------------
ヘッダー
------------------------------ */
#HEADER_LINE {
}

#HEADER_LINE .header_line {
	width: 1000px;
	margin: 0 auto;
}

#HEADER_LINE .header_line h1 {
	font-weight: normal;
}

header {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto 6px;
	position: relative;
}
/* ------------------------------
コンテンツエリア
------------------------------ */
#CONTENTS .contents {
	font-size: 1.6rem;
	width: 1000px;
	margin: 0 auto;
	max-width: 100%;
}
/* ------------------------------
TYPE
------------------------------ */
section.type{
	background-color: var(--Main);
	padding-bottom: 30px;
	margin-top: 70px;
}
.type__wrap{
	display: grid;
    grid-template-columns: 35% 1fr 1fr;
	gap: 16px;
	padding: 0 30px;
	margin-top: 30px;
}
.type__box{
	border-radius: 10px;
    text-align: center;
    background-color: #fff;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
	gap: 0;
}
.type__box__head{
	border-radius: 10px 10px 0 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	   font-family: 'Roboto', 'Helvetica Neue', Arial, sans-serif;
}
.type__head__num{
	font-size: 30px;
	margin-right: 4px;
}
.type__box:nth-of-type(1) .type__box__head{
	background-color: #ba9144;
}
.type__box:nth-of-type(2) .type__box__head{
	background-color: #888888;
}
.type__box:nth-of-type(3) .type__box__head{
	background-color: #d38358;
}
.type_ttl_bnr{
	margin: 0 auto;
	display: block;
}
.type__box__inner{
    padding: 30px;
    border-radius: 0 0 10px 10px;
    display: grid;
    grid-template-rows: 313px 38px 59px 1fr;
	gap: 10px;
}
.type__box:nth-of-type(1) .type__box__inner{
	background-color: #fef8d0;
}
.type__box:nth-of-type(2) .type__box__inner{
	background-color: #e9edf3;
}
.type__box:nth-of-type(3) .type__box__inner{
	background-color: #f4e5dc;
}
.type__box__logo {
    padding: 4px 10px;
    display: flex;
    justify-content: center;
	align-items: center;
}
.type__box__logo.dmm a{
	display: flex;
    justify-content: center;
}
.type__box__logo.padding img{
    padding: 8px;
	box-sizing: border-box;
}
.type__box__logo img{
    width: auto;
}
.type__box__ttl{
	font-weight: bold;
    background-color: #fff;
    border-radius: 40px;
    padding: 4px 0;
}
.type__box__bnr{
	display: flex;
	justify-content: center;
	align-items: center;
}
.type__box__txt{
	font-size: 16px;
	line-height: 1.3;
}
.type__box__txt .price__num{
	font-size: 28px;
}
a.cta{
    border-radius: 40px;
    background-color: var(--CTA);
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    padding: 10px 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    font-size: 18px;
    width: 100%;
    box-sizing: border-box;
    text-decoration: none;
}
.type__annotation{
	line-height: 1;
    padding: 0 30px;
    margin-top: 6px;
}
/* ------------------------------
REVIEW
------------------------------ */
section.review{
	background: repeating-linear-gradient(90deg, #d5f1f3, #d5f1f3 1px, transparent 1px, transparent 32px), repeating-linear-gradient(0deg, #d5f1f3, #d5f1f3 1px, #fff 1px, #fff 32px);
    background-size: 32px 32px;
    background-position: 50% 50%;
    aspect-ratio: 3.3 / 2.9;
    position: relative;
	width: 100%;
}
.review__wrap{
	padding: 0 60px 30px;
}
.type_review_bnr{
	margin: 0 auto;
	display: block;
}
.review__icon{
    position: absolute;
    content: "";
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    height: 50px;
    width: 50px;
    display: block;
}
.review__icon::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: url(https://revive-cure.com/aga/assets/img/review__icon.svg)no-repeat center;
	background-size:64%;
	top: 0%;
	left: 0;
}
.review__icon::after{
	position: absolute;
	content: "";
	width: 2px;
	height: 100%;
	top: 0%;
	right: -24%;
	background-color: var(--Main);
}
.review__wrap dl{
	text-align: center;
}
.review__wrap dl.review_kuchikomi{
	margin-top: 54px;
}
.review__wrap dt{
	border: solid 2px var(--Main);
    border-radius: 8px;
    box-shadow: 5px 7px 0px 4px var(--Main);
	font-size: 26px;
    background-color: #fff;
	display: inline-block;
	padding: 16px 30px 16px 100px;
	position: relative;
	font-weight: bold;
	box-sizing: border-box;
	width: 100%;
}
.review__wrap .review_graph dt{
    padding: 20px 30px 20px 100px;
}
.review__wrap .review_kuchikomi dd{
	align-items: center;
	gap: 30px;
}
.review__wrap .review_kuchikomi dd:first-of-type{
	margin-top: 28px;
}
.review__wrap .review_kuchikomi dd:not(:first-of-type){
	margin-top: 6px;
}
.review__wrap .review_kuchikomi dd:nth-of-type(odd){
	justify-content: right;
	display: grid;
    grid-template-columns: 84% 87px;
	padding: 0px 40px;
}
.review__wrap .review_kuchikomi dd:nth-of-type(even){
	justify-content: left;
	display: grid;
	grid-template-columns: 87px 84%;
	padding: 0px 40px;
}
.review__wrap .review_graph dd{
	/* display: grid;
	grid-template-columns: 380px 1fr;
	align-items: center; */
	gap: 50px;
	margin-top: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.review__ico{
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.review_kuchikomi .review__txt{
	background-color: var(--Sub);
	font-size: 22px;
    padding: 14px 12px;
	border-radius: 14px;
	color: #fff;
	position: relative;
}
.review_kuchikomi .review__txt.left{
	text-align: left;
}
.review__wrap .review_kuchikomi dd:nth-of-type(odd) .review__txt{
	background-color: var(--Sub);
}
.review__wrap .review_kuchikomi dd:nth-of-type(even) .review__txt{
	background-color: var(--Main);
}
.review__wrap .review_kuchikomi dd:nth-of-type(odd) .review__txt::before{
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 14px solid var(--Sub);
    border-right: 0;
    right: -14px;
    top: 30%;
}
.review__wrap .review_kuchikomi dd:nth-of-type(even) .review__txt::before{
	position: absolute;
    content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	border-right: 14px solid var(--Main);
	border-left: 0;
    left: -14px;
    top: 30%;
}
.review__wrap .review_graph .review__txt{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 20px;
}
.review__wrap .review_graph .review__txt .fukidashi{
    background-color: var(--Sub);
	color: #fff;
	font-size: 22px;
	padding: 16px 28px;
    border-radius: 14px;
	position: relative;
}
.review__wrap .review_graph .review__txt .fukidashi::before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-right: 14px solid var(--Sub);
    border-left: 0;
    left: -14px;
    top: 30%;
}
.review__wrap .review_graph .review__txt .bottom__tx{
	font-size: 22px;
	color: var(--Sub);
	font-weight: bold;
	text-decoration: underline;
	text-decoration-color: var(--Sub);
	line-height: 1.6;
}

.review__ico img.review_graph{
    width: 380px;
    height: 380px;
}
/* ------------------------------
MIN
------------------------------ */
section.min{
	padding-bottom: 10px;
	background-color: #fff;
}
/* .type_min_bnr{
	background-color: #EFFAFF;
} */
.min__table{
	border: solid 2px #b3b3b3;
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 0;
}
.min__table .min__table__logo{
	width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.min__table tr:first-of-type td:first-of-type .min__table__logo{
	aspect-ratio: unset;
}
.min__table tr:first-of-type th{
	width:9%;
}
.min__table th{
	font-size: 14px;
	background-color: #effaff;
	border-right: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
	padding: 10px 0;
}
.min__table tr:not(:last-of-type) th{
	border-bottom: solid 1px #b3b3b3;
}
.min__table tr:first-of-type th{
	border-top: solid 1px #b3b3b3;
}
.min__table tr:last-of-type th{
	border-bottom: solid 1px #b3b3b3;
}
.min__table td{
	width: calc(91%/5);
	font-size: 16px;
	text-align: center;
	padding: 20px 12px;
}
.min__table tr:nth-of-type(2) td{
	padding: 20px 12px;
}
#area .min__table tr:nth-of-type(2) td{
	padding: 10px 12px;
}
.min__table th + td,
.min__table td + td{
	border-bottom: solid 1px #b3b3b3;
	border-right: solid 1px #b3b3b3;
}
.min__table tr td:first-of-type{
	background-color: #fef8d0;
}
.min__table tr:first-of-type td{
	border-top: solid 1px #b3b3b3;
	padding: 10px;
}
.min__table tr:last-of-type td{
	vertical-align: bottom;
}
.min__table__name{
    font-size: 16px;
    margin-top: 10px;
    display: block;
}
.min__table__name.forSP{
	display: none;
}
.min__table__name.single{
	height: 43px;
    line-height: 43px;
}
.min__eva{
	display: block;
	margin-inline: auto;
	margin-bottom: 6px;
	width: 54px;
}
.min__table .cta{
	margin-top: 4px;
	padding: 14px 0;
}
.min__annotation{
	line-height: 1.1;
	padding: 0 10px;
}
/* ------------------------------
RANKING
------------------------------ */
section.ranking{
	background-color: #fff;
	margin-top: 40px;
}
.rank__wrap{
	margin-top: 40px;
}
.rank__box{
	border-radius: 40px;
    padding: 30px 40px 40px;
	background-color: #e8edf3;
}
.rank__box:not(:first-of-type){
	margin-top: 60px;
}
.rank__wrap > .rank__box:nth-of-type(1){
	background-color: #fef8d0;
}
.rank__wrap > .rank__box:nth-of-type(2){
	background-color: #e9edf3;
}
.rank__wrap > .rank__box:nth-of-type(3){
	background-color: #f4e5dc;
}
.rank__head{
	display: grid;
	grid-template-columns: 110px 1fr;
	height: 70px;
	gap: 24px;
	position: relative;
}
.rank__wrap > .rank__box:nth-of-type(1) .rank__head::after{
    position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/rank_ico01.svg) no-repeat center;
    background-size: 100%;
    width: 74px;
    height: 46px;
    left: 7%;
    top: -57px;
    transform: translateX(-50%);
}
.rank__wrap > .rank__box:nth-of-type(2) .rank__head::after{
    position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/rank_ico02.svg) no-repeat center;
    background-size: 100%;
    width: 74px;
    height: 46px;
    left: 7%;
    top: -57px;
    transform: translateX(-50%);
}
.rank__wrap > .rank__box:nth-of-type(3) .rank__head::after{
    position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/rank_ico03.svg) no-repeat center;
    background-size: 100%;
    width: 74px;
    height: 46px;
    left: 7%;
    top: -57px;
    transform: translateX(-50%);
}
.rank__num{
    position: relative;
       font-family: 'Roboto', 'Helvetica Neue', Arial, sans-serif;
    font-size: 60px;
    font-weight: bold;
    width: 110px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
	gap: 2px;
}
.rank__wrap > .rank__box:nth-of-type(1) .rank__num{
	color: #ba9144;
}
.rank__box .rank__num::before{
	position: absolute;
	content: "";
	width: 3px;
	height: 100%;
	background-color: #000;
	right: 0;
}
.rank__wrap >  .rank__box:nth-of-type(1) .rank__num::before{
	position: absolute;
	content: "";
	width: 3px;
	height: 100%;
	background-color: #ba9144;
	right: 0;
}
.rank__wrap > .rank__box:nth-of-type(2) .rank__num{
	color: #888888;
}
.rank__wrap >  .rank__box:nth-of-type(2) .rank__num::before{
	position: absolute;
	content: "";
	width: 3px;
	height: 100%;
	background-color: #888888;
	right: 0;
}
.rank__box:nth-of-type(3) .rank__num{
	color: #d38358;
}
.rank__wrap > .rank__box:nth-of-type(3) .rank__num::before{
	position: absolute;
	content: "";
	width: 3px;
	height: 100%;
	background-color: #d38358;
	right: 0;
}
.rank__box .rank__num__tail{
    font-size: 30px;
    margin-top: 18px;
}
.rank__name{
	font-size: 28px;
	line-height: 1.4;
}
.rank__name__catch{
	margin: 0;
	font-size: 16px;
}
.rank__box__bnr{
	margin-top: 18px;
}
.rank__table{
	border: solid 1px #b3b3b3;
	border-collapse: collapse;
	margin-bottom: 0;
}
.rank__table th{
	background-color: #d5f1f3;
	width: 21%;
	border-right: solid 1px #b3b3b3;
}
.rank__table tr:not(:last-of-type) th{
	border-bottom: solid 1px #b3b3b3;
}
.rank__table tr:not(:last-of-type) td{
	border-bottom: solid 1px #b3b3b3;
}
.rank__tag__list__wrap{
	margin-top: 10px;
}
.rank__tag__list{
    display: flex;
    flex-wrap: wrap;
    gap: 6px 4px;
}
.rank__tag{
	border: solid 1px var(--Sub);
    color: var(--Sub);
    border-radius: 20px;
    font-weight: bold;
    padding: 2px 10px;
    background-color: #fff;
    font-size: 14px;
}
.rank__tag.off{
	border: solid 1px #8e8e8e;
    color: #888888;
    background-color: #e9edf3;
}
.rank__point__wrap{
	margin-top: 40px;
	position: relative;
	border: solid 3px var(--Main);
	border-radius: 14px;
	background-color: #fff;
    padding: 26px 24px 24px;
}
.rank__point__wrap::before{
	position: absolute;
	content: "";
    width: 137px;
	height: 3px;
	background-color: #fff;
	left: 49.6%;
	transform: translateX(-50%);
	top: -3px;
}
.rank__point__head{
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 2px;
	position: absolute;
	content: "";
	top: -32px;
	left: 50%;
	transform: translateX(-50%);
}
.rank__point__head::before{
	position: absolute;
	content: "";
	height: 3px;
	width: 100%;
	bottom: 3px;
	left: 0;
	background-color: var(--Sub);
}
.rank__point__head::after{
	position: absolute;
	content: "";
	height: 3px;
	width: 50%;
	bottom: 3px;
	right: 0;
	background-color: var(--Main);
}
.rank__point__head span:nth-child(odd){
	color: var(--Sub);
}
.rank__point__head span:nth-child(even){
	color: var(--Main);
}
.rank__point__wrap p{
	margin-bottom: 0;
}
.rank__point__ttl{
    position: relative;
    font-size: 20px;
    font-weight: bold;
	padding-left: 28px;
}
.rank__point__ttl:not(:first-of-type){
	margin-top: 10px;
}
.rank__point__ttl::before{
	position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/icon_point.svg) no-repeat center;
    top: 50%;
    left: -2px;
    width: 28px;
    height: 28px;
    transform:translateY(-50%);
}
.rank__point__txt{
	font-size: 16px;
}
.rank__cta__wrap{
	text-align: center;
	margin-top: 30px;
}
.cta__catch{
	margin-bottom: 0;
	color: var(--Sub);
	font-size: 18px;
	text-align: center;
	display: inline-block;
	position: relative;
    padding: 0 24px;
	font-weight: bold;
}
.cta__catch::before{
    position: absolute;
    content: "";
    width: 2px;
    height: 80%;
    background-color: var(--Sub);
    transform: rotate(-32deg);
    bottom: 3px;
    left: 0;
}
.cta__catch::after{
    position: absolute;
    content: "";
    width: 2px;
    height: 80%;
    background-color: var(--Sub);
    transform: rotate(32deg);
    bottom: 3px;
    right: 0;
}
.cta.rank{
	font-size: 20px;
    margin-top: 6px;
    line-height: 1.3;
    padding: 16px 10px;
}
.cta.rank::before{
	position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/cta_btn_icon.svg) no-repeat center;
    background-size: 100%;
    width: 30px;
    height: 30px;
    right: 2%;
    top: 50%;
    transform: translateY(-50%);
}
.ranking__calender{
	width: 100%;
	text-align: center;
	margin-top: 30px;
}
.rank__more__btn{
	box-sizing: border-box;
    color: #fff;
    text-decoration: none;
    background: var(--Main);
    border-radius: 40px;
    font-size: 18px;
    font-weight: bold;
    width: calc(100% - 60px);
    padding: 20px;
    position: relative;
    cursor: pointer;
    margin: 60px auto;
	text-align: center;
}
.rank__more__btn::before{
    position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/rank_more_btn.svg) no-repeat center;
    background-size: 100%;
    width: 30px;
    height: 30px;
    right: 2%;
    top: 50%;
    transform: translateY(-50%);
}
.ranking__accordion_openarea{
	display: none;
}
/* ------------------------------
HIKAKU
------------------------------ */
.hikaku__container{
	background: repeating-linear-gradient(to right, /* 縦方向のストライプ */ #f7f9fc, /* ストライプの色1 */ #f7f9fc 31px, /* ストライプの幅 */ #ffffff 0px, /* ストライプの色2 */ #ffffff 51px /* ストライプの幅と次のストライプまでの間隔 */);
    border-radius: 50px;
	padding-bottom: 40px;
}
.hikaku__wrap{
    width: 100%;
    padding: 0 40px;
    box-sizing: border-box;
}
.hikaku__table{
	width: 100%;
	border: solid 3px var(--Main);
	margin-bottom: 0;
}
.hikaku__table th{
	background-color: var(--Main);
	color: #fff;
	border-bottom: solid 1px var(--Main);
	font-size: 16px;
}
.hikaku__table th:not(:last-of-type){
	border-right: solid 1px #fff;
}
.hikaku__table td:not(:last-of-type){
	border-right: solid 1px var(--Main);
}
.hikaku__table th:nth-of-type(1){
    width: 26%;
}
.hikaku__table th:nth-of-type(2){
    width: 29%;
}
.hikaku__table tr:first-of-type td{
	background-color: #fef8d0;
}
.hikaku__table tr:not(:last-of-type) td{
	border-bottom: solid 1px var(--Main);
}
.hikaku__table__logo__wrap{
    display: block;
}
.hikaku__table__logo__wrap img{
	height: 40px;
    width: auto;
    margin-inline: auto;
    display: block;
}
a.cta.hikaku{
    padding: 10px 10px;
    font-size: 14px;
    width: 100%;
	margin-top: 10px;
}
/* ------------------------------
SUMMARY
------------------------------ */
section.summary{
    background-color: #fef8d0;
    border-radius: 80px;
}
.summary__wrap{
	padding: 0 40px 40px;
	border-right: solid 5px var(--Sub);
	border-left: solid 5px var(--Sub);
	border-bottom: solid 5px var(--Sub);
	border-radius: 0 0 80px 80px;
}
.summary__ttl__wrap{
	text-align: center;
}
.sumary__ttl{
	color: var(--Sub);
    position: relative;
    border-radius: 12px;
    border: solid 2px var(--Sub);
    background-color: #fff;
    display: inline-block;
	padding: 12px 44px;
    font-size: 22px;
    line-height: 1.4;
    font-weight: bold;
    box-shadow: 4px 5px 0px 1px var(--Sub);
	width: 60%;
}
.sumary__ttl::before{
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 14px solid transparent;
    border-left: 14px solid transparent;
    border-top: 16px solid var(--Sub);
    border-bottom: 0;
    bottom: -21px;
    left: 50.5%;
    transform: translateX(-50%);
}
.sumary__ttl::after{
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-top: 15px solid #fff;
    border-bottom: 0;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
}

.summry__bnr{
	margin-top: 40px;
}
.summary__txt__wrap{
	margin-top: 20px;
}
.summary__txt__wrap p{
	margin-bottom: 0;
	margin-bottom: 0;
    font-size: 16px;
    line-height: 1.4;
}
.summary__txt__wrap p:not(:first-of-type){
	margin-top: 10px;
}
.underline{
	background: linear-gradient(transparent 50%, #fff 50%);
	font-weight: bold;
}
/* ------------------------------
FORM
------------------------------ */
.Refine_Search_conditions_Area:not(:first-of-type){
	margin-top: 28px;
}
.condition_ttl{
    position: relative;
    padding-left: 10px;
    font-size: 20px;
    font-weight: bold;
}
.condition_ttl::before {
    position: absolute;
    content: "";
    width: 5px;
    height: 100%;
    background-color: var(--Sub);
    left: 0;
    top: 0;
    border-radius: 10px;
}
.condition_ttl::after {
    position: absolute;
    content: "";
    width: 5px;
    height: 20%;
    background-color: var(--Main);
    left: 0;
    top: 0;
    border-radius: 10px;
}
.form__shinkou__grid{
	display: grid;
	grid-template-columns: repeat(3, 250px);
	gap: 20px;
}
.form__shinkou__grid input,
.mokuteki__list .checkbox_text input,
.medicine__list .radiobtn_text input,
.shinsatsu__list .radiobtn_text input{
	display: none;
}
.form__shinkou__grid .multi-item .checkbox_text{
	border: solid 2px var(--Main);
	border-radius: 10px;
	padding: 10px;
	aspect-ratio: 4.5 / 3;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
}
.form__shinkou__ttl{
    position: relative;
    padding-left: 24px;
    margin-top: 10px;
    font-size: 18px;
	font-weight: bold;
}
.form__shinkou__ttl::before {
    position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/icon_point.svg) no-repeat center;
    background-size: 100%;
    top: 53%;
    left: 0;
    width: 20px;
    height: 20px;
    transform: translateY(-50%);
}
.form_icon{
    padding: 20px;
    aspect-ratio: 1 / 1;
    width: 90px;
    background-color: #d5f1f3;
    border-radius: 50%;
}

.shinkou__list .checkbox_text.multi.selected{
	background-color: #fef8d0;
	border-color: var(--Sub);
}

.shinkou__list .checkbox_text.multi.selected .form_icon{
	background-color: #fff;
}
.mokuteki__list{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-top: 10px;
	font-weight: bold;
	font-size: 14px;
}
.mokuteki__list .checkbox_text{
	border: solid 2px var(--Main);
	border-radius: 10px;
	position: relative;
	padding: 10px 0 10px 34px;
	display: block;
	background-color: #fff;
}
.mokuteki__list .checkbox_text.selected{
	background-color: #fef8d0;
	border-color: var(--Sub);
}
.mokuteki__list .checkbox_text::before,
.medicine__list .radiobtn_text::before{
	position: absolute;
	content: "";
	top: 50%;
	left: 3%;
	background: url(https://revive-cure.com/aga/assets/img/form_unchecked.svg)no-repeat center;
	background-size: 100%;
	width: 20px;
	height: 20px;
	transform: translateY(-50%);
}
.mokuteki__list .checkbox_text.selected::before,
.medicine__list .radiobtn_text.on1::before{
	background: url(https://revive-cure.com/aga/assets/img/form_checked.svg)no-repeat center;
}

.medicine__list{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 10px;
	line-height: 1.3;
	margin-top: 10px;
	font-weight: bold;
	font-size: 14px;
}

.medicine__list .radiobtn_text{
	border: solid 2px var(--Main);
	border-radius: 10px;
	position: relative;
	padding: 10px 0 10px 34px;
	display: flex;
	align-items: center;
	background-color: #fff;
}
.medicine__list .radiobtn_text.on1{
	background-color: #fef8d0;
	border-color: var(--Sub);
}
.shinsatsu__list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);	
	gap: 10px;
	margin-top: 10px;
	font-weight: bold;
	font-size: 14px;
}
.shinsatsu__list .radiobtn_text{
	border: solid 2px var(--Main);
	border-radius: 10px;
	position: relative;
	padding: 10px 0 10px 34px;
	display: flex;
	align-items: center;
	background-color: #fff;
}

.shinsatsu__list .radiobtn_text::before{
	position: absolute;
	content: "";
	top: 50%;
	left: 3%;
	background: url(https://revive-cure.com/aga/assets/img/form_unselected.svg)no-repeat center;
	background-size: 100%;
	width: 20px;
	height: 20px;
	transform: translateY(-50%);
}
.shinsatsu__list .radiobtn_text.on2::before{
	background: url(https://revive-cure.com/aga/assets/img/form_selected.svg)no-repeat center;
}
.shinsatsu__list .radiobtn_text.on2{
	background-color: #fef8d0;
	border-color: var(--Sub);
}
.Refine_Search_submit{
	display: flex;
    gap: 24px;
    margin-top: 60px;
    justify-content: space-between;
}
.Refine_Search_cta button{
    width: 100px;
	height: 100%;
    background-color: unset;
    border-radius: 15px;
    font-size: 16px;
	border: none;
}
.Refine_Search_submit input {
    background-color: var(--Sub);
    border-radius: 40px;
    border: none;
    color: #fff;
    width: 20%;
    height: 100%;
    padding: 16px 10px;
    font-size: 16px;
    align-self: center;
}
/* ------------------------------
FOOTER
------------------------------ */
.footer{
	width: 100%;
	background-color: var(--Sub);
	font-size: 16px;
}
.footer_menu{
	background-color: var(--Sub);
	font-size: 16px;
	margin-top: 80px;
}
.footer_inner .link ul{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 22px;
}
.footer_inner .link ul li{
	position: relative;
}
.footer_inner .link ul li a{
	color: #fff;
	text-decoration: none;
}
.footer_inner .link ul li:first-of-type::before{
    position: absolute;
    content: "／";
    bottom: 0;
    color: #fff;
    height: 100%;
    width: 4px;
    right: -7px;
}
.footer_menu_inner{
	padding: 20px 100px;
    width: 70%;
    margin-inline: auto;
}
.widget_text h3,
.widget_text li a{
	color: #fff;
	text-decoration: none;
}
.widget_text li a{
	font-weight: normal;
}
.copyright_inner{
	text-align: center;
    color: #a2b9e3;
    font-size: 13px;
}

	/* ========================================================
検索結果
=========================================================*/
body.result_page{
	background: repeating-linear-gradient(90deg, #d5f1f3, #d5f1f3 1px, transparent 1px, transparent 32px), repeating-linear-gradient(0deg, #d5f1f3, #d5f1f3 1px, #e5f7fa 1px, #e5f7fa 32px);
    background-size: 32px 32px;
    background-position: 50% 50%;
    width: 100%;
    aspect-ratio: 3.3 / 2.9;
    position: relative;
}

.result_page .rank__box{
	background-color: #fef8d0;
}

.result.ng-scope{
	margin-top: 40px;
}
.searchConditions{
	border: solid 3px var(--Sub);
	background-color: #fff;
	border-radius: 20px;
	position: relative;
}
.searchConditions::before{
    position: absolute;
    content: "";
    width: 273px;
    height: 3px;
    background-color: #fff;
    left: 50%;
    transform: translateX(-50%);
    top: -3px;
}
.searchConditions__ttl{
	position: absolute;
    content: "";
    background-color: var(--Sub);
    font-size: 20px;
    color: #fff;
    padding: 4px 28px;
    border-radius: 30px;
    left: 50%;
    transform: translateX(-50%);
    top: -21px;
}
.searchConditions__wrap{
	padding: 20px;
}
.searchConditions__wrap dl{
	font-size: 18px;
    font-weight: bold;
	position: relative;
	padding-left: 20px;
	display: flex;
    gap: 6px;
}
.searchConditions__wrap dl::before{
    position: absolute;
    content: "";
    background: url(https://revive-cure.com/aga/assets/img/icon_point.svg) no-repeat center;
	background-size: 100%;
    top: 50%;
    left: -2px;
    width: 18px;
    height: 18px;
    transform: translateY(-50%);
}
.searchConditions__wrap dl dt{
	white-space: nowrap;
	display: flex;
    align-items: center;
}
.result_page .ranking__calender:not(id1){
	display: none;
}
.result_data__area{
	margin-top: 30px;
}
.result_page .rank__head{
	display: block;
}
.Refine_Search_Title{
	font-size: 24px;
    text-align: center;
    font-weight: bold;
}
.shindan__block.re_form{
	margin-top: 50px;
}
.result_page  .Refine_Search_Box_Inner{
	margin-top: 10px;
}
.result_page .footer{
	margin-top: 60px;
}
	/* ========================================================
コラム
=========================================================*/
.page-lower {
    padding-top: 5rem;
}
.pankuz {
    margin-bottom: 24px;
}

.pankuz ul {
    display: flex;
    align-items: center;
    gap: 8px;
    overflow-x: scroll;
}
.pankuz ul a img {
    width: 20px;
    height: 20px;
}
.pankuz li {
    font-size: 14px;
    white-space: nowrap;
}

.pankuz__home {
    text-decoration: underline;
}
.pankuz ul a {
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 4px;
    color: inherit;
}
.inner {
    width: 100%;
    max-width: 1010px;
    padding-right: 25px;
    padding-left: 25px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}
.page-lower .header {
    background: none;
	max-width: 100vw;
	text-align: center;
}

.page-lower img{
	display: block;
	margin-inline: auto;
}
.column__inner__bnr{
	margin-top: 10px;
}

.header h1 {
    position: relative;
}

.page-lower h1 {
	position: relative;
    text-align: center;
    max-width: 100%;
    font-size: 2.7rem;
    font-weight: bold;
    padding: 0 2.5rem;
    display: inline-block;
    margin-inline: auto;
    /* align-items: center; */
    justify-content: center;
    border: solid 2px var(--Main);
    border-radius: 8px;
    box-shadow: 5px 7px 0px 4px var(--Main);
}
.page-lower h1::before{
    position: absolute;
    content: "";
    width: 80px;
    height: 2px;
    background-color: #fff;
    top: -2px;
    left: 10%;
}
.page-lower h1::after{
    position: absolute;
    content: "";
    width: 60px;
    height: 2px;
    background-color: var(--Sub);
    top: -2px;
    left: 11%;
    border-radius: 10px;
}
.page-lower .adTxt + .inner {
    margin-top: -70px;
}
.page-lower h2 {
    width: 100%;
    text-align: left;
    position: relative;
    font-weight: bold;
    font-size: 1.8rem;
    padding: 4px 0 4px 14px;
    margin-top: 5rem;
}
.page-lower h2::before {
    position: absolute;
    content: "";
    width: 5px;
    height: 100%;
    background-color: var(--Sub);
    left: 0;
    top: 0;
    border-radius: 10px;
}
.page-lower h2::after {
    position: absolute;
    content: "";
    width: 5px;
    height: 14%;
    background-color:var(--Main);
    left: 0;
    top: 0;
    border-radius: 10px;
}
.card__bnr-img {
    width: 100%;
    margin-top: 1.25rem;
}
.page-lower p {
    margin-top: 1rem;
}

.page-lower .cm__point {
    margin-top: 2rem;
}

.page-lower .cm__point__list {
    border: 2px solid var(--Sub);
    border-radius: 6px;
    padding: 1.875rem 1.25rem 1.5625rem;
    margin-top: -1rem;
}
.page-lower .cm__point__list li {
    position: relative;
    font-size: 1.2rem;
    line-height: 1.5;
    padding-left: 1rem;
}
.page-lower .cm__point__list li::before {
    content: "";
    background-color: var(--Sub);
    max-width: 5px;
    min-width: 5px;
    height: 5px;
    border-radius: 100px;
    position: absolute;
    top: 0.5em;
    left: 0;
}
.page-lower .cmn__table {
    margin-top: 1.5rem;
    width: 100%;
    display: flex;
    margin-top: 0.625rem;
    border: 1px solid var(--Text);
    border-right: 0;
}
.page-lower .cmn__table dl {
    flex: 1;
    border-right: 1px solid var(--Text);
}
.page-lower .cmn__table dt {
    background-color: var(--Sub);
    text-align: center;
    font-size: 1.1rem;
    font-weight: bold;
	color: #fff;
}
.page-lower .cmn__table dd {
    text-align: center;
    padding: 0.625rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
	vertical-align: middle;
}
.page-lower .cmn__table dd p {
    margin-top: 0;
    font-size: 1.1rem;
}
.page-lower .cmn__table dl {
    flex: 1;
    border-right: 1px solid var(--Text);
}

.page-lower dl{
    border: solid 3px var(--Main);
    border-radius: 10px;
    padding: 20px;
	margin-top: 20px;
	font-size: 14px;
}
.cm__check {
    position: relative;
    font-weight: bold;
	font-size: 16px;
	display: flex;
	justify-content: left;
}
.cm_check_num{
	position: relative;
	width: 28px;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
	color: #fff;
	margin-right: 4px;
}
.cm_check_num::before {
    position: absolute;
    content: "";
	background: url(https://revive-cure.com/aga/assets/img/icon_point.svg)no-repeat center;
    top: 50%;
    left: 50%;
    width: 28px;
    height: 28px;
	z-index: -1;
	transform: translateX(-50%) translateY(-50%);
}

.page-lower .cm__check + p {
    margin-top: 0.5rem !important;
}
.page-lower h3 {
    border-left: 4px solid var(--Sub);
    padding-left: 0.625rem;
    margin-top: 2.5rem;
}
.page-lower .adTxt + .inner {
    margin-top: -70px;
}
a.column_btn{
	box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    text-decoration: none;
    background: var(--CTA);
    border-radius: 40px;
    margin-bottom: 4px;
    padding: 14px 28px;
    width: 100%;
    position: relative;
    margin-top: 60px;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
}
.column__table {
	border-collapse: collapse;
	border: solid 1px var(--Main);
	margin-top: 4px;
	font-size: 12px;
}
.column__table th{
	background-color: #fff;
	border: solid 1px var(--Main);
	color: #333;
	font-weight: normal;
	padding: 12px 0;
}

.column__table .column__table__ttl{
	background-color: var(--Main);
	border-right: solid 1px #fff;
	color: #fff;
	font-weight: bold;
	padding: 14px 0;
}

.column__table .column__table__ttl:first-of-type{
	width: 19%;
}

.column__table td{
	background-color: #fff;
	border: solid 1px var(--Main);
}
.column__table tbody th,
.column__table tbody td{
    padding: 16px 6px;
}
.column__table__head{
	margin: 0;
	text-align: center;
}
	/* ========================================================
20240609 追加
=========================================================*/
.hikaku__tag__list{
	display: flex;
	gap: 2px;
	justify-content: center;
}
.hikaku__tag{
	background-color: #e9edf3;
    border-radius: 20px;
    padding: 6px 9px;
    font-size: 12px;
}
.hikaku__tag.on{
	background-color: #d6f1f3;
}
.hikaku__b__tag{
	border-radius: 20px;
    padding: 2px 8px;
    background-color: #d6f1f3;
    margin-top: 2px;
    display: inline-block;
}
.hikaku__tag__list.center{
	justify-content: center;
}
.min__table td.hikaku__btm__pad{
	vertical-align: bottom;
	padding-bottom: 14px;
}

.min__table td.hikaku__btm__pad.mr{
	padding-bottom: 28px;
}
.min__table tr:nth-of-type(3) td,
.min__table tr:nth-of-type(4) td,
.min__table tr:nth-of-type(5) td,
.min__table tr:nth-of-type(6) td{
	vertical-align: top;
}
#area .min__table tr:nth-of-type(6) td{
	line-height: 1.5;
}
.min__cta__catch{
	font-size: 14px;
}
.hikaku__th__tag{
    border-radius: 4px;
    padding: 3px 6px;
	color: #fff;
    margin-top: 4px;
    display: inline-block;
}
.hikaku__th__tag.g{
	background-color: #15b8c5;
}
.hikaku__th__tag.b{
    background-color: #4373c7;
}

/* ========================================================
20240625 地域LP
=========================================================*/
 .tiiki {
	font-size: 3rem;
    font-family: sans-serif;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 132px;
    height: 60px;
    position: absolute;
    top: 115px;
    left: 16%;
	color: #fff;
}
/* 20240726 追記 */
.result_data__area {
    margin-top: 0;
}
.pankuzu {
	font-size: 14px;
}