@charset "utf-8";

/* ---------------------
    variables
--------------------- */
:root {
    --font-color: rgb(64, 64, 64);
    --font-color--light: rgba(64, 64, 64, 0.5);
    --font-color--super-light: rgb(217, 217, 217);
    --grey: rgba(64, 64, 64, 0.24);
    --grey--semi: rgba(64, 64, 64, 0.544);
    --grey--light: rgba(64, 64, 64, 0.05);
    --basic-blue: rgb(0, 64, 152);
    --basic-blue--light: rgb(102, 140, 193);
    --indigo-blue: rgb(15, 19, 80);
    --lucky-blue: rgb(0, 129, 204);
    --lucky-blue--light: rgba(0, 129, 204, 0.08);
    --lucky-blue--footer: rgba(0, 129, 204, 0.16);
    --lucky-green: rgb(0, 153, 68);
    --lucky-green--light: #f2f8eb;
    --royal-green: rgb(0, 86, 69);
    --lucky-red: rgb(184, 26, 53);
    --lucky-red--light: rgba(184, 26, 53, 0.44);
    --gray-scale: rgb(90, 90, 90);
    --gray-scale--light: rgb(222, 222, 222);
    --gray-scale--superlight: rgb(244, 244, 244);
    --support-orange: rgb(255, 131, 0);
    --support-green: rgb(124, 188, 60);

    --font-size: 14px;
    --container-padding: 24px
}



/* ---------------------
    fonts
--------------------- */
@font-face {
    font-family: 'M PLUS 1p';
    src: url('/assets/fonts/MPLUS1p-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'M PLUS 1p';
    src: url('/assets/fonts/MPLUS1p-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

.font-weight-normal {
    font-weight: normal;
}
.font-weight-bold {
    font-weight: bold;
}

/* ---------------------
    html
--------------------- */

body {
    font-family: 'M PLUS 1p', sans-serif;
    font-size: var(--font-size);
    font-weight: 400;
    letter-spacing: 0.06em;
    color: var(--font-color);
}

p {
    line-height: 18px;
    vertical-align: middle;
}

a :not(.l-footer__list *, .button-old) {
    color: var(--lucky-blue);
    text-decoration:none;
    text-decoration-color: var(--lucky-blue);
}

main {
    padding-bottom: 0;
    margin: 0 auto;
    transform: rotate(0.03deg);         /* シャギーを防ぐ指定 */
}
.container-fluid-main {
    width: 100%;
    padding-right: var(--bs-gutter-x,.75rem);
    padding-left: var(--bs-gutter-x,.75rem);
    margin-right: auto;
    margin-left: auto;
    min-height: calc(100vh - 234px); /* ヘッダ・フッタの固定高さを引く */
}

/* ---------------------
    layouts
--------------------- */

.main-fluid {
    max-width: none;
}

.container-fluid {
    padding: var(--container-padding);
}
.row {
    padding: 0 calc(var(--container-padding) - 4px);
}

/* text */
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}

/* width */
.w-16 {
    width: 16px;
}
.ico-w-20 {
    width: 20px;
}
.w-50 {
    width: 50%;
}

.w-70 {
    width: 70% !important;
}

.w-full {
    width: 100% !important;
}

/* height */
.h-36 {
    height: 36px;
}

.h-46 {
    height: 46px;
}

.h-70 {
    height: 70px;
}

.h-150 {
    height: 150px;
}

.h-100vh {
    height: 100vh;
}

.h-full {
    height: 100%;
}


/* gap */
.gap-2 {
    gap: 8px;
}
.gap-3 {
    gap: 12px;
}
.gap-4 {
    gap: 16px;
}
.gap-5 {
    gap: 20px;
}
.gap-6 {
    gap: 24px;
}

/* margin */
.mr-1 {
    margin-right: 4px;
}
.mr-2 {
    margin-right: 8px;
}
.mr-3 {
    margin-right: 12px;
}
.mr-4 {
    margin-right: 16px;
}
.mr-5 {
    margin-right: 20px !important;
}
.ml-0 {
    margin-left: 0px !important;
}
.ml-1 {
    margin-left: 4px;
}
.ml-2 {
    margin-left: 8px;
}
.ml-3 {
    margin-left: 12px;
}
.ml-4 {
    margin-left: 16px;
}
.ml-5 {
    margin-left: 20px;
}
.pl-0 {
    padding-left: 0px !important;
}
.pl-1 {
    padding-left: 4px !important;
}
.pl-2 {
    padding-left: 8px !important;
}
.pl-3 {
    padding-left: 12px !important;
}
.pl-4 {
    padding-left: 16px !important;
}
.pl-5 {
    padding-left: 20px !important;
}

/* ---------------------
    styles
--------------------- */
.shadow {
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

.img-rounded {
    border-radius:6px;
}
.img-fit {
    object-fit: cover;
}

/* ---------------------
    main
--------------------- */
.main-top {
    display: flex;
    justify-content: space-between;
    align-items: top;
}
.main-top h1 {
    width: 60%;
}
.main-top__item {
    width: 20%;
}


/* ---------------------
    animation
--------------------- */

.scroll-horizon {
    overflow-x: scroll;
}


/* ---------------------
    atoms
--------------------- */

/* icon color */
.icon {
    filter: invert(22%) sepia(3%) saturate(13%) hue-rotate(315deg) brightness(89%) contrast(81%);
}
.icon--semi {
    filter: invert(63%) sepia(6%) saturate(9%) hue-rotate(357deg) brightness(89%) contrast(80%);
}
.icon--light{
    filter: invert(65%) sepia(5%) saturate(0%) hue-rotate(136deg) brightness(92%) contrast(89%);
}
.icon--white {
    filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(72deg) brightness(99%) contrast(99%);
}
.icon--basic-blue {
    filter: invert(18%) sepia(99%) saturate(1725%) hue-rotate(202deg) brightness(90%) contrast(108%);
}
.icon--lucky-blue {
    filter: invert(35%) sepia(30%) saturate(3089%) hue-rotate(175deg) brightness(101%) contrast(105%);
}
.icon--lucky-blue--light {
    filter: invert(99%) sepia(56%) saturate(1578%) hue-rotate(177deg) brightness(107%) contrast(97%);
}
.icon--lucky-red {
    filter: invert(13%) sepia(95%) saturate(3098%) hue-rotate(338deg) brightness(101%) contrast(94%);
}
.icon--font-color {
    filter: invert(23%) sepia(12%) saturate(6%) hue-rotate(11deg) brightness(100%) contrast(93%);
}
.icon--support-orange {
    filter: invert(55%) sepia(81%) saturate(2365%) hue-rotate(360deg) brightness(99%) contrast(100%);
}
.icon--lucky-green {
    filter: invert(33%) sepia(94%) saturate(1855%) hue-rotate(129deg) brightness(90%) contrast(101%);
}
.icon--support-green {
    filter: invert(58%) sepia(68%) saturate(387%) hue-rotate(47deg) brightness(99%) contrast(94%);
}

/* icon size */
.icon--text--outer {
    display: inline-block;
    height: 22px;
    width: 22px;
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.icon--text {
    height: 14px;
    margin: 2px 0;
}

/* avatar */
.avatar {
    position: relative;
    width: 80px;
    height: 80px;
}

.avatar__icon {
    width: 80px;
    height: 80px;
    background-color: var(--basic-blue--light);
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.avatar__icon img {
    width: 50%;
}

.disabled > .avatar__icon {
    background-color: var(--font-color--super-light);
}
.avatar .img-chip {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 22px;
    height: 22px;
    background-color: var(--basic-blue);
    border-radius: 50px;
    font-weight: bold;
    color: white;
    border: 1px white solid;
    font-size: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.avatar .img-chip img {
    width: 50%;
}


/* menu */
.menu {
    width: 100%;
    max-width: 80px;
    height: inherit;
    position: relative;
    margin: 0 auto;
}

.menu.active::after {
    content: '';
    position: absolute;
    top: -5px;
    left: -5px;
    border: 2px var(--lucky-blue) solid;
    border-radius: 100px;
    width: 70px;
    height: 70px;
}

.menu__icon {
    width: 60px;
    height: 60px;
    background-color: var(--lucky-blue);
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin:0 auto 8px;
}


.menu__icon img {
    width: 48%;
    filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(72deg) brightness(99%) contrast(99%);
}
.menu__icon--img {
    object-fit: cover;
}

.menu__text {
    width: 100%;
    line-height: 14px;
    text-align: center;
}
.menu__chip {
    position: absolute;
    right: -4px;
    width: 22px;
    height: 22px;
    background-color: var(--lucky-red);
    border-radius: 50px;
    font-weight: bold;
    color: white;
    border: 1px white solid;
    font-size: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.menu__chip span {
    padding-left: 2px;
}

/* chip */
.chip {
    width: 22px;
    height: 22px;
    background-color: var(--lucky-red);
    border-radius: 50px;
    font-weight: bold;
    color: white;
    border: 1px white solid;
    font-size: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.chip span {
    padding-left: 1px;
}


.disabled > .menu__icon {
    background-color: var(--grey);
}
.disabled > .menu__text {
    color: var(--font-color--light);
}

/* mypage-icon */
.mypage__icon {
    width: 26px;
    height: 26px;
    background-color: var(--lucky-blue);
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin:0 auto;
}
.mypage__icon--outlined {
    border-color: var(--font-color--light);
    border-width: 1px;
    background-color: white;
}

.mypage__icon--outlined img {
    width: 48%;
    filter: invert(65%) sepia(5%) saturate(0%) hue-rotate(136deg) brightness(92%) contrast(89%);
}
.mypage__icon--img {
    object-fit: cover;
}
.hosipitalBookmark p {
    line-height: 22px;
}
.hosipitalBookmark p.basic-blue--text{
    line-height: 30px;
}
/* form */
input::placeholder {
    color: var(--font-color--light);
}

.input__label {
    font-size: var(--font-size);
    color: var(--font-color--light);
    display: block;
    margin-bottom: 6px;
    font-weight: bold;
}

.input__text-field {
    width: 100%;
    height: 46px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--lucky-blue);
    border-radius: 4px;
    padding: 0 12px;
    background-color: #fff;
}
.input__text-field.dense {
    height: 26px;
}

.input__text-field--error {
    border-color: var(--lucky-red) !important;
}

.input__textarea {
    width: 100%;
    border-width: 1px;
    border-style: solid;
    border-color: var(--lucky-blue);
    border-radius: 4px;
    padding: 12px;
    background-color: #fff;
}

.input__textarea--no-focus:focus{
    outline: none;
}

.input__select {
    width: 100%;
    height: 46px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--lucky-blue);
    border-radius: 4px;
    padding: 0 12px;
    background-color: #fff;
    background-image: url('/assets/icons/arw2_down--grey.svg');
    background-position: right 16px center;
    background-repeat: no-repeat;
    background-size: 11px 11px;
}

.input__select.dense {
    height: 26px;
}

.input__select:invalid {
    color: var(--font-color--light);
}

.input__file {
    background-color: var(--gray-scale--light);
    padding: 24px 12px;
    border-radius: 4px;
    display: flex;
    position: relative;
}
.input__file input {
    width: 100%;
    height: 28px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--lucky-blue);
    border-radius: 4px;
    padding: 0 12px;
    background-color: #fff;
    margin-right: 8px;
}
.input__file button {
    min-width: 92px;
    text-align: center;
    height: 28px;
    background-color: var(--gray-scale);
    color: white;
    border-radius: 4px;
    padding: 0 4px;
}

.input__file > img {
    display: block;
    margin: 0 auto;
    width: 60%;
}

.input__file .input__file__img-icon {
    min-width: 0;
    width: 22px;
    height: 22px;
    background-color: var(--basic-blue--light);
    position: absolute;
    top: 12px;
    right: 12px;
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.input__file__img-icon img {
    width: 12px;
    filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(72deg) brightness(99%) contrast(99%);
}

.input__file .input__file__close-icon {
    min-width: 0;
    width: 22px;
    height: 22px;
    background-color: var(--font-color--light);
    position: absolute;
    bottom: 12px;
    right: 12px;
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.input__file__close-icon img {
    width: 12px;
    filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(72deg) brightness(99%) contrast(99%);
}

.required {
    background-color: var(--lucky-red);
    padding: 0 6px 0 6px;
    color: white;
    border-radius: 3px;
    margin-right: 4px;
}

.input__prepend__icon {
    padding-left: 30px;
}

.input__append__icon {
    padding-right: 30px;
}

/* radio */
.radio {
    margin: 0.5rem;
}
.radio input[type="radio"] {
    position: absolute;
    opacity: 0;
}
.radio input[type="radio"] + .radio-label:before {
    content: '';
    background: #fff;
    border-radius: 100%;
    border: 1px solid #b4b4b4;
    display: inline-block;
    width: 2em;
    height: 2em;
    position: relative;
    top: -0.4em;
    margin-right: 0.3em;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
    transition: all 250ms ease;
}
.radio input[type="radio"]:checked + .radio-label:before {
    background-color: #3197ee;
    box-shadow: inset 0 0 0 4px #f4f4f4;
}
.radio input[type="radio"]:focus + .radio-label:before {
    outline: none;
    border-color: #3197ee;
}
.radio input[type="radio"]:disabled + .radio-label:before {
    box-shadow: inset 0 0 0 4px #f4f4f4;
    border-color: #b4b4b4;
    background: #b4b4b4;
}
.radio input[type="radio"] + .radio-label:empty:before {
    margin-right: 0;
}
.radio label {
    color: var(--font-color--light);
}

/* checkbox */
/* 標準のチェックボックスを隠す */
input[type="checkbox"].checkbox {
    display: none;
}

/* カスタムチェックボックスのスタイル */
input[type="checkbox"].checkbox + label {
    position: relative;
    padding-left: 25px;
    cursor: pointer;
    user-select: none;
    /* color:var(--font-color--light); */
}

/* ラベルの前に疑似要素でカスタムチェックボックスを作成 */
input[type="checkbox"].checkbox + label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #b4b4b4;; /* ここで枠線を設定 */
    background-color: #fff;
    border-radius: 0.25rem;
}

/* チェック時のスタイル */
input[type="checkbox"].checkbox:checked + label::before {
    background-color: #3197ee; /* チェック時の背景色 */
    border-color:#3197ee;
}

/* チェックマークを追加 */
input[type="checkbox"].checkbox:checked + label::after {
    content: "";
    position: absolute;
    left: 5px;
    top: -0.5px;
    width: 10px;
    height: 16px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
}


/* button */
.button {
    width: 100%;
    height: 46px;
    border-radius: 4px;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    color: white;
    letter-spacing: 0.12em;
}
.button--normal {
    font-weight: normal;
}
.button img {
    height: 10px;
    margin-left: 6px;
}

.button img.btn-icon {
    height: initial;
    margin-left: 0;
}

.button--dense {
    height: 33px;
}
.button--outlined {
    border: 1px var(--basic-blue) solid;
    width: 100%;
    height: 46px;
    border-radius: 4px;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    color: var(--basic-blue);
}
.button--outlined__green {
    border: 1px var(--lucky-green) solid;
    color: var(--lucky-green);
}
.button--back {
    height: 22px;
    border: 1px var(--basic-blue) solid;
    color: var(--basic-blue);
    border-radius: 100px;
    padding: 0 8px;
    display: flex;
    align-items: center;
    letter-spacing: 0.06em;
    background-color: #fff;
}
.button--back img {
    height: 10px;
    margin-right: 6px;
}
.button--back span {
    font-size: 13px;
}
.button--back__semi {
    border: 1px var(--grey--semi) solid;
    color: var(--grey--semi);
}

.button--andmore {
    border: 1px var(--font-color--light) solid;
    border-radius: 100px;
    text-decoration: none;
    color: var(--font-color--light);
    padding: 2px 8px;
}
.button--andmore img {
    width: 8px;
    margin-bottom: 3px;
    vertical-align: middle;
}

.button--inline {
    width: inherit;
    padding: 0 8px;
    display: inline;
}

/* divider */
.divider {
    border-bottom: 1px var(--grey) solid;
}
.divider-non {
    border-bottom: 1px rgb(64 64 64 / 0%) solid;
}

/* card */
.card {
    border-radius: 30px;
    padding: 24px 12px;
    background-color: #fff;
    height: 370px;
}

.card.andmore {
    position: relative;
    overflow: hidden;
    max-height: 50px;
    border-bottom: none !important;
}
.card.andmore::after {
    background: linear-gradient(rgba(255,255,255,0.3), #fff 70%);
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    content: '';
    height: 25px;
}

.card-sp {
    border-radius: 30px;
    padding: 24px 12px;
    background-color: #fff;
    height: 350px;
}

.card-sp.andmore {
    position: relative;
    overflow: hidden;
    max-height: 50px;
    border-bottom: none !important;
}
.card-sp.andmore::after {
    background: linear-gradient(rgba(255,255,255,0.3), #fff 70%);
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    content: '';
    height: 25px;
}


.card--dashboard {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: rgb(242 247 250);
    flex-direction: column;
}
.card--dashboard div {
    width:100%;
}
.card--dashboard p {
    width: 100%;
    padding: 5px 5%;
    font-size: 16px;
    line-height: 1.8em;
    height: 10rem;
    font-weight: 400;
}
.card--dashboard object {
    padding-bottom:5px;
    width:50px;
    /* margin: auto; */
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: auto;
    margin-right: auto;
}
.card--dashboard svg {
    fill: #FF4500;
}


.card--mypage {
    min-width: 310px;
    width: 310px;
}

.card--error {
    border: 1px var(--lucky-red) solid;
}
.card--error textarea::placeholder {
    color: var(--lucky-red);
}

.card__img {
    width: 70%;
}

.hosipitalBookmark {
    border-radius: 1rem;
    padding: 1.2rem;
    background-color: #fff;
    height: auto;
}

.hosipitalBookmark.andmore {
    position: relative;
    overflow: hidden;
    max-height: 50px;
    border-bottom: none !important;
}
.hosipitalBookmark.andmore::after {
    background: linear-gradient(rgba(255,255,255,0.3), #fff 70%);
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    content: '';
    height: 25px;
}


.hosipitalBookmark--dashboard {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: rgb(242 247 250);
    flex-direction: column;
}
.hosipitalBookmark--dashboard div {
    width:100%;
}
.hosipitalBookmark--dashboard p {
    width: 100%;
    padding: 5px 5%;
    font-size: 16px;
    line-height: 1.2em;
    height: 10rem;
}
.hosipitalBookmark--dashboard object {
    padding-bottom:5px;
    width:50px;
    margin: auto;
}
.hosipitalBookmark--dashboard svg {
    fill: #FF4500;
}


.hosipitalBookmark--mypage {
    min-width: 310px;
    width: 310px;
}

.hosipitalBookmark--error {
    border: 1px var(--lucky-red) solid;
}
.hosipitalBookmark--error textarea::placeholder {
    color: var(--lucky-red);
}
.hosipitalBookmark__img {
    width: 70%;
}
.animalPoc {
    margin: auto;
    width: 100%;
    aspect-ratio: 4 /3;
}
.hospital_box1{
    width: 100%;
    padding-top: 10px;
    margin-top: 55px;
}
.hospital_box2{
    background-color: #fff;
    width: 100%;
    padding-top: 90px;
    margin-top: 55px;
}

/* consul */
.consul {
    border-radius: 4px;
    background-color: #fff;
}
.consul-container{
    display: flex;
    margin: 5px auto;
    width: 100%;
    background-color: var(--lucky-blue--light);
    height: 180px;
    box-sizing:border-box;
    border:1px solid;
    border-color: var(--lucky-blue--light);
}
.consul-container a{
    text-decoration: none;
    color: #cddc39;
}

.consul-text{
    width:100%;
    margin: 10px 20px;
}
.consul-text h2{
    padding-top: 10px;
    font-size: 1em;
}
.consul-text p{
    font-size: 18px;
    line-height: 1.6em;
    font-weight: 400;
}
.consul-img{
    width: 50%;
    position: relative;
    /* max-width: 223px; */
    aspect-ratio: 1 / 1;
}

.consul img{
    width: 100%;
    height:100%;
    border-radius: 4px 0px 0px 4px;
    vertical-align:bottom;
    position: absolute; /* 相対位置に指定 */
}

.consul .img_01 {
    /* 左上に固定 */
    top: 0;
    left: 0;
}
.consul .img_02 {
    /* 左上に固定 */
    top: 0;
    left: 0;
    height:50%;
}

.consul--arw {
    padding: 0;
    text-align: center;
    height: 50px;
    width: 30px;
    line-height: 40px;
}
.consul--arw img{
    width:5%;
}
@media screen and (min-width:650px) {
    .consul-container{
        width: 100%;
    }
    .consul--arw img{
        width:15px;
    }
}

/* reserv */
.reserv {
    border-radius: 4px;
    background-color: #fff;
}
.reserv-container{
    display: flex;
    margin: 5px auto;
    width: 100%;
    background-color: #fff;
    height:180px;
    box-sizing:border-box;
    border:1px solid;
    border-color: #0081CC;
}
.reserv-container a{
    text-decoration: none;
    color: #cddc39;
}

.reserv-text{
    width:100%;
    margin: 10px 20px;
}
.reserv-text .blue02{
    color:#0081cc;
}
.reserv-text h2{
    padding-top: 10px;
    font-size: 1em;
}
.reserv-text p{
    font-size: 18px;
    line-height: 1.6em;
    font-weight: 400;
}
.reserv-img, .consul-img{
    width: 50%;
    position: relative;
    aspect-ratio: 1 / 1;

}

.reserv img, .consul img{
    width:100%;
    height:100%;
    border-radius: 3px 0px 0px 3px;
    vertical-align:bottom;
    position: absolute; /* 相対位置に指定 */
}

.reserv .img_01, .consul .img_01 {
    /* 左上に固定 */
    top: 0;
    left: 0;
}
.reserv .img_02, .consul .img_02 {
    /* 左上に固定 */
    top: 0;
    left: 0;
    width:50%;
    height:50%;
}

.reserv--arw {
    padding: 0;
    text-align: center;
    height: 50px;
    width: 30px;
    line-height: 40px;
}
.reserv--arw img{
    width:5%;
}
.container-qa {
    background-image: url(/assets/images/img_faq_background.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% auto;
    padding-left:5px;
    padding-right:5px;
}
.container-grown {
    background-color: #fcf9f4;
    padding-left:5px;
    padding-right:5px;
}
@media screen and (min-width:650px) {
    .reserv-container{
        width: 100%;
    }
    .reserv--arw img{
        width:15px;
    }
}

/* faq */
.faq {
    padding-bottom: 100px;
}
.faq-lavel {
    width: 80%;
    margin: auto;
    text-align: left;
    background-color: #ffffffab;
    padding: 1em;
    font-size: 20px;
    font-weight: 600;
    max-width: 720px;
    position: relative;
    padding-left: 50px;
    padding-right: 40px;
}
.faq-lavel:hover {
    cursor: pointer;
}
.faq-lavel:before,.faq-lavel:after  {
    content: "";
    position: absolute;
    right: 1.25em;
    top: 1.25em;
    width: 2px;
    height: 0.75em;
    background-color: #0082ce;
    transition: all 0.3s;
}
.faq-lavel::after {
    transform: rotate(90deg);
}
.faq-lavel.open::before {
    transform: rotate(90deg);
}

.faq-lavel img{
    width:10%;
    display:inline-block;
    vertical-align: middle;
}
.faq-lavel p{
    width:85%;
    display:inline-block;
}
.faq-lavel p span{
    border: 1px solid #434343;
    width: 30px;
    height: 30px;
    border-radius: 20px;
    font-size: 18px;
    padding-left: 5px;
    display: inline-block;
    padding-top: 5px;
    margin-left: -40px;
    margin-right: 10px;
}
.faq-box {
    border-radius: 4px;
    background-color: #eaf7ff;
}
.faq-container{
    display: flex;
    margin: 5px auto;
    width: 100%;
    max-width: 720px;
    background-color: #FFF;
    height:auto;
    box-sizing:border-box;
    background-color: #ffffffab;
}
.faq-container a{
    text-decoration: none;
    color: #cddc39;
}

.faq-text{
    width:100%;
    margin: 10px 25px;
}
.faq-text .blue02{
    color:#0081cc;
}
.faq-text h2{
    padding-top: 10px;
    font-size: 1em;
}
.faq-text p{
    padding-right: 8px;
    color: rgb(0 159 240);
    padding-left: 25px;
    font-weight: 400;
}
.faq-text p span{
    border: 1px solid rgb(0 159 240);
    color: rgb(0 159 240);
    width: 30px;
    height: 30px;
    border-radius: 20px;
    font-size: 18px;
    padding-left: 7px;
    display: inline-block;
    padding-top: 5px;
    margin-left: -40px;
    margin-right: 10px;
}

@media screen and (min-width:650px) {
    .faq-container{
        width: 80%;
    }
    .faq-lavel img{
        width:20px;
        display:inline-block;
        vertical-align: middle;
    }
    .faq-lavel p{
        width:auto;
        display:inline-block;
    }
    .faq-text {
        width: 100%;
        margin: 10px 35px;
    }
}
/* bookmark */
.bookmark {
    width: 18px;
    filter: invert(24%) sepia(19%) saturate(27%) hue-rotate(90deg) brightness(90%) contrast(90%);
    opacity: 0.3;
}
.bookmark--active {
    width: 18px;
    filter: invert(62%) sepia(46%) saturate(5042%) hue-rotate(2deg) brightness(100%) contrast(103%);
    opacity: 1;
}


/* navigation drawer */
.navigation-drawer {
    position: fixed;
    top: 48px;
    height: calc(100vh - 48px);
    min-width: 170px;
}
.navigation-drawer--space {
    margin-left: 170px;
}
.navigation-drawer__copyright {
    position: fixed;
    color: white;
    left: 8px;
    bottom: 24px;
}
.menu__list .menu__items {
    height: 40px;
    display: flex;
    align-items: center;
    vertical-align: middle;
    padding: 0 8px;
}
.menu__list a {
    display: block;
    text-decoration: none;
}
.menu__list .menu__items img{
    height: 18px;
    opacity: 0.6;
    margin-right: 8px;
}
.menu__list .menu__items.active img {
    opacity: 1;
}
.menu__list .menu__items.active {
    background-color: rgba(0, 86, 69, 0.3);
    position: relative;
}
.menu__list .menu__items.active::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -2px;
    margin-top: -8px;
    border: 8px solid transparent;
    border-right: 8px solid #fff;
}
.menu__list .menu__items--sub {
    padding-left: 38px;
}

/* pagtination */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagination .pagination__item {
    width: 40px;
    height: 40px;
    background-color: var(--grey);
    color: white;
    line-height: 40px;
    vertical-align: middle;
    text-align: center;
    font-size: 16px;
    margin: 0 2px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor:pointer;
}

.pagination__item.active {
    background-color: var(--basic-blue);
}
.pagination--green .pagination__item.active {
    background-color: var(--lucky-green);
}

.pagination__item img {
    height: 10px;
}


/* hamburger menu */
.hamburger-menu__space {
    width: 48px;
}
.menu-btn {
    position: fixed;
    top: 0;
    right: 16px;
    display: flex;
    height: 48px;
    width: 48px;
    justify-content: center;
    align-items: center;
    z-index: 90;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: var(--font-color);
    position: absolute;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
}
#menu-btn-check:checked ~ .menu-btn span::before {
    background-color: rgba(255, 255, 255);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    background-color: rgba(255, 255, 255);
}
#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}
#menu-btn-check {
    display: none;
}
#menu-btn-check:checked ~ .menu-content {
    left: 0;
    display:block;

}
.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 80;
    background-color: var(--basic-blue);
    transition: all 0.5s;
    display:none;
    transition-timing-function : ease-in-out;
}
.menu-content ul {
    padding: 70px 10px 0;
}
.menu-content ul li {
    border-bottom: solid 1px #ffffff;
    list-style: none;
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color:#ffffff;
    text-decoration: none;
    padding: 9px 15px 10px 0;
    position: relative;
}
.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 16px;
}


/* タブ */
.tabs {
    display: flex;
    justify-content: flex-end;
    padding: 0 36px;
}
.tab {
    display: inline-block;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    background-color: var(--lucky-green--light);
    color: var(--font-color--light);
    height: 36px;
    padding: 8px;
    margin: 0 2px;
}
.tab.active {
    background-color: var(--lucky-green);
    color: #fff;
}

/* admin table */
.table {
    min-width: 726px;
    width: 100%;
}
.table thead {
    border-top: 1px var(--font-color) solid;
    border-bottom: 1px var(--font-color) solid;
}
.table thead tr th {
    padding: 8px 0;
}
.table thead tr th {
    max-width: 70px;
}

.table tbody tr td {
    padding: 12px 0;
    max-width: 70px;
    border-bottom: 1px var(--gray-scale--light) solid;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: default;
    position: relative;
}

.table tbody tr td.wrapping {
    text-overflow: initial;
    white-space: initial;
}

.table tbody tr td.long {
    max-width: 150px;
}
.table .detail {
    width: 200px;
}
.table .detail a {
    position: absolute;
    top: calc(50% - 13px);
    right: 0;
    height: 26px;
}

.table__status {
    width: 18px;
    height: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}
.table__status img {
    width: 100%;
    filter: invert(58%) sepia(68%) saturate(387%) hue-rotate(47deg) brightness(99%) contrast(94%);
}

/* リクエスト詳細 お薬リスト */
.table.medical-list {
    min-width: initial;
}
.table.medical-list th {
    text-align: center;
}
.table.medical-list th.m-name {
    width: 60%;
}
.table.medical-list td.m-quantity,
.table.medical-list td.m-unit {
    text-align: center;
}


/* popup */
.hover__popup {
    padding: 4px;
    position: absolute;
    background-color: #fff;
    border: 1px var(--font-color) solid;
    opacity: 0;
    transition: .2s;
    z-index: 5;
}
.hover__popup.active {
    opacity: 1;
    transition: .2s;
}

.hover__popup:before {
    content: "";
    position: absolute;
    top: -11px;
    left: 14px;
    margin-left: -8px;
    border: 6px solid transparent;
    border-bottom: 6px solid #FFF;
    z-index: 2;
}

.hover__popup:after {
    content: "";
    position: absolute;
    top: -14px;
    left: 13px;
    margin-left: -8px;
    border: 7px solid transparent;
    border-bottom: 7px solid var(--font-color);
    z-index: 1;
}



/* ---------------------
    font & color
--------------------- */

/* headline */
.title {
    font-size: 18px;
    line-height: 28px;
    color: var(--basic-blue);
    font-weight: bold;
}
.title-sp {
    font-size: 16px;
    line-height: 28px;
    color: #fff;
    font-weight: bold;
}
.subtitle {
    font-size: 20px;
    line-height: 1.5em;
    color: var(--basic-blue);
    font-weight: 500;
    width: 80%;
    word-break: break-word;
}
.body-1 {
    font-size: 14px;
}
.body-2 {
    font-size: 12px;
}
.caption {
    font-size: 10px;
    line-height: 10px;
}

.fz-14 {
    font-size: 14px;
}
.fz-16  {
    font-size: 16px;
}
.fz-18 {
    font-size: 18px;
}
.fz-28 {
    font-size: 28px;
}

/* text color */
.grey--text{
    color: var(--grey);
}
.light--text{
    color: var(--font-color--light);
}
.basic-blue--text {
    color: var(--basic-blue);
}
.lucky-blue--text {
    color: var(--lucky-blue);
}
.lucky-green--text {
    color: var(--lucky-green);
}
.lucky-red--text {
    color: var(--lucky-red);
}
.indigo-blue--text {
    color: var(--indigo-blue);
}
.error--text {
    color: var(--lucky-red--light);
}
.white--text {
    color: white;
}

/* bg-color */
.white {
    background-color: #fff;
}

.font {
    background-color: var(--font-color);
}

.light {
    background-color: var(--grey--light) !important;
}
.semi {
    background-color: var(--grey--semi) !important;
}

.grey {
    background-color: var(--gray-scale);
}

.gray-scale {
    background-color: var(--gray-scale);
}
.gray-scale--light {
    background-color: var(--gray-scale--light) !important;
}

.basic-blue {
    background-color: var(--basic-blue) !important;
}
.lucky-blue {
    background-color: var(--lucky-blue);
}
.lucky-blue--light {
    background-color: var(--lucky-blue--light);
}

.lucky-green {
    background-color: var(--lucky-green) !important;
}

.lucky-green--light {
    background-color: var(--lucky-green--light);
}

/* border-color */
.grey--border {
    border: 1px var(--grey) solid !important;
}

.no--border {
    border: none;
}

.border-right {
    border-right: 2px var(--grey) solid;
}

.overflow-hidden {
    overflow: hidden;
}


/* border-radius */
.brr-0 {
    border-top-right-radius: 0;
    -webkit-border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
}

.brl-0 {
    border-top-left-radius: 0;
    -webkit-border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    -webkit-border-bottom-left-radius: 0;
}

.decoration-none {
    text-decoration: none;
}


@media (min-width: 768px) {
    .h-70 {
        height: 210px;
    }
}
@media (max-width: 767px) {
    .h-70 {
        height: 210px;
    }
}

/* ---------------------
    Page Specific Selector
--------------------- */
.dashboard-pc__hero {
    height: 600px;
    position: relative;
}

.dashboard-pc__hero__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dashboard-pc__hero__inner {
    position: absolute;
    top: 12%;
    right: 5%;
    padding: 17px;
}

.dashboard-pc__hero__inner h1 {
    font-size: 28px;
    line-height: 55px;
    letter-spacing: .25em;
}

.dashboard-pc__hero__inner button {
    width: 250px;
    border-radius: 32px;
    height: 64px;
    margin-top: 10px;
    font-size: 20px;
    letter-spacing: .3em;
}
.dashboard-sp__hero__inner h1  {
    font-size: 26px;
    padding-top: 20px;
    letter-spacing: .1em;
    line-height: 1.7em;
}
.title2 {
    color: var(--basic-blue);
    font-size:20px;
    font-weight:500;
}
.title2-sub{
    font-size: 16px;
    font-weight: 500;
    line-height: 2em;
}
@media (min-width: 768px) {
    .title2 {
        color: var(--basic-blue);
        font-size:35px;
        font-weight:500;
    }
    .title2-sub{
        font-size: 20px;
        font-weight: 500;
        line-height: 2em;
    }
}
.title3 {
    font-size:30px;
    font-weight:500;
}
.title4 {
    color: var(--basic-blue);
    font-size: 33px;
    font-weight: 600;
    letter-spacing: .25em;
}
.title5 {
    color: #FFF;
    font-size: 24px;
    font-weight: 400;
    letter-spacing: .25em;
    height: 2.5em;
    line-height: 2.5em;
    text-align: center;
    letter-spacing: .4em;
    border-radius: 5px;
    margin: 0 auto 30px;
}
.title5-cons{
    background-color: var(--basic-blue);

}
.title5-drag{
    background-color: rgb(0 159 240);
}
.title5-cons:before {
    content: "";
    background-color: #FFF;
    display: inline-flex;
    height: 1.7rem;
    width: 1.8rem;
    -webkit-mask: url("/assets/icons/menu_reserve.svg");
    mask: url("/assets/icons/menu_reserve.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    vertical-align: middle;
    align-items: flex-end;
}
.title5-drag:before {
    content: "";
    background-color: #FFF;
    display: inline-block;
    height: 1.7rem;
    width: 1.7rem;
    -webkit-mask: url("/assets/icons/menu_phamacy.svg");
    mask: url("/assets/icons/menu_phamacy.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    vertical-align: middle;
    align-items: flex-end;
}

.hospital-list-name-parent {
    overflow: hidden;
    width: 100%;
    height: 4rem;
    display: flex;
    align-items: center;
}

.hospital-list-name {
    padding: 0 5px;
    color: var(--basic-blue);
    box-sizing: border-box;
    flex: 1;
    font-size: 20px;
    font-weight: 400;
}
.hospital-caption{
    width: 100%;
    height: 5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 15px;
    font-weight: 400;
}
button:hover {
    opacity: 0.6;
    transition: all .2s;
}
.btn-circle, .btn-circle--outlined{
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: bottom;
    text-decoration: none;
    letter-spacing: 0.1em;
    border-radius: 0.5rem;
    width: 105px;
    height: 105px;
    padding: 50px 5px 0;
    border-radius: 50%;
    margin:0 20px;
    transition: all .2s;
}
.btn-login {
    background-color: rgb(0 159 240);
    color: #FFF;
    transition: all .2s;
}
.btn-login:before {
    content: "";
    background-color: #FFF;
    display: inline-block;
    height: 1.7rem;
    width: 1.7rem;
    -webkit-mask: url("/assets/icons/pct_login.svg");
    mask: url("/assets/icons/pct_login.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    vertical-align: middle;
    position: absolute;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);

}
.btn-login:hover {
    opacity: 0.6;
}

.btn-regist {
    background-color: #FFF;
    color: var(--basic-blue);
    border:1px solid var(--basic-blue);
    transition: all .2s;
}
.btn-regist:before {
    content: "";
    background-color: var(--basic-blue);
    display: inline-block;
    height: 1.7rem;
    width: 1.7rem;
    -webkit-mask: url("/assets/icons/menu_my.svg");
    mask: url("/assets/icons/menu_my.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    vertical-align: middle;
    position: absolute;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);

}
.btn-regist:hover {
    background-color: var(--basic-blue);
    color: #FFF;
}
.btn-regist:hover:before {
    background-color: #FFF;
}
.btn-drag {
    background-color: rgb(0 159 240);
    color: #FFF;
    transition: all .2s;
}
.btn-drag:before {
    content: "";
    background-color: #FFF;
    display: inline-block;
    height: 32px;
    width: 25px;
    -webkit-mask: url("/assets/icons/pct_calte.svg");
    mask: url("/assets/icons/pct_calte.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    vertical-align: middle;
    position: absolute;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);

}
.btn-drag:hover {
    opacity: 0.6;
}
.btn-more {
    width: 300px;
    margin: auto;
    text-align: center;
    height: 70px;
    border: 1px solid;
    border-radius: 35px;
    font-size: 20px;
    letter-spacing: .1em;
    font-weight: 600;
    color: var(--basic-blue);
    transition: all .2s;
}
.btn-more:hover {
    background-color: var(--basic-blue);
    color: #FFF;
}
.btn-more02 {
    width: 220px;
    margin: auto;
    text-align: center;
    height: 50px;
    border: 1px solid;
    border-radius: 35px;
    font-size: 18px;
    letter-spacing: .1em;
    font-weight: 500;
    color: var(--basic-blue);
    transition: all .2s;
    display: block;
    line-height: 50px;
}
.btn-more02:hover {
    background-color: var(--basic-blue);
    color: #FFF;
}
.btn-faq {
    width: 300px;
    margin: auto;
    text-align: center;
    height: 70px;
    border-radius: 35px;
    font-size: 20px;
    letter-spacing: .3em;
    font-weight: 600;
    background-color: var(--basic-blue);
    color: #FFF;
    transition: all .2s;
}
.btn-faq:hover {
    opacity: 0.6;
}
.btn-mini {
    font-size: 14px;
    line-height: 1.2em;
    letter-spacing: unset;
}
.dashboard-sp__hero {
    height: 65vh;
    position: relative;
    margin-bottom: 70px;
}

.dashboard-sp__hero__img {
    position: absolute;
    top: 0;
    left: 0;
    height: 75vh;
    width: 100%;
    object-fit: cover;
}

.dashboard-sp__hero__inner {
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    padding: 16px;
}

.dashboard-sp__hero__inner button {
    width: 245px;
    border-radius: 32px;
    height: 58px;
    font-size: 20px;
    letter-spacing: .5em;
}
.dashboard-sp__hero__inner02 {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
    padding: 16px;
}

.dashboard-sp__hero__inner02 button {
    width: 180px;
}

.hosipitalBookmark {
    position:relative;
}

.hosipitalBookmark .custom-border {
    border: 1px solid lightgrey;
    padding: 2.5px 5px;
    color: #212529;
    background-color: #fff;
    border-radius: 5px;
    /*margin-left: 10px;*/
    font-weight: 500;
    line-height: 1.2rem;
    position:absolute;
    top: -6px;
    left:-7px;
    max-width: 90%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hosipitalBookmark .pet-name-div{
    display: flex;
    align-items: center; /* 中央揃え */
}

.hosipitalBookmark .pet-name-div p {
    line-height: 2.2rem;
    word-break: break-word;
}
.hosipitalBookmark .pet-name-div p.basic-blue--text{
    line-height: 30px;
}

.hosipitalBookmark .pet-name-div p.subtitle{
    line-height: 1.6rem;
}




.hosipitalBookmark dl {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0.1rem;
    border-bottom: 1px solid var(--bs-gray-200)
}

.hosipitalBookmark dl dt {
    width: 35%;
    background-color: var(--bs-gray-200);
    padding: 0.25rem;
    text-align: center;

}

.hosipitalBookmark dl dd {
    width: 65%;
    padding: 0.25rem;
}

.hosipitalBookmark .price-list dl dt {
    width: 70%;
}
.hosipitalBookmark .price-list dl dd {
    width: 30%;
    text-align: end;
}

.hosipitalBookmark dl .blank {
    color: var(--bs-danger);
    font-weight: 500;
}

.hosipitalBookmark .pet-name-div p {
    line-height: 1.2rem;
    flex:1;
}

.hosipitalBookmark .pet-name-div button {
    width:20%;
    height:2rem;
    margin-left:auto;
    font-size:0.9rem;
}

.hosipitalBookmark dl dd .button.inline-button {
    width:inherit;
    display: inline-block;
    padding: 0.25rem 0.4rem;
    height: inherit;
}

.button-mini-back {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: 1em 2em;
    width: 100px;
    color: var(--basic-blue);
    font-size: 14px;
    font-weight: 500;
    border: 1px solid var(--basic-blue);
    border-radius: 50vh;
    background-color: #FFF;
}

.button-mini-back::before {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 3px solid var(--basic-blue);
    border-right: 3px solid var(--basic-blue);
    transform: rotate(225deg);
}

.button-mini-back:hover {
    text-decoration: none;
    background-color: #daf1fc;
}
.main-top__item {
    width: 20%;
    padding-top: 20px;
}
@media screen and (max-width:649px) {
    .main-top__item {
        padding-bottom: 0.5rem;
    }
}

.news-title {
    text-align: left;
    color: #004098;
    font-weight: bold;
    font-size: 20px;
    margin: 10px 15px;
}
.new-member-body {
    margin: 10px 15px;
}
.news-date {
    text-align: right;
    margin-right: 15px;
}

@media screen and (max-width:649px) {
    .faq-lavel {
        width: 100%;
        margin: auto;
        text-align: left;
        background-color: #ffffffab;
        padding: 1em;
        font-size: 20px;
        font-weight: 600;
        max-width: 720px;
        position: relative;
        padding-left: 50px;
        padding-right: 40px;
        border-bottom: 1px solid #eee;
    }
    .faq-lavel p span {
        border: 1px solid #434343;
        width: 26px;
        height: 26px;
        border-radius: 20px;
        font-size: 18px;
        padding-left: 5px;
        display: inline-block;
        padding-top: 0px;
        margin-left: -40px;
        margin-right: 10px;
        padding-bottom: 0px;
    }
    .faq-lavel p {
        width: 100%;
        display: inline-block;
        line-height: 1.4em;
        font-size: 16px;
    }
    .faq-text {
        margin: 10px 21px;
    }
    .faq-text p span {
        width: 26px;
        height: 26px;
        border-radius: 20px;
        font-size: 18px;
        padding-left: 5px;
        display: inline-block;
        padding-top: 3px;
        margin-left: -36px;
        margin-right: 10px;
        padding-bottom: 0px;
    }
    .title3 {
        font-size:24px;
        font-weight:500;
    }
    .title4 {
        color: var(--basic-blue);
        font-size: 26px;
        font-weight: 600;
        letter-spacing: .25em;
    }
    .title5 {
        color: #FFF;
        font-size: 20px;
        font-weight: 400;
        letter-spacing: .25em;
        height: 2.5em;
        line-height: 2.5em;
        text-align: center;
        letter-spacing: .1em;
        border-radius: 5px;
        margin: 0 auto 30px;
    }
    .subtitle {
        font-size: 18px;
        line-height: 1.5em;
        color: var(--basic-blue);
        font-weight: 500;
        width: 65%;
    }
    .btn-circle, .btn-circle--outlined {
        font-size: 1.0em;
    }
    .consul-container, .reserv-container {
        height: 125px;
    }
    .consul-text p, .reserv-text p{
        font-size: 14px;
        line-height: 1.4em;
    }
    .consul-text, .reserv-text {
        width: 100%;
        margin: 10px 10px;
    }
    .dashboard-sp__hero__inner h1 {
        font-size: 24px;
        padding-top: 20px;
        letter-spacing: .1em;
        line-height: 1.7em;
    }
    .card {
        border-radius: 30px;
        padding: 24px 12px;
        height: auto;
        width: 100%;
    }
    .card--dashboard p {
        width: 100%;
        padding: 5px 5%;
        font-size: 16px;
        line-height: 1.8em;
        height: 15rem;
        font-weight: 400;
    }
    .btn-more {
        width: 250px;
        height: 55px;
    }
    .hosipitalBookmark p {
        line-height: 1.4rem;
    }

}
@media (min-width: 768px){
    .card--dashboard p {
        width: 100%;
        padding: 5px 5%;
        font-size: 16px;
        line-height: 1.4em;
        height: 10rem;
        font-weight: 400;
    }

}
@media (min-width: 992px){
    .card--dashboard p {
        width: 100%;
        padding: 5px 5px;
        font-size: 16px;
        line-height: 1.6em;
        height: 10rem;
        font-weight: 400;
    }

}
@media (min-width: 1200px){
    .card--dashboard p {
        width: 100%;
        padding: 5px 5%;
        font-size: 16px;
        line-height: 1.8em;
        height: 10rem;
        font-weight: 400;
    }
}
