@charset "UTF-8";
/* ========================================================
ベース設定
=========================================================*/
:root {
  /* カラー */
  --Text: #364048;
  --Text_blue: #1a0dab;
  --Main: red;
  --Sub: black;
  --Accent: #5BC1CC;
  --Back: #E5ECF6;
  --gray: #364048;
  --blue01: #E4F6FC;
  --blue02: #6CB5FA;
  --red: #9F0900;
  --yellow: #F9F41F;
  --orange: #FFA01C;
  /* 文字サイズ */
  --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: 16px auto 8px;
  position: absolute;
  top: 0;
  right: 0;
}
.adTxt span {
  display: inline-block;
	font-size: 14px;
	font-weight: bold;
	border: 1px solid var(--Text); /* 枠色 変数名がTextでない場合は変更 */
	padding: 2px 14px;
}
.txt--clinicfor {
  font-size: 10px;
  text-align: right;
  padding: 0 8px;
  position: absolute;
  top: 0;
  right: 0;
}
.fb .header {
  z-index: -1;
}
.fb .adTxt {
  margin: -42px auto 8px;
  padding: 0;
  position: static;
}
.fb .adTxt span{
  background-color: #fff;
}
.fb .txt--clinicfor {
  position: static;
}
.section__ttl--img.comparison__ttl {
  margin-top: 30px;
}
.fb .header__logo {
  display: none;
}

/* header ロゴ追加 */
.header__logo{
  height: 45px;
  width: 100%;
  background-color: #fff;
}
.header__logo::before{
  position: absolute;
  content: "";
  background: url(../img/Wellness-list_header.svg)no-repeat center;
  background-size: 100%;
  top: 0;
  left: 0;
  width: 160px;
  height: 45px;
  padding: 2px 4px;
  z-index: 100;
}

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

/* 文字装飾 */
.bold {
  font-weight: bold;
}
.red {
  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 65%, var(--yellow) 65%);
  display: inline;
  font-weight: bold;
}

/* CTAボタン */
.ctaBtn {
  font-size: 1rem;
  color: #fff;
  text-decoration: none;
  text-align: center;
  display: inline-block;
  background: #e8372f;
  border-radius: 50px;
  width: 100%;
  padding: 10px 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.85rem;
  color: #fff;
  text-decoration: none;
  text-align: center;
  display: inline-block;
  background: #e8372f;
  border-radius: 0.1875rem;
  width: 100%;
  padding: 10px 15%;
  position: relative;
  border-radius: 50px;
  margin-top: 4px;
}
.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.805rem;
  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;
}
.ranking__table th,
.ranking__table td{
  border-right: 1px solid var(--Text);
  border-left: 1px solid var(--Text);
}
.ranking__table td{
  background-color: #fff;
  text-align: center;
}
.ranking__table__link-wrap{
  font-size: 12px;
  width: calc(100% - 30px);
  text-align: right;
  margin-inline: auto;
  margin-top: 4px;
  white-space: nowrap;
}

/* テーブルテキスト */
.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;
}


/* ========================================================
記事ページ
=========================================================*/
.header__below__bnr{
  padding: 0 15px;
}
.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: 22px 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F4F6FE;
  text-decoration: underline 3px #30A9E2;
}
.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 {
  width: 100%;
  text-align: center;
  position: relative;
  font-weight: bold;
  font-size: 1.125rem;
  padding: 1rem 22px;
  position: relative;
}
.h2-border{
  display: block;
  border-top: 4px solid #000;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  margin-top: 20px;
}

.page-lower h2::before, .page-lower h2::after {
  content: "";
  display: inline-block;
  background: url(../img/ct_brackets.png) no-repeat center / 22px auto;
  width: 22px;
  height: 45px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.page-lower h2::before{
  left: 0;
}
.page-lower h2::after {
  transform: scale(-1, 1);
  margin-left: 2rem;
  right: 0;
  top: 24%;
}

.page-lower h3 {
  font-size: 1rem;
  border-left: 4px solid #30A9E2;
  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 {
  font-size: 16px;
  line-height: 1.5;
  border: 2px solid var(--Text);
  border-right-width: 4px;
  border-bottom-width: 4px;
  margin-top: 24px;
  padding: 15px;
}
.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(--Text);
  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-collapse: collapse;
}
.page-lower .cmn__table th,
.page-lower .cmn__table td{
  border: 1px solid var(--Text);
  position: relative;
  font-size: 12px;
  padding: 6px 0;
}
.page-lower .cmn__table th{
  width: 50%;
  background-color: var(--Back);
}
.page-lower .cmn__table td{
  text-align: center;
  vertical-align: middle;
}

.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;
}
.matome__list{
  font-size: 16px;
  line-height: 1.5;
  border: 2px solid var(--Text);
  border-right-width: 4px;
  border-bottom-width: 4px;
  margin-top: 24px;
  padding: 15px;
}
.matome__list p{
  margin-top: 0;
  font-size: 16px;
}
.matome__list p:not(:first-of-type){
  margin-top: 12px;
}

.ctaBtn.page{
  margin-top: 18px;
}

/* パンくず */
.pankuz.inner {
  margin-top: 10px;
}
.pankuz__home {
  text-decoration: underline;
}
.pankuz ul {
}
.pankuz ul a {
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 4px;
  color: inherit;
  font-weight: normal;
}
.pankuz li {
  font-size: 12px;
  display: inline-block;
  font-weight: bold;
}
.pankuz__home{
  position: relative;
}
.pankuz__home::after{
  position: absolute;
  content: "＞";
  font-weight: normal;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
}
.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: #fff;
}

.inner.fv__inner {
  display: grid;
  gap: 10px;
  padding: 8px 10px;
}
.fv__inner__bottom{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.fv__item {
  text-align: center;
  padding:0px 10px 10px;
  border-radius: 7px;
  background-color: #fff;
  display: grid;
  grid-template-columns: subgrid;
  grid-row: span 6;
  position: relative;
  box-shadow: 0 0 0 2px #F4F6FE;
}
.fv__inner > .fv__item {
  background: #FFFEE2;
  box-shadow: 0 0 0 2px #30A9E2;
}

.fv__cta_txt{
  font-size: 12px;
  font-weight: bold;
  margin-top: 0;
}

.sp__div{
  display: grid;
  grid-template-columns: 1fr 1fr;
  justify-content: space-between;
  gap: 18px;
  margin-top: 6px;
}
.fv__item__ttl{
  color: #fff;
  background-color: #30a9e2;
  width: calc(100% + 20px);
  margin-left: -10px;
  padding: 6px 10px;
  font-size: 12px;
  border-radius: 7px 7px 0 0;
  font-weight: bold;
}
.fv__inner__bottom .fv__item__ttl{
  background-color: #cfebf8;
  color: var(--Text);
}

/* .fv__item::before{
  content: "";
  display: inline-block;
  background: #fff;
  width: 3.9375rem;
  height: 3px;
  position: absolute;
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
}
.fv__item:nth-of-type(1)::before{
  background:#fffbdb;
} */
/* .fv__item .fv__item-rank {
  width: 48px;
  height: 32px;
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  top: -22px;
}
.fv__item:nth-of-type(1) .fv__item-rank{
  background: url(../img/ct_ico_rank01.png)no-repeat center;
  background-size: 48px 32px;
}
.fv__item:nth-of-type(2) .fv__item-rank{
  background: url(../img/ct_ico_rank02.png)no-repeat center;
  background-size: 48px 32px;
}
.fv__item:nth-of-type(3) .fv__item-rank{
  background: url(../img/ct_ico_rank03.png)no-repeat center;
  background-size: 48px 32px;
} */
.fv__txt {
  font-size: 0.75rem;
  line-height: 1.5;
  border-bottom: 1px solid var(--Grey);
  height: 3.625rem;
  margin-top: 6px;
  position: relative;
}
.fv__item-ttl {
  font-size: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.125rem;
  margin-bottom: 0;
}
.fv__item-img {
  border: 1px solid var(--Text);
  margin-top: 4px;
}

.sp__div .fv__item-img{
  height: 97%;
}

/* ========================================================
EDを治療できるのはクリニックだけ
=========================================================*/
.clinic {
  padding-bottom: 20px;
  background-color: #fff;
}
.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: #E1E1E1;
  padding:16px 0px;
}
.ng__box__head{
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
.ng__box-ttl-wrap {
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: var(--Text);
  border-radius: 7px 7px 0 0;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 8px 0;
  gap: 4px;
}

.ng__box-ttl-caution{
  display: block;
  content: "";
  background: url(../img/ng_box_caution.svg)no-repeat center;
  background-size: 29px;
  width: 29px;
  height: 29px;
}
.ng__box-ttl{
  font-size: 20px;
}
.ng__box-ttl-small{
  font-size: 18px;
}
.ng__box-txt {
  font-size: 16px;
  background: #fff;
  border-radius: 0 0 7px 7px;
  padding: 13px 15px 15px;
  line-height: 1.7;
}


/* ========================================================
比較表BEST3
=========================================================*/
.comparisonBest3 {
  padding:10px 0 16px;
  background-color: #fff;
}
.inner.comparisonBest3__inner {
  padding: 0;
  overflow-x: scroll;
}
/* body:not(.fb) .inner.comparisonBest3__inner{
  padding-top: 50px;
} */
body:not(.fb) .comparisonBest3__table .relative{
  position: relative;
}
body:not(.fb) .best3__accent{
  position: absolute;
  content: "お薬代1000円OFFキャンペーン";
  top: 0;
  left: 0%;
  width: 100%;
  height: 38px;
  background-color: red;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0.5px;
  transform: translateY(-100%);
  padding: 3px 0px;
}

body:not(.fb) .best3__accent div{
  display: inline-block;
  font-size: 10px;
}

.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;
  width: 700px;
}
.comparisonBest3__table::after {
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	width: 15px;
	height: 1px;
}
.comparisonBest3__table th,
.comparisonBest3__table td {
  text-align: center;
  position: relative;
}
.comparisonBest3__table th {
  font-size: 10px;
  width: 75px;
}
.small{
  font-size: 10px;
  line-height: 1.1;
}

.small.ano{
  padding:0px 15px;
  margin-top: 6px;
}

.small.ano + .small{
  margin-top: 0px;
}

.comparisonBest3__table tr:last-of-type th{
  width: 125px;
}
.comparisonBest3__table td {
  width: 200px;
  padding: 6px;
  background-color: #fff;
}
.via .comparisonBest3__table td {
  width: 182px;
}
.comparisonBest3__table-eva{
  width: 40px;
  height: 40px;
  margin-inline: auto;
}
.comparisonBest3__table-logo {
  width: 100%;
  height: 34px;
  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-color: #fffee2;
}
body:not(.fb) .comparisonBest3__table > tbody > tr > td:nth-of-type(1) {
  border-right: solid 2px red;
  border-left: solid 2px red;
}

body:not(.fb) .comparisonBest3__table > tbody > tr:first-of-type > td:nth-of-type(1) {
  border-top: solid 2px red;
}

body:not(.fb) .comparisonBest3__table > tbody > tr:last-of-type > td:nth-of-type(1) {
  border-bottom: solid 2px red;
}

.comparisonBest3__table > tbody > tr > th:nth-of-type(1) {
  position: sticky;
  left: 0;
  z-index: 10;
}
.comparisonBest3__table > tbody > tr:last-child  {
  border-bottom: 2px solid var(--Text);
  background-color: #fff;
}


/* ========================================================
クリニック選びのポイント
=========================================================*/
.point {
  background-color: #F4F6FE;
  position: relative;
  padding: 12px 0;
}
.point__inner {
  padding: 0;
}
.point__list {
  display: grid;
  grid-template-columns: repeat(3, 89%);
  justify-content: flex-start;
  gap: 15px;
  padding: 0 15px;
  overflow-x: scroll;
}
.point__item {
  background: #fff;
  border-radius: 25px;
  width: 100%;
  padding: 14px 15px 15px;
  flex-shrink: 0;
  position: relative;
  margin-top: 10px;
  margin-bottom: 5px;
}
.point__item-point {
  width: 36px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #32a9e2;
  color: #fff;
  border-radius: 50%;
}
.point__item-ttl {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 8px;
}
.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: 14px;
  background-color: #fff;
}
.recommend__list__scroll{
  overflow-x: scroll;
}
.recommend__list{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  width: 900px;
}
.recommend__item {
  background: 0.625rem;
  border: 2px solid #30A9E2;
  border-radius: 5px;
  position: relative;
  margin-top: 2.375rem;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  background-color: #fff;
}
.via .recommend__item{
  margin-top: 2.075rem;
}
.recommend__item:first-of-type{
  background-color: #FFFEE2;
}

.recommend__item::before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 3.3375rem;
  height: 3px;
  position: absolute;
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
}
.recommend__item-rank {
  width: 47px;
  height: 58px;
  position: absolute;
  top: -1.875rem;
  left: 50%;
  transform: translateX(-50%);
}
.recommend__item-ttl {
  font-size: 1.125rem;
  text-align: center;
  padding: 44px 10px 0px;
}
.recommend__item-contents {
  padding: 8px 15px 4px;
}

.recommend__item-contents .small{
  margin-top: 4px;
}
.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: 10px;
}
.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: flex;
  justify-content: center;
  align-items: center;
}
.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: 4px;
}
.recommend__item-ctaArea_wrap .ctaBtn::after {
  width: 0.625rem;
  height: 0.625rem;
}
.recommend__item-ctaArea_wrap .ctaBtn .fontSize--10px {
  font-weight: normal;
}


/* ========================================================
ランキング
=========================================================*/
.ranking {
  background-color: #fff;
  padding-bottom: 20px;
}
.ranking .inner{
  padding: 0 10px;
}
.ranking__contents {
  padding: 0 0.9375rem 1.875rem;
}
.ranking__item {
  background: #fff;
  padding: 10px 0 0;
  border: solid 2px #DCDCDC;
}
#rank01.ranking__item{
  background-color: #fffbdb;
  border: solid 2px #30A9E2;
}
.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: end;
  gap: 10px;
  padding: 0 10px;
  position: relative;
}
.ranking__item-rank--img {
  width: 2.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;
}
.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.675rem;
  font-weight: bold;
}
.ranking__name {
  font-size: 1.025rem;
}

/* バナー */
.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 2.5375rem;
  margin-top: 14px;
}

/* タグ */
.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-ttl{
  font-size: 1.1rem;
  text-align: center;
  font-weight: bold;
  position: relative;
  display: inline;
  background-color: #fff;
  z-index: 10;
  padding: 4px 6px;
}
#rank01 .ranking__point-ttl{
  background-color: #fffbdb;
}
.ranking__point-ttl-wrap{
  position: relative;
  text-align: center;
}
.ranking__point-ttl-brd:first-of-type{
  position: absolute;
  content: "";
  width: 50%;
  height: 2px;
  background-color: #30A9E2;
  left: 0;
  top: 50%;
}
.ranking__point-ttl-brd:last-of-type{
  position: absolute;
  content: "";
  width: 50%;
  height: 2px;
  background-color: #30A9E2;
  right: 0;
  top: 50%;
}

.ranking__point {
  margin-top: 1.875rem;
  padding: 0 15px;
}
.ranking__point .cm__check {
  margin-top: 6px;
}
.ranking__point-contents {
  line-height: 1.57;
  margin-top: 4px;
}
.ranking__point-contents small{
  margin-top: 16px;
}
.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;
  padding: 1.25rem 0.937rem 0.937rem;
}

.ranking__ctaArea-catch {
  font-size: 0.8rem;
  font-weight: bold;
  display: inline;
  position: relative;
}

.ranking__ctaArea-catch::before{
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  background-color: var(--Text);
  top: 50%;
  left: -8px;
  transform: translateY(-50%) rotate(-25deg);
}
.ranking__ctaArea-catch::after{
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  background-color: var(--Text);
  top: 50%;
  right: -8px;
  transform: translateY(-50%) rotate(25deg);
}
.ranking__ctaArea-logo {
  height: 4.375rem;
  object-fit: contain;
  padding: 0.937rem;
}
.ranking__ctaArea .ctaBtn {
  font-size: 1rem;
  padding-top: 15px;
  padding-bottom: 15px;
  margin-top: 4px;
}
.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;
  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;
  background-color: #fff;
}
.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: 10px;
  margin-left: 15px;
  position: relative;
  width: 772px;
}
.comparison__table::after {
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	width: 15px;
	height: 1px;
}
.comparison__table th {
  padding: 5px;
  width: 11%;
  position: sticky;
  left: 0;
  z-index: 10;
}
.comparison__table td{
  background-color: #fff;
  position: relative;
  text-align: center;
}
.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 > tbody > tr > td:nth-child(1) {
  vertical-align: middle;
}
.comparison__table > tbody > tr > td:nth-child(2) {
  position: relative;
}

.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;
}
.comparison__table-txtLink.single{
  height: 36px;
  line-height: 36px;
}
.comparison__table > tbody > tr:last-child > th,
.comparison__table > tbody > tr:last-child > td {
  border-bottom: 2px solid var(--Text);
}


/* ========================================================
まとめ
=========================================================*/
.matome{
  background:#fff;
}
.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-color: #30A9E2;
  margin-bottom: 10px;
  position: relative;
}
.matome__ttl::after {
  content: "";
  display: inline-block;
  border-top: 11px solid #30A9E2;
  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 15px 15px;
}
.matome__contents {
  background:#fff;
  padding: 15px 0 30px;
}
.matome__txt {
  line-height: 1.57;
  background: #fff;
  padding: 15px 0;
  margin-top: 4px;
}
.matome__contents .ctaBtn {
  margin-top: 0px;
}


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

.via .Refine_Search{
  margin-top: 26px;
}

.Refine_Search .inner {
  padding: 0;
}

.Refine_Search_ttl {
  padding: 10px 0 8px;
}

.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 dl.Refine_Search_conditions_Area label {
  display: flex;
  align-items: center;
}

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

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

.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_icon04.svg);
}

.kodawari__list>.multi-item:nth-child(4)>label>span.checkbox_icon {
  background-image: url(../img/kodawari_icon03.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 input[type="checkbox"]+span.checkbox_icon {
  display: block;
  margin-right: 8px;
  margin-left: 9px;
  position: relative;
}

#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: #e8372f;
  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: 50px;
  position: relative;
  height: 48px;
  line-height: 48px;
  width: 400px;
  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 dl.Refine_Search_conditions_Area label {
  border-radius: 4px;
}

.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: 0px;
  }
  #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;
  }

  #Refine_Search_Area span.kodawari {
    display: inline-block;
    width: 100%;
    margin-left: 0;
    text-align: left;
  }

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

#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%);
}

.result_page #CONTENTS{
  background: none;
}

#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 {
  width: 100%;
  margin: 0 auto;
  height: 400px;
  background-image: url(<?= IMG_URL; ?>/result_fv_bg_pc.png);
  background-size: 900px 281px;
  background-repeat: no-repeat;
  background-position: top center;
}

.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: 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;
  position: relative;
}

.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-top: 30px;
  height: 134px;
  background-image: url("../img/ed_ttl_result.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;
}
.ranking__item-top-inner{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.ranking__item.id_1 .ranking__item-top-inner{
  padding-left: 44px;
}

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

.ranking__item.id_1 .ranking__item-top::before {
  content: "";
  background: url(../img/ed_ico_rank01.svg)no-repeat;
  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: 10.5%;
  left: 28.5%;
}

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

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

.edComparison__table__meds{
  height: 40px;
  width: auto;
  margin-inline: auto;
  display: block;
  margin-top: 6px;
}
.edComparison__table-wrap{
  overflow-x: scroll;
}
/* 
.edComparison__table-inner{
  padding: 0 15px;
} */

.edComparison__table{
  width: 500px;
  border-collapse: collapse;
  border: solid 2px var(--Text);
}
.edComparison__table th{
  padding: 6px 8px;
}
.edComparison__table th,
.edComparison__table td{
  position: relative;
}
/* .edComparison__table th + td,
.edComparison__table td + td{
  border-left: solid 1px var(--Text);
  border-bottom: solid 1px var(--Text);
} */

.edComparison__table thead th{
  background-color: #30a9e2;
  color: #fff;
  font-size: 1rem;
}
.edComparison__table thead th:nth-of-type(2){
  width: 30%;
}

.edComparison__table tbody th:first-of-type{
  background-color: #30a9e2;
  color: #fff;
}

.edComparison__table td{
  background-color: #fff;
  font-size: 0.875rem;
  text-align: center;
}

.edComparison__table tbody tr th:first-of-type{
  position: sticky;
  left: 0;
  z-index: 10;
  width: 18%;
}
.edComparison__table thead th:nth-of-type(3),
.edComparison__table thead th:nth-of-type(4),
.edComparison__table thead th:nth-of-type(5){
  width: 19%;
}
.arrow__down{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 80px 0 80px;
  border-color: #30a9e2 transparent transparent transparent;
  margin: 20px auto 0;
}
.edComparison__table__txt{
  padding: 0 15px;
  font-size: 16px;
  margin-top: 14px;
  line-height: 1.7;
}

.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: 0px;
}
.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 {
  padding: 20px 0;
  background-color: #fff;
}
.main .section:first-of-type.edComparison {
  margin-top: 0;
}
.edComparison__img {
  margin-top: 0;
}
.edComparison__txt {
  text-align: left;
  background: #fff;
  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: -20%;
  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%);
}
/* ========================================================
20240402 fb/ED治療薬テーブル改修
=========================================================*/
.edComparison_fb .inner {
  padding: 0;
}
.edComparison_fb .edComparison__table-wrap {
  overflow-x: hidden;
}
.edComparison_fb .edComparison__table {
  width: 100%;
  margin-top: 0;
}
.edComparison_fb .edComparison__table thead th:nth-of-type(2) {
  width: 20%;
}
.edComparison_fb .table th {
  width: 18%;
  padding: 8px 2px;
  font-size: 11px;
}
.edComparison_fb .table td {
  padding: 8px 2px;
  font-size: 11px;
}
/* ========================================================
20240424 fb/ED改修
=========================================================*/
.fb .inner.comparisonBest3__inner {
  overflow-x: hidden;
}
.fb .comparisonBest3__table{
  width: 100%;
  margin-left: 0;
}
.fb .comparisonBest3__table th{
  width: 60px;
}
.fb .comparisonBest3__table td {
  width: auto;
  font-size: 11px;
  vertical-align: top;
}
.fb .point__list{
  grid-template-columns: auto;
}
/* ========================================================
20240529 fv修正
=========================================================*/
.fv__inner > .fv__item{
  box-shadow: 0 0 0 2px #2371E5;
}
.fv__inner > .fv__item > .fv__item__ttl{
  background-color: #2371E5;
  box-shadow: 0 0 0 2px #2371E5;
  padding: 2px 0 2px 50px;
  font-size: 16px;
  position: relative;
}
.fv__inner__bottom > .fv__item:nth-child(1) > .fv__item__ttl{
  padding-left: 44px;
}
.fv__inner__bottom > .fv__item:nth-child(2) > .fv__item__ttl{
  padding-left: 40px;
}
.fv__item__ttl::before{
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  display: inline-block;
  position: absolute;
}
.fv__inner > .fv__item > .fv__item__ttl::before{
  background-image: url("../img/ed_ico_rank01.svg");
  width: 38px;
  height: 44px;
  top: -5px;
  left: 32px;
}
.fv__inner__bottom > .fv__item:nth-child(1) > .fv__item__ttl::before{
  background-image: url("../img/ed_ico_rank02.svg");
  width: 30px;
  height: 34px;
  top: -1px;
  left: 20px;
}
.fv__inner__bottom > .fv__item:nth-child(2) > .fv__item__ttl::before{
  background-image: url("../img/ed_ico_rank03.svg");
  width: 30px;
  height: 34px;
  top: -1px;
  left: 24px;
}
.fv__item-point{
  width: 130px;
  height: auto;
  margin: 0 auto;
}
.sp__div{
  gap: 10px;
  margin-top: 10px;
}
.sp__div > div:nth-child(2){
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}
.sp__div .fv__item-img {
  object-fit: cover;
}
.sp__div > div:nth-child(2) > a:nth-child(1) > p{
  margin-top: 10px;
}
.sp__div > div:nth-child(2) > .fv__txt{
  height: 4.125rem;
}
.sp__div > div:nth-child(2) > .fv__txt > .fv__item-point{
  margin: -10px auto 0;
}
/* ========================================================
20240628 地域名追加
=========================================================*/
.tiiki {
  top: 8.5%;
  left: 46.5%;
}
/* 20240906 追記 */
.comparison__table > tbody > tr:nth-child(-n+4) > td:nth-child(2) {
  background-color: #fffbdb;
}
/* 悩みコンテンツ */
.nayami {
  margin-top: 20px;
}



