@charset "UTF-8";
/* ========================================================
ベース設定
=========================================================*/
:root {
  /* カラー */
  --Text: #364048;
  --Text_blue: #1a0dab;
  --Main: #3777CB;
  --Sub: #71C7F7;
  --Accent: #5BC1CC;
  --Back: #E5ECF6;
  --gray: #364048;
  --blue01: #E4F6FC;
  --blue02: #6CB5FA;
  --red: #9F0900;
  --yellow: #FFFBDB;
  /* 文字サイズ */
  --FontSizePC: 20px;
  /* 1010px(inner+padding*2) 〜 max-screen */
  --FontSizeTab: 1.5841584158vw;
}

@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;
}

html {
  font-family:"Noto Sans JP", sans-serif;
  line-height: 1.5;
  color: var(--Text);
}

.body {
  counter-reset: number 0;
  /* font-feature-settings: "palt"; */
  line-break: strict;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.forPC {
  display: none;
}
.forPC-inline {
  display: none;
}
.forSP {
  display: block;
}
p {
  font-size: 0.875rem;
}
p + p {
  margin-top: 0.5em;
}

a {
  font-weight: bold;
  text-decoration: underline;
  color: var(--Text_blue);
}
.adTxt {
	text-align: right;
	max-width: 100%;
	padding: 0 8px; /* 左右余白 LPに合わせて調整 */
	margin: 8px auto;
}
body:not(.result_page) .adTxt {
  text-align: right;
  max-width: 100%;
  padding: 2px 2px;
  margin: 4px auto;
  background: #fff;
  position: absolute;
  right: 0;
  top: -2px;
}
.adTxt span {
	font-size: 14px;
	font-weight: bold;
	border: 1px solid var(--Text); /* 枠色 変数名がTextでない場合は変更 */
	padding: 4px 14px;
}
.txt--clinicfor {
  font-size: 10px;
  text-align: right;
  padding: 0 8px;
}

.result_page .txt--clinicfor {
  margin-top: -6px;
}
/* ========================================================
20240606 header ロゴ追加
=========================================================*/
.header__logo{
  height: 33px;
  width: 100%;
  background-color: #fff;
}
.header::before{
  position: absolute;
  content: "";
  background: url(../img/logo_medicallist_horizon.png)no-repeat center;
  background-size: 100%;
  top: 0;
  left: 0;
  width: 94px;
  height: 33px;
  background-color: #fff;
  padding: 2px 4px;
  z-index: 100;
}
.fb .header::before {
  display: none;
}

/* ========================================================
20241005 header バナー追加
=========================================================*/
.header__bnr {
  margin-top: 30px;
  display: block;
}
.pr-bnr {
  position: relative;
}
.pr-bnr__text {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  padding: 3px 5px;
  font-size: 16px;
  line-height: 1;
}

/* ========================================================
共通パーツ
=========================================================*/
/* インナー */
.inner {
  padding: 0 15px;
}

/* 文字装飾 */
.bold {
  font-weight: bold;
}
.blue {
  font-weight: bold;
  color: var(--Main);
}
.body .fontSize--10px {
  font-size: 0.625rem;
}
.body .fontSize--11px {
  font-size: 0.687rem;
}
.body .fontSize--12px {
  font-size: 0.75rem;
}
.body .fontSize--13px {
  font-size: 0.812rem;
}
.body .fontSize--14px {
  font-size: 0.875rem;
}
.body .fontSize--15px {
  font-size: 0.937rem;
}
.body .fontSize--16px {
  font-size: 1rem;
}
.marker {
  background: linear-gradient(transparent 68%, var(--yellow) 68%);
  display: inline;
  font-weight: bold;
}

/* CTAボタン */
.ctaBtn {
  font-size: 1rem;
  color: #fff;
  text-decoration: none;
  text-align: center;
  display: inline-block;
  background: var(--red);
  border-radius: 0.312rem;
  width: 100%;
  padding: 0.937rem 15%;
  margin-top: 0.625rem;
  position: relative;
}
.ctaBtn::after {
  content: "";
  display: inline-block;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 0.625rem;
  height: 0.625rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%) rotate(-45deg);
}
.ctaBtn--s {
  font-size: 0.75rem;
  color: #fff;
  text-decoration: none;
  text-align: center;
  display: block;
  background: var(--red);
  border-radius: 0.1875rem;
  width: 100%;
  padding: 7px 15%;
  margin-top: 0.625rem;
  position: relative;
}
.ctaBtn--s::after {
  content: "";
  display: inline-block;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 0.4375rem;
  height: 0.4375rem;
  position: absolute;
  top: 50%;
  right: 0.625rem;
  transform: translateY(-50%) rotate(-45deg);
}

/* テーブル */
.table {
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%;
  margin-top: 1.875rem;
}
.table th,
.table td {
  font-size: 0.750rem;
  border-top: 1px solid var(--Text);
  border-bottom: 1px solid var(--Text);
  padding: 0.625rem;
  word-break: break-all;
}
.table th p,
.table td p {
  font-size: 0.750rem;
}
.table th + th,
.table th + td,
.table td + th,
.table td + td {
  border-left: 1px solid var(--Text);
}
.table th {
  background: var(--Back);
  width: 32%;
  padding-left: 5px;
  padding-right: 5px;
}
.ranking__table {
  width: calc(100% - 1.875rem);
  margin: 0.9375rem auto 0;
}

/* テーブルテキスト */
.body table .table__txt--center {
  text-align: center;
}
.body table .table__txt--left {
  text-align: left;
}
.body table .table__txt--top {
  vertical-align: top;
}
.body table .table__txt--middle {
  vertical-align: middle;
}

/* テーブル黒 */
.table--bk {
  table-layout: fixed;
  border-collapse: collapse;
}
.table--bk th {
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  text-align: center;
  background: var(--Text);
}
.table--bk th + th {
  border-left: 1px solid #fff;
}
.table--bk td {
  font-size: 12px;
  padding: 10px 5px;
  border-bottom: 1px solid var(--Text);
}
.table--bk td + td {
  border-left: 1px solid var(--Text);
}

/* 区切り線 */
.line {
  background-image: linear-gradient(to right, var(--Text), var(--Text) 1px, transparent 1px, transparent 3px);
  background-size: 3px 0.625rem;
  background-repeat: repeat-x;
  width: 100%;
  height: 0.625rem;
  position: absolute;
}

/* アコーディオン */
.aco__contents {
  display: none;
  margin-top: 1.875rem;
}


/* ========================================================
記事ページ
=========================================================*/
.page-lower {
  padding-top: 5rem;
}
.page-lower .inner {
  padding: 0 15px;
}
.page-lower .header {
  background: none;
}
.page-lower h1 {
  position: relative;
  text-align: center;
  max-width: 100vw;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 0 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-lower h1::before, .page-lower h1::after {
  content: "";
  display: block;
  background-image: url(../img/icon_dot_sp.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  width: 1.875rem;
  height: 3.625rem;
  z-index: -1;
}
.page-lower h1::before {
  left: 0.9375rem;
}
.page-lower h1::after {
  right: 0.9375rem;
}
.page-lower h2 {
  background-color: #f7f6f2;
  width: 100%;
  text-align: center;
  position: relative;
  border-right: 3px solid var(--Main);
  border-left: 3px solid var(--Main);
  font-weight: bold;
  font-size: 1.125rem;
  padding: 1rem 0;
  margin-top: 5rem;
}
.page-lower h2::before, .page-lower h2::after {
  content: "";
  width: 3px;
  height: 50%;
  background-color: #2850AA;
  position: absolute;
  bottom: 0;
  z-index: 2;
}
.page-lower h2::before {
  left: -3px;
}
.page-lower h2::after {
  right: -3px;
}
.page-lower h3 {
  font-size: 1rem;
  border-left: 4px solid var(--Main);
  padding-left: 0.625rem;
  margin-top: 2.5rem;
}
.page-lower p {
  margin-top: 1rem;
}
.page-lower .cm__check {
  margin-top: 1.5rem;
}
.page-lower .cm__check + p {
  margin-top: 0.5rem !important;
}
.page-lower .cm__box {
  margin-top: 1.5rem;
}
.page-lower .cm__point {
  margin-top: 2rem;
}
.page-lower .cm__point__list {
  border: 2px solid var(--Main);
  border-radius: 6px;
  padding: 1.875rem 0.9375rem 0.9375rem;
  margin-top: -1rem;
}
.page-lower .cm__point__list li {
  position: relative;
  font-size: 0.875rem;
  line-height: 1.5;
  padding-left: 1rem;
}
.page-lower .cm__point__list li + li {
  margin-top: 0.9375rem;
}
.page-lower .cm__point__list li::before {
  content: "";
  background-color: var(--Main);
  max-width: 5px;
  min-width: 5px;
  height: 5px;
  border-radius: 100px;
  position: absolute;
  top: 0.475rem;
  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;
  flex-wrap: wrap;
}
.page-lower .cmn__table dl {
  flex: initial;
  max-width: 50%;
  width: 100%;
  border-right: 1px solid var(--Text);
}
.page-lower .cmn__table dt {
  background-color: var(--Back);
  text-align: center;
  font-size: 0.875rem;
  font-weight: bold;
}
.page-lower .cmn__table dd {
  text-align: center;
  padding: 0.625rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: calc(100% - 20px);
}
.page-lower .cmn__table dd p {
  margin-top: 0;
  font-size: 0.875rem;
}
.page-lower .cmn__table dl.size-full {
  width: 100%;
  max-width: 100%;
}
.page-lower .ctaBtn {
  max-width: 500px;
  margin: 50px auto;
  display: block;
}
.cm__check {
  font-weight: bold;
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
}
.cm__check::before {
  content: "";
  display: inline-block;
  border-left: 2px solid var(--Accent);
  border-bottom: 2px solid var(--Accent);
  width: 0.812rem;
  height: 0.437rem;
  transform: rotate(-45deg);
  margin-top: 0.5em;
}
.cm__box {
  border: 1px solid var(--Text);
  border-radius: 6px;
  padding: 0.9375rem;
  margin-top: 0.9375rem;
}

/* パンくず */
.pankuz {
  margin-bottom: 24px;
}
.pankuz.inner {
  padding-right: 0;
}
.pankuz__home {
  text-decoration: underline;
}
.pankuz ul {
  display: flex;
  align-items: center;
  gap: 8px;
  overflow-x: scroll;
}
.pankuz ul a {
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 4px;
  color: inherit;
}
.pankuz li {
  font-size: 14px;
  white-space: nowrap;
}
.pankuz ul a img {
  width: 20px;
  height: 20px;
}


/* ========================================================
ヘッダー
=========================================================*/
.header {
  max-width: 100vw;
  background-color: #fbf7da;
}
.header img {
  display: block;
}

/* ロゴスライダー */
.slider.clinicLogo {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  background: #fff;
}
.slider.clinicLogo img {
  height: 35px;
  width: auto;
  padding: 10px 0;
  object-fit: contain;
}
.slider.clinicLogo .slick-slide {
  width: auto !important;
  margin: 0 8px;
}

/* .clinicLogo {
  background: #fff;
  overflow-x: hidden;
}
.autoplay-slider{
  display: flex;
  width: 100%;
}
.slide {
  padding-left: 15px;
}
.slide img {
  height: 35px;
  width: auto;
  padding: 10px 0;
  object-fit: contain;
  position: relative;
}

@keyframes sliderAnimation {
  100% {
    transform: translateX(-50%);
  }
}

.autoplay-slider{
  display: flex;
  min-width: 100%;
  width: min-content;
  animation: 20s linear infinite sliderAnimation;
} */


/* ========================================================
fv
=========================================================*/
.fv {
  background: var(--blue01);
}
.fv__ttl {
  background: linear-gradient(transparent 69%, #fff 69%);
}
.inner.fv__inner {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: calc((100% - 40px) / 3 + 20px) calc((100% - 40px) / 3) calc((100% - 40px) / 3);
  gap: 10px;
  padding: 15px 10px;
}
.fv__item {
  text-align: center;
  padding: 10px 0;
}
.fv__item:nth-child(1) {
  grid-row: 1;
  grid-column: 1;
  background: var(--yellow);
  box-shadow: 0 0 0 2px var(--Main);
  border-radius: 7px;
  padding: 10px;
}
.fv__item02:nth-child(2) {
  grid-row: 1;
  grid-column: 2;
}
.fv__item03:nth-child(3) {
  grid-row: 1;
  grid-column: 3;
}
img.fv__item-rank {
  display: block;
  width: 60px;
  height: auto;
  margin: 0 auto;
}
.fv__txt {
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1.5;
  border-bottom: 1px solid var(--Grey);
  height: 4.625rem;
  margin-top: 10px;
  position: relative;
}
.fv__txt::after {
  content: "";
  display: inline-block;
  background: url(../img/ct_img_fv_line_sp.png) no-repeat center / 100% auto;
  width: 100%;
  aspect-ratio: 105 / 8;
  margin-top: 0.5rem;
}
.fv__item-ttl {
  font-size: 0.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.125rem;
  margin-bottom: 0;
}
.fv__item-img {
  border: 1px solid var(--Text);
  margin-top: 10px;
}

/* ========================================================
EDを治療できるのはクリニックだけ
=========================================================*/
.clinic {
  padding-bottom: 30px;
}
.clinic__table {
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 12px;
  border: 2px solid var(--Text);
  width: 100%;
}
.clinic__table-th--wh {
  font-weight: normal;
  border: 1px solid var(--Text);
  padding: 2px;
}
.clinic__table-th--gr {
  background: var(--Back);
  border-top: 1px solid var(--Text);
  border-bottom: 1px solid var(--Text);
  padding: 5px;
}
.clinic__table-th--gr + .clinic__table-th--gr {
  border-left: 1px dotted var(--Text);
}
.clinic__table-th--bl {
  font-size: 14px;
  color: #fff;
  background: var(--Main);
  border: 1px solid var(--Text);
  width: 36%;
  padding: 5px;
}
.clinic__table td {
  text-align: center;
  padding: 10px;
  vertical-align: top;
}
.clinic__table-td + .clinic__table-td {
  border-left: 1px dotted var(--Text);
}
.clinic__table-td--yl {
  background: var(--yellow);
  border: 1px solid var(--Text);
  padding: 10px;
}
.clinic__table-td_ttl,
.clinic__table-td_ttl--triangle {
  font-size: 12px;
  font-weight: bold;
}
.clinic__table-td_ttl::before {
  content: "●";
  color: var(--Accent);
  margin-right: 0.25em;
}
.clinic__table-td_ttl--triangle::before {
  content: "▲";
  color: var(--Accent);
  margin-right: 0.25em;
}
.clinic__table-td_img {
  width: auto;
  height: 90px;
  margin: 10px auto 0;
}
.clinic__table-td_label {
  font-size: 10px;
  color: #fff;
  display: inline-block;
  background: var(--Text);
  border-radius: 8px;
  padding: 0 15px;
  margin-top: 10px;
}
.clinic__table-td--yl .clinic__table-td_label {
  background: var(--Accent);
}
.clinic__table-td_txt {
  font-size: 12px;
  margin-top: 8px;
}
.clinic__table-td--yl .clinic__table-td_txt {
  font-size: 14px;
  font-weight: bold;
}
.clinic__table-img {
  margin-top: 10px;
}


/* ========================================================
市販NG
=========================================================*/
.ng {
  background: #F0F3F5;
  padding-bottom: 30px;
}
.ng__box-ttl {
  font-size: 1rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: var(--Text);
  border-radius: 7px 7px 0 0;
  padding: 10px 0;
}
.ng__box-txt {
  font-size: 0.875rem;
  background: #fff;
  border: 2px solid var(--Text);
  border-radius: 0 0 7px 7px;
  padding: 13px 15px 15px;
}


/* ========================================================
比較表BEST3
=========================================================*/
.comparisonBest3 {
  border-top: 3px solid var(--Main);
  padding-bottom: 30px;
}
.inner.comparisonBest3__inner {
  padding: 0;
  overflow-x: scroll;
}
.comparisonBest3__table {
  border-top: 2px solid var(--Text);
  border-left: 2px solid var(--Text);
  border-right: 2px solid var(--Text);
  margin-top: 0;
  margin-left: 15px;
  position: relative;
}
.comparisonBest3__table::after {
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	width: 15px;
	height: 1px;
}
.comparisonBest3__table th,
.comparisonBest3__table td {
  text-align: center;
}
.comparisonBest3__table th {
  font-size: 10px;
  width: 70px;
}
.comparisonBest3__table td {
  width: 200px;
  padding: 10px;
}
.comparisonBest3__table-logo {
  width: 100%;
  height: 55px;
  padding: 12px 0;
  object-fit: contain;
}
.comparisonBest3__table-txtLInk {
  display: inline-block;
  margin-top: 5px;
}
.comparisonBest3__table-icon {
  width: 30px;
  aspect-ratio: 1 / 1;
  margin: 0 auto 5px;
}
.comparisonBest3__table > tbody > tr > td:nth-of-type(1) {
  font-weight: bold;
  background: var(--yellow);
}
.comparisonBest3__table > tbody > tr:last-child > th,
.comparisonBest3__table > tbody > tr:last-child > td {
  border-bottom: 2px solid var(--Text);
}


/* ========================================================
クリニック選びのポイント
=========================================================*/
.point {
  background: linear-gradient(145deg, var(--blue02) 0%, var(--blue02) 26%, var(--Sub) 26%, var(--Sub) 100%);
  position: relative;
  padding-bottom: 25px;
}
.point__inner {
  padding: 0;
}
.point__list {
  display: flex;
  justify-content: flex-start;
  gap: 15px;
  padding: 0 15px;
  overflow-x: scroll;
}
.point__item {
  background: #fff;
  border: 2px solid var(--Text);
  border-radius: 7px;
  box-shadow: 0px 6px 0px #3777CB26;
  width: 270px;
  padding: 25px 15px 15px;
  flex-shrink: 0;
  position: relative;
  margin-top: 10px;
  margin-bottom: 5px;
}
.point__item-point {
  width: 140px;
  height: auto;
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
}
.point__item-ttl {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.point__item-ttl::before {
  content: "";
  display: inline-block;
  background: url(../img/ct_img_brackets_left.svg) no-repeat center / 10px 55px;
  width: 10px;
  height: 55px;
  margin-right: 30px;
}
.point__item-ttl::after {
  content: "";
  display: inline-block;
  background: url(../img/ct_img_brackets_right.svg) no-repeat center / 10px 55px;
  width: 10px;
  height: 55px;
  margin-left: 30px;
}
.point__item-img {
  width: 140px;
  aspect-ratio: 1 / 1;
  margin: 10px auto 0;
}
.point__item-txt {
  line-height: 1.57;
  margin-top: 10px;
}


/* ========================================================
おすすめNo1
=========================================================*/
.recommend {
  padding-top: 0.625rem;
}
.recommend__item {
  background: 0.625rem;
  border: 2px solid var(--Text);
  border-radius: 0.1875rem;
  position: relative;
  margin-top: 2.375rem;
}
.recommend__item + .recommend__item {
  margin-top: 45px;
}
.recommend__item::before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 5.9375rem;
  height: 3px;
  position: absolute;
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
}
.recommend__item-rank {
  width: 4.6875rem;
  height: auto;
  position: absolute;
  top: -2.375rem;
  left: 50%;
  transform: translateX(-50%);
}
.recommend__item-ttl {
  font-size: 1.125rem;
  text-align: center;
  padding: 18px 15px 16px;
}
.recommend__item-contents {
  background: var(--blue01);
  padding: 15px;
}
.recommend__item:first-child .recommend__item-contents {
  background: var(--yellow);
}
.recommend__item-bnr {
  border: 1px solid var(--Text);
}
.recommend__item-table {
  width: calc(100% + 30px);
  margin: 15px -15px 0;
}
.recommend__item-table td {
  font-weight: bold;
  text-align: center;
  vertical-align: top;
}
.recommend__item-table td small {
  font-weight: normal;
}
.recommend__item-icon {
  width: 40px;
  aspect-ratio: 1 / 1;
  margin: 0 auto 10px;
}
.recommend__item-ctaArea_catch {
  font-size: 12px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  margin-top: 0.5rem;
}
.recommend__item-ctaArea_catch::before {
  content: "";
  display: inline-block;
  background: var(--Text);
  width: 1px;
  height: 0.8em;
  transform: rotate(-35deg);
  margin-top: 0.3em;
}
.recommend__item-ctaArea_catch::after {
  content: "";
  display: inline-block;
  background: var(--Text);
  width: 1px;
  height: 0.8em;
  transform: rotate(35deg);
  margin-top: 0.3em;
}
.recommend__item-ctaArea_wrap {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 10px;
  margin-top: 0.312rem;
}
.recommend__item-ctaArea_toRank {
  font-size: 0.75rem;
  font-weight: bold;
  color: var(--Text);
  text-align: center;
  text-decoration: none;
  background: #fff;
  border: 1px solid var(--Text);
  border-radius: 5px;
  padding: 15px 0 23px;
  position: relative;
}
.recommend__item-ctaArea_toRank::after {
  content: "";
  display: inline-block;
  border-bottom: 2px solid var(--Text);
  border-right: 2px solid var(--Text);
  width: 7px;
  height: 7px;
  position: absolute;
  top: 64%;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
}
.recommend__item-ctaArea_wrap .ctaBtn {
  font-size: 0.875rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0.4375rem 15%;
  margin-top: 0;
}
.recommend__item-ctaArea_wrap .ctaBtn::after {
  width: 0.625rem;
  height: 0.625rem;
}
.recommend__item-ctaArea_wrap .ctaBtn .fontSize--10px {
  font-weight: normal;
}


/* ========================================================
ランキング
=========================================================*/
.ranking {
  background: linear-gradient(145deg, var(--blue02) 0%, var(--blue02) 3.1%, var(--Sub) 3.1%, var(--Sub) 100%);
  padding-bottom: 1.875rem;
}
.ranking__contents {
  padding: 0 0.9375rem 1.875rem;
}
.ranking__item {
  background: #fff;
  border: 2px solid var(--Text);
  border-radius: 0.437rem;
  padding: 0.9375rem 0 0;
}
.ranking__item > div:last-child {
  border-radius: 0 0 0.625rem 0.625rem;
}
.ranking__item + .ranking__item {
  margin-top: 1.875rem;
}
.ranking__item-top {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  height: 2em;
  padding: 0 0.9375rem;
  position: relative;
}
.ranking__item-rank--img {
  width: 4rem;
  height: auto;
}
.ranking__item-rank--txt {
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 2.875rem;
  color: #fff;
  vertical-align: baseline;
  display: inline-flex;
  justify-content: center;
  align-items: baseline;
  background: var(--Main);
  border-radius: 50%;
  width: 2.875rem;
  height: 2.875rem;
  position: absolute;
  top: -0.437rem;
  left: 0.9375rem;
}
.ranking__item-rank_num {
  font-size: 1.3125rem;
  font-weight: bold;
  margin-right: 0.08em;
}
.ranking__item-rank--txt + .ranking__item-top_txt {
  padding-left: 3.625rem;
}
.ranking__item-top_txt {
  font-size: 0.875rem;
  font-weight: bold;
}
.ranking__name {
  font-size: 1.125rem;
  background: var(--blue01);
  padding: 0.812rem;
  margin-top: 0.9375rem;
}
#rank01 .ranking__name {
  background: var(--yellow);
}

/* バナー */
.bnr_link {
  text-decoration: none;
}
.bnr__img {
  border: 1px solid var(--Text);
}
.bnr__txt {
  font-size: 0.750rem;
  font-weight: normal;
  color: #fff;
  background: var(--Text);
  padding: 0.625rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5px;
}
.bnr__txt .ctaBtn--s {
  display: inline-block;
  width: 6.5625rem;
  margin-top: 0;
  padding: 0.4375rem 7% 0.4375rem 5%;
}

/* ランキングバナー */
.ranking__bnr {
  padding: 0 0.9375rem;
  margin-top: 0.9375rem;
}

/* タグ */
.ranking__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem;
  padding: 0 0.9375rem;
  margin-top: 0.9375rem;
}
.ranking__tag li {
  font-size: 0.750rem;
  font-weight: bold;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 0.25em;
  background: var(--Accent);
  border-radius: 0.187rem;
  padding: 0.25rem 0.375rem;
  opacity: 0.4;
}
.ranking__tag li::before {
  content: "";
  background: url(../img/ct_ico_check_wh.svg) no-repeat center / 0.625rem 0.5rem;
  width: 0.625rem;
  height: 0.5rem;
  margin-top: 0.2em;
}
.ranking__tag li.on {
  opacity: 1;
}

/* ポイント */
.ranking__point {
  margin-top: 1.875rem;
  padding: 0 15px;
}
.ranking__point .cm__check {
  margin-top: 1rem;
}
.ranking__point-contents {
  line-height: 1.57;
  margin-top: 0.9375rem;
}
.ranking__point-item_txt {
  font-size: 0.875rem;
  margin-top: 1rem;
}
.ranking__point-item + .ranking__point-item {
  margin-top: 1.875rem;
}
.ranking__ctaArea {
  text-align: center;
  background: var(--blue01);
  padding: 1.25rem 0.937rem 0.937rem;
  margin-top: 1.875rem;
}
#rank01 .ranking__ctaArea {
  background: var(--yellow);
}
.ranking__ctaArea-catch {
  font-size: 1rem;
  font-weight: bold;
  display: inline;
  background: linear-gradient(transparent 80%, #fff 80%);
}
.ranking__ctaArea-logo {
  height: 4.375rem;
  object-fit: contain;
  padding: 0.937rem;
  margin-top: 0.937rem;
}
.ranking__ctaArea .ctaBtn {
  font-size: 1rem;
  padding-top: 15px;
  padding-bottom: 15px;
}
.ranking__ctaArea .ctaBtn::after {
  width: 0.625rem;
  height: 0.625rem;
}

/* 4位以下を見る */
.ranking__aco-btn {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  background: #fff;
  border: 1px solid var(--Text);
  border-radius: 0.312rem;
  box-shadow: 0 0.3125rem 0.625rem #2C386626;
  padding: 1.125rem 0;
  margin-top: 1.875rem;
  position: relative;
}
.ranking__aco-btn::after {
  content: "";
  display: inline-block;
  border-right: 2px solid var(--Text);
  border-bottom: 2px solid var(--Text);
  width: 0.625rem;
  height: 0.625rem;
  position: absolute;
  top: 46%;
  right: 7%;
  transform: translateY(-50%) rotate(45deg);
}
.ranking__aco-btn.close::after {
  top: 54%;
  transform: translateY(-50%) rotate(225deg);
}


/* ========================================================
比較表
=========================================================*/
.comparison {
  padding-bottom: 30px;
}
.inner.comparison__inner {
  padding: 0;
  overflow-x: scroll;
}
.comparison__table {
  border-top: 2px solid var(--Text);
  border-left: 2px solid var(--Text);
  border-right: 2px solid var(--Text);
  margin-top: 0;
  margin-left: 15px;
  position: relative;
}
.comparison__table::after {
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	width: 15px;
	height: 1px;
}
.comparison__table th {
  padding: 5px;
}
.comparison__table > thead > tr > th:nth-child(1) {
  width: 130px;
}
.comparison__table > thead > tr > th:nth-child(2) {
  width: 160px;
}
.comparison__table > thead > tr > th:nth-child(3) {
  width: 140px;
}
.comparison__table > thead > tr > th:nth-child(4) {
  width: 240px;
}
.comparison__table td {
  vertical-align: top;
}
.comparison__table > tbody > tr:nth-child(1) > td {
  background: var(--yellow);
}
.comparison__table > tbody > tr > td:nth-child(1) {
  vertical-align: middle;
}
.comparison__table > tbody > tr > td:nth-child(2) {
  position: relative;
  padding-bottom: 52px;
}
.comparison__table .ctaBtn--s {
  width: calc(100% - 20px);
  position: absolute;
  left: 10px;
  bottom: 10px;
}
.comparison__table-logo {
  height: 50px;
  object-fit: contain;
  padding: 10px 0;
}
.comparison__table-logo--m{
  min-width: 90px;
  height: 50px;
  object-fit: contain;
  padding: 10px;
}
.comparison__table-logo--s {
  min-width: 90px;
  height: 50px;
  object-fit: contain;
  padding: 10px 20px;
}
.comparison__table-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.comparison__table-icon img {
  width: 50px;
}
.comparison__table-txtLink {
  font-size: 12px;
  text-align: center;
  display: flex;
  justify-content: center;
  margin-top: 10px;
}
.comparison__table > tbody > tr:last-child > th,
.comparison__table > tbody > tr:last-child > td {
  border-bottom: 2px solid var(--Text);
}


/* ========================================================
まとめ
=========================================================*/
.matome__ttl {
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
  background: linear-gradient(145deg, var(--blue02) 0%, var(--blue02) 52%, var(--Sub) 52%, var(--Sub) 100%);
  margin-bottom: 10px;
  position: relative;
}
.matome__ttl::after {
  content: "";
  display: inline-block;
  border-top: 11px solid var(--Sub);
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
}
.matome__catch {
  font-weight: bold;
  text-align: center;
  padding: 5px 0 15px;
}
.matome__contents {
  background: var(--blue01);
  padding: 15px 0 30px;
}
.matome__txt {
  line-height: 1.57;
  background: #fff;
  border: 1px solid var(--Text);
  border-radius: 0.312rem;
  padding: 15px;
  margin-top: 15px;
}
.matome__contents .ctaBtn {
  margin-top: 15px;
}


/* ========================================================
絞り込み検索フォーム
=========================================================*/
.Refine_Search {
  margin: 20px auto 0;
  background-color: #F0F3F5;
  padding: 0 0 40px;
}

.Refine_Search .inner {
  padding: 0;
}

.Refine_Search_ttl {
  border-bottom: 2px solid #fff;
  padding: 10px 0 20px;
}

.Refine_Search_ttl img {
  display: block;
  max-width: 900px;
  margin: 0 auto;
}

#re_form {
  margin-top: 40px;
  padding: 0 0 20px;
  background-color: #F0F3F5;
}

.shindan__block.re_form {
  max-width: 910px;
  margin: 30px auto 0;
}

.forSP {
  display: none;
}

.Refine_Search_Title {
  text-align: center;
  padding: 20px;
  box-sizing: border-box;
  text-indent: -9999px;
  width: 100%;
  height: 58px;
  background-image: url(../img/result_form_ttl_pc.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  top: 80px;
  margin-bottom: 110px;
}

#Refine_Search_Area .Refine_Search_Box {
  overflow: hidden;
}

#Refine_Search_Area dl.Refine_Search_conditions_Area {
  max-width: 1000px;
}

#Refine_Search_Area dl.Refine_Search_conditions_Area {
  box-sizing: border-box;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multile;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

#Refine_Search_Area dl.Refine_Search_conditions_Area dt {
  font-weight: bold;
  margin-bottom: 4px;
}

#Refine_Search_Area .condition_ttl {
  position: relative;
  display: flex;
  padding-left: 22px;
  align-items: center;
  margin-bottom: 8px;
}

#Refine_Search_Area .condition_ttl span {
  line-height: 1.7;
  font-weight: bold;
}

#Refine_Search_Area .condition_ttl:after {
  content: "";
  display: block;
  background-size: cover;
  position: absolute;
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-size: contain;
  left: 0;
}

.age__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.consultation__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.treatment__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

#Refine_Search_Area dl.Refine_Search_conditions_Area dd {
  width: 100%;
}

#Refine_Search_Area dl.Refine_Search_conditions_Area label {
  display: flex;
  align-items: center;
}

#Refine_Search_Area dl.Refine_Search_conditions_Area input[type="radio"],
#Refine_Search_Area dl.Refine_Search_conditions_Area input[type="checkbox"] {
  margin-right: 0.5em;
  margin-top: 0;
  margin-left: 0;
  width: 16px;
  height: 16px;
}

#Refine_Search_Area input[type="radio"] {
  display: none;
}

#Refine_Search_Area .age__list input[type="radio"]+span.radiobox {
  position: relative;
  width: 13px;
  height: 12px;
  border-radius: 100px;
  background-color: #fff;
  border: 1px solid #333;
}

#Refine_Search_Area .age__list input[type="radio"]:checked+span.radiobox:after {
  background-color: #5BC1CC;
}

#Refine_Search_Area .age__list input[type="radio"]:checked+span.radiobox:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 47.2%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  border-radius: 100px;
  background-color: #5BC1CC;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

.consultation__list .consultation,
.treatment__list .treatment,
.age__list .age,
.price__list .price,
.type__list .type,
.mokuteki__list .mokuteki {
  position: relative;
  left: 0px;
  width: 100%;
  text-align: center;
}

.age__list .age {
  left: -10px;
}

.mokuteki__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  position: relative;
}

.type__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: relative;
}

.multi-item {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  background-color: #fff;
  border: 1px solid #98a6b5;
  margin-bottom: 8px;
}

.multi-item label {
  width: 100%;
}

#Refine_Search_Area .multi-item .checkbox_text {
  background: none;
  border: none;
}

#Refine_Search_Area .radiobtn_text,
#Refine_Search_Area .checkbox_text {
  border: 1px solid #98a6b5;
  background-color: #fff;
  font-weight: normal;
}

.consultation__list label,
.treatment__list label,
.age__list label,
.price__list label,
.type__list label,
.mokuteki__list label {
  height: 40px;
  line-height: 30px;
  text-align: center;
  padding-left: 8px;
}

.multi-item input[type="checkbox"] {
  width: 1px !important;
  height: 1px !important;
  opacity: 0;
  margin: 0 !important;
}

.Refine_Search_reset {
  border: none;
  padding: 0;
  background: none;
}

.kodawari__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3px 10px;
}

/* .kodawari__list>.multi-item .checkbox_icon {
  background-image: url(../img/kodawari_icon01.svg);
  width: 44px;
  height: 30px;
  margin-left: 9.7px;
  background-repeat: no-repeat;
}

.kodawari__list>.multi-item:nth-child(1)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon01.svg);
}

.kodawari__list>.multi-item:nth-child(2)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon02.svg);
}

.kodawari__list>.multi-item:nth-child(3)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon03.svg);
}

.kodawari__list>.multi-item:nth-child(4)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon04.svg);
}

.kodawari__list>.multi-item:nth-child(5)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon05.svg);
}

.kodawari__list>.multi-item:nth-child(6)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon06.svg);
}

.kodawari__list>.multi-item:nth-child(7)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon07.svg);
}

.kodawari__list>.multi-item:nth-child(8)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon08.svg);
} */

#Refine_Search_Area span.kodawari {
  display: inline-block;
  width: 100%;
  /* text-align: center; */
  /* margin-left: -62px; */
}

.Refine_Search_Box_wrap {
  padding: 10px;
  box-sizing: border-box;
  /* margin: 0 auto 10px auto; */
}

#Refine_Search_Area {
  font-size: 14px;
  color: var(--Text);
}

.result_data__area .Refine_Search_conditions_Area {
  max-width: 740px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.Refine_Search_submit {
  float: right;
  display: inline-block;
  vertical-align: bottom;
  line-height: 1;
}

.Refine_Search_submit input[type="submit"] {
  background: #9F0900;
  padding: 0;
  color: #fff;
  border: none;
  text-decoration: none;
  font-weight: bold;
  transition: 0.3s;
  display: inline-block;
  font-size: 16px;
  text-align: center;
  border-radius: 0.5rem;
  position: relative;
  height: 48px;
  line-height: 48px;
  width: 400px;
  border-radius: 4px;
  display: inline-block;
  position: relative;
}

.Refine_Search_submit input[type="submit"]:hover {
  opacity: 0.6;
  cursor: pointer;
}

span.noSubmit {
  background: #888;
  padding: 0;
  color: #fff;
  border: none;
  text-decoration: none;
  font-weight: bold;
  transition: 0.3s;
  display: inline-block;
  font-size: 16px;
  text-align: center;
  border-radius: 0.5rem;
  position: relative;
  height: 48px;
  line-height: 48px;
  width: 400px;
  border-radius: 4px;
  display: inline-block;
  position: relative;
  right: 48%;
  opacity: 0.6;
}

.ed #Refine_Search_Area dl.Refine_Search_conditions_Area dt {
  margin-bottom: 7px;
}

.ed #Refine_Search_Area .consultation__list,
.ed #Refine_Search_Area .treatment__list,
.ed #Refine_Search_Area .age__list {
  gap: 10px;
  margin-bottom: 10px;
}

.ed #Refine_Search_Area .consultation__list .on01,
.ed #Refine_Search_Area .treatment .on02,
.ed #Refine_Search_Area .type__list .selected,
.ed #Refine_Search_Area .on,
#Refine_Search_Area .on02,
.ed #Refine_Search_Area .kodawari__list .selected,
.mokuteki__list .selected {
  background-color: #FDF8C8 !important;
  color: #333 !important;
}

.ed #Refine_Search_Area .type__list label {
  display: block;
  text-align: center;
  line-height: 48px;
  padding: 0;
  position: relative;
  text-indent: -6px;
}

.ed #Refine_Search_Area .input[type="radio"]:checked+span.radiobox:after,
.ed #Refine_Search_Area .on input[type="radio"]+span.radiobox:after,
.ed #Refine_Search_Area .on01 input[type="radio"]+span.radiobox:after {
  left: 50%;
}

.ed #Refine_Search_Area .input[type="radio"]:checked+span.radiobox:after,
.ed #Refine_Search_Area .on input[type="radio"]+span.radiobox:after,
.ed #Refine_Search_Area .on01 input[type="radio"]+span.radiobox:after {
  background-color: #5BC1CC;
}

.ed #Refine_Search_Area .condition_ttl:after {
  border-left: 6px solid #3777CB;
  background: none;
  height: 6px;
}

.ed #Refine_Search_Area .condition_ttl {
  padding-left: 10px;
  font-weight: normal;
}

.ed #Refine_Search_Area .multi-item {
  border: none;
}

.ed #Refine_Search_Area dl.Refine_Search_conditions_Area label {
  border: 1px solid #333;
  border-radius: 4px;
}

.ed #Refine_Search_Area .mokuteki__list {
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2px 10px;
}

.ed #Refine_Search_Area .type__list {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 2px 10px;
}

.ed #Refine_Search_Area .input[type="radio"]+span.radiobox {
  border-color: #333;
}

.ed #Refine_Search_Area .Refine_Search_cta {
  position: relative;
  margin-top: 25px;
}

.ed #Refine_Search_Area .Refine_Search_number {
  display: inline-block;
  height: 48px;
  line-height: 48px;
  font-size: 16px;
  padding: 0 20px;
  vertical-align: bottom;
  /* float: left; */
  position: absolute;
  left: 100px;
  font-weight: bold;
}

.result_page.ed .bnr__txt .ctaBtn--s {
  box-sizing: border-box;
}

#Refine_Search_Area .consultation__list span.radiobox {
  display: block;
  position: absolute;
}

.consultation__list>.radiobtn_text:nth-child(1)>.radiobox {
  background-image: url(../img/consultation_icon01.svg);
  width: 30px;
  height: 30px;
  position: relative;
}

.consultation__list>.radiobtn_text:nth-child(2)>.radiobox {
  background-image: url(../img/consultation_icon02.svg);
  width: 30px;
  height: 30px;
  position: relative;
}



.treatment__list>.radiobtn_text:nth-child(1).on02>.radiobox:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -57%);
  width: 8px;
  height: 8px;
  border-radius: 100px;
  background-color: #5BC1CC;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

.treatment__list>.radiobtn_text:nth-child(1)>.radiobox {
  position: relative;
  width: 13px;
  height: 13px;
  border-radius: 100px;
  background-color: #fff;
  border: 1px solid #333;
}

.treatment__list>.radiobtn_text:nth-child(2)>.radiobox {
  background-image: url(../img/treatment_icon01.svg);
  width: 30px;
  height: 30px;
  margin-right: 8px;
  margin-left: 9px;
  position: absolute;
}

.treatment__list>.radiobtn_text:nth-child(3)>.radiobox {
  background-image: url(../img/treatment_icon02.svg);
  width: 30px;
  height: 30px;
  margin-right: 8px;
  margin-left: 9px;
  position: absolute;
}

/*sp*/
.Refine_Search_Box_wrap {
    padding-top: 0;
  }
  .Refine_Search_Title {
    padding-bottom: 0;
    font-weight: bold;
  }
  .Refine_Search_Box_wrap {
    margin-top: 16px;
  }
  #Refine_Search_Area dl.Refine_Search_conditions_Area label {
    height: 48px;
  }

  #Refine_Search_Area dl.Refine_Search_conditions_Area {
    margin-bottom: 20px;
  }

  .ed #Refine_Search_Area .age__list {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .ed #Refine_Search_Area .treatment__list,
  .ed #Refine_Search_Area .mokuteki__list {
    grid-template-columns: 1fr 1fr;
  }

  .ed #Refine_Search_Area .consultation__list {
    grid-template-columns: 1fr 1fr;
  }

  .ed #Refine_Search_Area .type__list {
    grid-template-columns: 1fr 1fr;
  }

  .kodawari__list {
    grid-template-columns: 1fr 1fr;
  }

  #Refine_Search_Area>form>div>dl:nth-child(8)>dd>label:nth-child(1)>span.treatment {
    left: -10px;
    position: relative;
  }

  #Refine_Search_Area dl.Refine_Search_conditions_Area label {
    min-height: 48px;
  }

  #Refine_Search_Area dl.Refine_Search_conditions_Area .kodawari__list label {
    min-height: 58px;
  }

  .span.noSubmit,
  .Refine_Search_submit input[type="submit"] {
    width: 200px;
  }

  .Refine_Search_submit {
    width: calc(100% - 236px);
  }

  span.noSubmit,
  .Refine_Search_submit input[type="submit"] {
    width: calc(100% - 180px);
    position: absolute;
    right: 0;
  }

  #Refine_Search_Area .kodawari__list {
    gap: 2px 10px;
  }

  .Refine_Search_Title {
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
    text-indent: -9999px;
    width: 160px;
    margin: 0 auto;
    height: 58px;
    background-image: url(../img/result_form_ttl_sp.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
    background-position: center;
    top: 30px;
  }

  .forSP {
    display: block;
  }


/* ========================================================
検索結果ページ
=========================================================*/

#CONTENTS #PANKUZU {
  background: #fff;
}

#PANKUZU .pankuzu {
  width: 1000px;
  margin: 10px auto 10px;
  color: #7e7e7e;
  font-size: 0.8rem;
  font-weight: bold;
  line-height: 1.2;
}

#CONTENTS #PANKUZU .pankuzu span {
  font-weight: bold;
  color: var(--Text);
}

#CONTENTS #PANKUZU .pankuzu_arrow {
  margin: 0 1em;
}

#CONTENTS {
  background: linear-gradient(160deg, var(--blue02) 0%, var(--blue02) 3.1%, var(--Sub) 3.1%, var(--Sub) 100%);
}

#CONTENTS .contents {
  width: 1000px;
  margin: 0 auto;
  max-width: 100%;
}

#CONTENTS .contents #SIDE {
  width: 204px;
  float: right;
}

#CONTENTS .contents #SIDE.top_1col {
  display: none !important;
}

#CONTENTS .contents #SIDE.top_1col .widget {
  display: none !important;
}

#CONTENTS .contents #MAIN {
  width: 785px;
  float: left;
  min-height: 500px;
}

.result_page.ed footer {
  background: #fff;
}

.result {
  padding: 0
}

.result .card {
  overflow: hidden;
  padding-bottom: 36px;
}

.imgttl_searchresult a:hover, .imgttl_searchresult img:hover {
  opacity: 0.6 !important;
  cursor: pointer;
}

.imgttl_searchresult img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.searchresult_Search_number .Refine_Search_number {
  display: block;
  height: 46px;
  text-align: center;
}

.searchresult_Search_number .Refine_Search_number .searchresult_Search_number_text {
  font-size: 1.4rem;
  font-weight: bold;
  vertical-align: 0.15em;
}

.searchresult_Search_number .Refine_Search_number .searchresult_Search_number_red {
  font-size: 2.5rem;
  font-weight: bold;
  color: var(--Accent);
  margin-right: 4px;
  vertical-align: baseline;
}
.Refine_Result_Count {
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  margin: 0 20px;
}

.Refine_Result_Count span {
  font-size: 1.0rem;
}

.Refine_Result_Count {
  display: block;
  text-align: left;
}

.Refine_Result_Count .Refine_Result_Count_red {
  font-size: 1.4rem;
  font-weight: bold;
  margin-right: 4px;
  vertical-align: baseline;
  position: relative;
  top: -1px;
}

.Refine_Result_Count .Refine_Result_Count_text {
  font-size: 1rem;
  font-weight: bold;
  vertical-align: 0.2em;
}


/*検索条件*/

.searchConditions {
  width: auto;
  border-radius: 8px;
  margin: 20px 40px;
  padding: 20px 20px 10px;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid #000000;
  font-size: 12px;
  margin-top: -115px;
  margin-bottom: 0px;
  line-height: 1.5;
  position: relative;
}

.searchConditions::before {
  content: "";
  width: 230px;
  height: 22px;
  background-image: url(../img/searchConditions_ttl.svg);
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 230px 22px;
  position: absolute;
  top: -15px;
  left: 50%;
  margin-left: -115px;
  z-index: 10;
}

.searchConditions::after {
  content: "";
  width: 230px;
  height: 8px;
  background-color: #fff;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 230px 22px;
  position: absolute;
  top: -2px;
  left: 50%;
  margin-left: -115px;
  z-index: 5;
}

.searchConditions__list-title {
  color: #3777CB;
  font-size: 14px;
  font-weight: bold;
}

.searchConditions__list {
  margin-bottom: 10px;
}

.searchConditions__list:nth-last-oy-type(1) {
  margin-bottom: 0;
}

#age_group_txt, #consultation_group_txt, #treatment_group_txt, #type_txt, #kodawari_txt {
  display: inline-block;
  margin-left: 5px;
  font-size: 14px;
}

.return_form_area {
  background: #fff;
  padding: 40px 0 0;
}

.return_form_area a {
  width: 400px;
  line-height: 40px;
  display: block;
  border-radius: 4px;
  color: #000;
  margin: 0px auto;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  background-color: #fff;
  text-decoration: none;
  border: 1px solid #000;
  position: relative;
}

.return_form_area a::before {
  content: "";
  width: 8px;
  height: 12px;
  background-image: url("../img/ico_back.svg");
  display: inline-block;
  margin-right: 10px;
  position: absolute;
  left: 10px;
  top: 50%;
  margin-top: -4px;
}


/* ranking */

.ranking.result {
  background: none;
}

.result_page.ed .ranking__ctaArea-logo {
  box-sizing: border-box;
}

.result_page.ed .ranking__item-top {
  display: block;
  text-align: center;
  height: 1em;
}

.ranking__item.id_1 .ranking__name, .ranking__item.id_1 .ranking__ctaArea {
  background: #FFFBDB;
}

.ranking__item.id_1 .ranking__item-top::before {
  content: "";
  background-image: url("../img/ct_ico_rank01.png");
  width: 120px;
  height: 80px;
  position: absolute;
  display: inline-block;
  bottom: -56px;
  left: 30px;
}

.result_page.ed .ranking__item .bnr__txt {
  display: none;
}

.result_page.ed .ranking__item.id_1 .bnr__txt, .result_page.ed .ranking__item.id_2 .bnr__txt, .result_page.ed .ranking__item.id_3 .bnr__txt, .result_page.ed .ranking__item.id_4 .bnr__txt, .result_page.ed .ranking__item.id_5 .bnr__txt {
  display: flex;
}

.result_page.ed .cm__check {
  font-size: 1rem;
}

.result_page.ed .ranking__point-contents {
  font-size: 0.85rem;
}

.imgttl_searchresult {
  width: 100%;
  margin: 0;
  height: 134px;
  background-image: url("../img/result_fv_bg_sp.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.searchConditions {
  margin-top: -176px;
  margin-bottom: 30px;
  margin: 20px;
}

#PANKUZU {
  padding: 0 10px;
}

#PANKUZU .pankuzu {
  width: auto;
}

.options_accordion_ul {
  margin-bottom: 0;
}

.result_page a.btn-main {
  box-sizing: border-box;
}

.Refine_Result_Count .Refine_Result_Count_text {
  font-size: 1rem;
}

.Refine_Result_Count .Refine_Result_Count_red {
  font-size: 1.5rem;
}

.Refine_Search_Box_wrap {
  padding: 10px 15px;
}

.return_form_area {
  padding: 20px 0 0;
}

.return_form_area a {
  width: calc(100% - 40px);
  margin: 0px auto;
}

.result_page.ed .ranking__item-top_txt {
  text-align: left;
}

.ranking__item.id_1 .ranking__item-top::before {
  display: none;
}

.ranking__item.id_1 .ranking__item-top_txt {
  position: relative;
  padding-left: 75px;
  top: -5px;
}

.ranking__item.id_1 .ranking__item-top {
  height: 30px;
}

.ranking__item.id_1 .ranking__item-top_txt::before {
  content: "";
  background-image: url(../img/ct_ico_rank01.png);
  width: 64px;
  height: 42px;
  background-size: 64px 42px;
  display: inline-block;
  position: absolute;
  top: -1px;
  left: -2px;
}

/* ========================================================
フッター
=========================================================*/
.footer {
  position: relative;
  z-index: 9999;
}
.footer__bottom {
  margin-top: 1.875rem;
}
.footer__links {
  font-size: 0.75rem;
  color: var(--Text);
  text-align: center;
}
.footer__links a {
  color: var(--Text);
  font-weight: normal;
  text-decoration: none;
}
.footer__copy {
  color: #fff;
  text-align: center;
  font-size: 0.625rem;
  background: var(--Text);
  padding: 0.5rem 0;
  margin-top: 0.75rem;
}
.footer__links-wrapper {
  padding-top: 1.875rem;
}
.footer__links-inner {
  display: block;
  padding: 0 1.875rem;
}
.footer__links-inner dl {
  padding-right: 0;
}
.footer__links-inner dl:nth-child(n+2) {
  margin-top: 2rem;
}
.footer__links-inner dt {
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.5;
  position: relative;
  transition: all 0.3s;
  width: 100%;
}
.footer__links-inner dd ul li {
  font-size: 0.75rem;
  font-weight: normal;
  line-height: 1.5;
  list-style: none;
  position: relative;
  margin-top: 0.937rem;
}
.footer__links-inner dl:nth-child(2):last-child dd ul li {
  white-space: normal;
}
.footer__links-inner dd ul li a {
  font-weight: normal;
  text-decoration: none;
  color: var(--Text);
}
.footer__info-links {
  text-align: center;
}
.footer__info-links a {
  color: var(--Text);
  text-decoration: none;
  transition: 0.3s;
}
.footer__info-links a:hover {
  opacity: 0.6;
}


/* ========================================================
20230215 地域名追加
=========================================================*/
.header {
  position: relative;
}
.tiiki {
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  position: absolute;
  top: 20.2%;
  left: 28.5%;
}

/* ========================================================
20230216 ED治療薬の比較
=========================================================*/

.edComparison{
  margin: 40px auto 0px;
  position: relative;
  padding: 50px 0 0;
}

.edComparison .line{
  top:0;
}

.edComparison__ttl{

}

.edComparison__img{
  margin-top:20px;
}

.edComparison__txt{
  margin-top:20px;
  text-align: center;
  padding:10px 20px;
  font-weight: bold;
  line-height: 1.7;
  font-size: 0.875rem;
}

/* .edComparison__txt .marker{
  background: none;
  text-decoration: underline;
  text-decoration-color: #E6C379;
  font-weight: bold;
  color: #E6C379;
} */


/* ========================================================
20230216 修正
=========================================================*/
.Refine_Search {
  margin-top: 0;
}
.edComparison {
  padding-top: 35px;
  padding-bottom: 25px;
  margin-top: 25px;
}
.edComparison__img {
  margin-top: 15px;
}
.edComparison__txt {
  padding: 0 20px;
  margin-top: 12px;
}
.main .section:first-of-type.edComparison .line {
  display: none;
}
.main .section:first-of-type.edComparison {
  padding-top: 0;
  margin-top: 10px;
}


/* ========================================================
20230222 修正
=========================================================*/
.txtBox {
  background: #fff;
  border: 2px solid var(--Text);
  border-radius: 7px;
  padding: 13px 15px 15px;
}
.ed_nayami {
  background: var(--Back);
  padding-bottom: 20px;
}
.ed_nayami .txtBox {
  font-size: 0.875rem;
}


/* ========================================================
20230227 edComparison修正
=========================================================*/
.edComparison {
  background: linear-gradient(105deg, #3067C3 0%, #3067C3 49%, #3678CA 49%, #3678CA 100%);
  padding-top: 0;
  padding-bottom: 15px;
}
.main .section:first-of-type.edComparison {
  margin-top: 0;
}
.edComparison__img {
  margin-top: 0;
}
.edComparison__txt {
  text-align: left;
  background: #fff;
  border: 2px solid var(--Text);
  border-radius: 7px;
  padding: 10px;
}


/* ========================================================
20230302 ボタンアニメーション追加
=========================================================*/
/* アニメーション */
@keyframes anime_cvbtn01 {
  0% {
      left:-20%;
  }
  10% {
      left: 120%;
  }
  100% {
      left: 120%;
  }
}

.btn_anime01 {
  overflow: hidden;
  position: relative;
}
.btn_anime01::before {
  animation: anime_cvbtn01 3s ease-in-out infinite;
  content: '';
  position: absolute;
  top: -35%;
  left: -10%;
  width: 30px;
  height: 140%;
  transform: scale(2) rotate(45deg);
  background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.5) 100%, rgba(255, 255, 255, 0) 0%);
}

/* 20240816 コラム修正 */
.page-lower {
  padding-top: 1rem;
}
.page-lower h2 {
  margin-top: 1rem;
}
.page-lower .header::before {
  display: none;
}
/* ========================================================
20241021 検索結果ソート追加
=========================================================*/
.options_accordion_ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
  box-sizing: border-box;
  justify-content: space-between;
  width: 100%;
  padding: 15px;
}
.options_accordion_ul li {
  text-align: center;
  font-size: 14px;
  border-radius: 4px;
  background-color: #fff;
}
.options_accordion_ul li.active {
  background-color: var(--Main);
}
.options_accordion_ul li.active a {
  color: #fff;
  opacity: 1;
}
.options_accordion_ul li a {
  display: block;
  text-decoration: none;
  border-radius: 4px;
  height: 32px;
  line-height: 32px;
  color: var(--Text);
}
/* ========================================================
20240821 /fb 案件追加
=========================================================*/
.fb .comparisonBest3__table-icon {
  width: 40px;
  margin: 0 auto;
}
.fb .comparisonBest3__table th {
  font-size: 11px;
}
.fb .ranking__ctaArea-logo {
  margin-top: 0;
  padding-top: 0;
}
.fb .ranking__ctaArea-catch {
  font-size: 15px;
}
/* 20240912 追記 */
.fb .ed_nayami {
  padding-bottom: 0;
}
.fb .edComparison {
  margin-top: 0px;
}
.fb .fv__ttl {
  background: #fff;
}

/* 20241210 検索アイコン修正 */
#Refine_Search_Area dl.Refine_Search_conditions_Area label.privacy span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_privacy.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label.today span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_today.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label.night span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_night.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label.beginner span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_beginner.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label.generic span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_generic.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label.clock span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_clock.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label.delivery span.checkbox_icon::before {
  background-image: url(../img/kodawari_icon_delivery.svg);
}
#Refine_Search_Area dl.Refine_Search_conditions_Area label span.checkbox_icon::before {
  content: "";
  width: 30px;
  height: 30px;
  display: block;
  margin: 0 8px;
  background-repeat: no-repeat;
}
